<?php
/**
 * System Test - Run this to verify everything works
 */

echo "<h2>🤖 MFA Hydra Bot - System Test</h2>";

// Test 1: Config loading
echo "<h3>1. Config File</h3>";
if (file_exists('config.php')) {
    require_once 'config.php';
    echo "✅ config.php loaded<br>";
    echo "BASE_PATH: " . BASE_PATH . "<br>";
    echo "INCLUDES_PATH: " . INCLUDES_PATH . "<br>";
} else {
    echo "❌ config.php not found<br>";
    exit;
}

// Test 2: Includes exist
echo "<h3>2. Include Files</h3>";
$files = ['Database.php', 'Telegram.php', 'Helpers.php', 'GeminiAI.php'];
foreach ($files as $file) {
    $path = INCLUDES_PATH . $file;
    echo file_exists($path) ? "✅ {$file}<br>" : "❌ {$file} missing at {$path}<br>";
}

// Test 3: Classes loaded
echo "<h3>3. Classes</h3>";
echo class_exists('Database') ? "✅ Database class<br>" : "❌ Database class not found<br>";
echo class_exists('Telegram') ? "✅ Telegram class<br>" : "❌ Telegram class not found<br>";
echo class_exists('Helpers') ? "✅ Helpers class<br>" : "❌ Helpers class not found<br>";
echo class_exists('GeminiAI') ? "✅ GeminiAI class<br>" : "❌ GeminiAI class not found<br>";

// Test 4: Database connection
echo "<h3>4. Database Connection</h3>";
try {
    $db = Database::getInstance();
    echo "✅ Database connected<br>";

    // Test query
    $result = $db->fetch("SELECT COUNT(*) as total FROM users");
    echo "✅ Users in database: " . ($result['total'] ?? 0) . "<br>";
} catch (Exception $e) {
    echo "❌ Database error: " . $e->getMessage() . "<br>";
}

// Test 5: Telegram API
echo "<h3>5. Telegram API</h3>";
try {
    $telegram = new Telegram();
    $me = $telegram->getMe();
    if ($me) {
        echo "✅ Bot connected: @" . $me['username'] . "<br>";
        echo "🤖 Bot Name: " . $me['first_name'] . "<br>";
    } else {
        echo "⚠️ Bot token may be invalid<br>";
    }
} catch (Exception $e) {
    echo "❌ Telegram error: " . $e->getMessage() . "<br>";
}

// Test 6: Write permissions
echo "<h3>6. File Permissions</h3>";
echo is_writable(LOGS_PATH) ? "✅ Logs directory writable<br>" : "❌ Logs directory not writable<br>";

// Test 7: PHP Version
echo "<h3>7. PHP Version</h3>";
echo "PHP: " . phpversion() . "<br>";
echo "cURL: " . (function_exists('curl_init') ? "✅ Enabled" : "❌ Disabled") . "<br>";
echo "MySQLi: " . (class_exists('mysqli') ? "✅ Enabled" : "❌ Disabled") . "<br>";
echo "JSON: " . (function_exists('json_decode') ? "✅ Enabled" : "❌ Disabled") . "<br>";

echo "<hr><p><a href='admin/login.php' class='btn btn-primary'>Go to Admin Panel</a></p>";
