<?php
// test_tg.php (decode-safe test)

require __DIR__ . '/panel/classes/admin.class.php';

$admin = new Admin;
$admin->setDataFile(__DIR__ . '/panel/data/admin.json');

$raw_bot = $admin->getData()["settings"]["telegram_bot"] ?? '';
$ids = explode(',', $admin->getData()["settings"]["telegram_id"] ?? '');

if (!$raw_bot) {
    echo "No bot token found\n"; exit;
}

// إذا كانت القيمة base64 مش بالضرورة تبين، نجرب نفكها
$bot = $raw_bot;
$decoded = base64_decode($raw_bot, true);
if ($decoded !== false && strlen($decoded) > 10 && strpos($decoded, ':') !== false) {
    // نفّذ decode لو الشكل مناسب (يحتوي على ':')
    $bot = $decoded;
}

// لا نطبع التوكن. نستخدمه فوراً للاختبار.
foreach ($ids as $id) {
    $id = trim($id);
    if ($id === '') continue;
    $msg = "Test Telegram (safe) ".date('Y-m-d H:i:s');
    $url = "https://api.telegram.org/bot$bot/sendMessage";
    $data = ['chat_id' => $id, 'text' => $msg];

    $ch = curl_init();
    curl_setopt_array($ch, [
        CURLOPT_URL => $url,
        CURLOPT_POST => true,
        CURLOPT_POSTFIELDS => $data,
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_SSL_VERIFYPEER => false
    ]);
    $res = curl_exec($ch);
    $err = curl_error($ch);
    curl_close($ch);

    echo "ID: $id -> ";
    echo $res ? $res : ("CURL ERROR: ".$err);
    echo "\n\n";
}
