<?php
session_start();
require_once '../config/database.php';

if (!isset($_SESSION['admin_id'])) {
    header('Location: login.php');
    exit;
}

$webhookStatus = null;
$webhookError = null;

if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    $action = $_POST['action'] ?? '';
    
    if ($action === 'update_bot_settings') {
        $botToken = trim($_POST['bot_token'] ?? '');
        $adminTelegramId = trim($_POST['admin_telegram_id'] ?? '');
        
        if (!empty($botToken)) {
            $stmt = $pdo->prepare("INSERT INTO app_settings (setting_key, setting_value) VALUES (?, ?) ON DUPLICATE KEY UPDATE setting_value = ?");
            $stmt->execute(['telegram_bot_token', $botToken, $botToken]);
        }
        
        if (!empty($adminTelegramId)) {
            $stmt = $pdo->prepare("INSERT INTO app_settings (setting_key, setting_value) VALUES (?, ?) ON DUPLICATE KEY UPDATE setting_value = ?");
            $stmt->execute(['telegram_admin_id', $adminTelegramId, $adminTelegramId]);
        }
        
        $success = "تنظیمات ربات با موفقیت ذخیره شد";
    } elseif ($action === 'set_webhook') {
        $botToken = trim($_POST['bot_token'] ?? '');
        
        if (empty($botToken)) {
            $webhookError = "لطفا ابتدا توکن ربات را وارد کنید";
        } else {
            $protocol = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on') ? 'https' : 'http';
            $scriptPath = dirname($_SERVER['PHP_SELF']);
            $basePath = str_replace('/admin', '', $scriptPath);
            if ($basePath === $scriptPath) {
                $basePath = dirname($scriptPath);
            }
            $webhookUrl = $protocol . '://' . $_SERVER['HTTP_HOST'] . $basePath . '/api/telegram/webhook.php';
            
            $url = "https://api.telegram.org/bot{$botToken}/setWebhook";
            $data = ['url' => $webhookUrl];
            
            $ch = curl_init($url);
            curl_setopt($ch, CURLOPT_POST, 1);
            curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));
            curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
            curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
            curl_setopt($ch, CURLOPT_TIMEOUT, 10);
            $response = curl_exec($ch);
            $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
            curl_close($ch);
            
            $result = json_decode($response, true);
            
            if ($httpCode === 200 && isset($result['ok']) && $result['ok']) {
                $webhookStatus = "Webhook با موفقیت تنظیم شد";
                $success = "Webhook با موفقیت تنظیم شد";
            } else {
                $errorMsg = $result['description'] ?? 'خطای نامشخص';
                $webhookError = "خطا در تنظیم webhook: " . $errorMsg;
                $error = $webhookError;
            }
        }
    }
}

$stmt = $pdo->query("SELECT setting_key, setting_value FROM app_settings WHERE setting_key IN ('telegram_bot_token', 'telegram_admin_id')");
$currentSettings = [];
while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
    $currentSettings[$row['setting_key']] = $row['setting_value'];
}

$botToken = $currentSettings['telegram_bot_token'] ?? '';
$adminId = $currentSettings['telegram_admin_id'] ?? '';
?>
<!DOCTYPE html>
<html lang="fa" dir="rtl">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>مدیریت ربات تلگرام - پنل مدیریت</title>
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.rtl.min.css" rel="stylesheet">
    <link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css" rel="stylesheet">
    <link rel="preconnect" href="https://fonts.googleapis.com">
    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
    <link href="https://fonts.googleapis.com/css2?family=Vazirmatn:wght@400;600;700&display=swap" rel="stylesheet">
    <link href="assets/css/admin.css" rel="stylesheet">
</head>
<body class="admin-app">
    <?php include 'includes/menu.php'; ?>
    <?php include 'includes/header_bar.php'; ?>

    <main class="main">
        <div class="main-content">
                <?php
                $admin_page_title = 'مدیریت ربات تلگرام';
                $admin_page_icon = 'fab fa-telegram-plane';
                include 'includes/topbar.php';
                ?>

                    <?php if (isset($success)): ?>
                        <div class="alert alert-success alert-dismissible fade show" role="alert">
                            <i class="fas fa-check-circle me-2"></i>
                            <?= htmlspecialchars($success) ?>
                            <button type="button" class="btn-close" data-bs-dismiss="alert"></button>
                        </div>
                    <?php endif; ?>

                    <?php if (isset($error)): ?>
                        <div class="alert alert-danger alert-dismissible fade show" role="alert">
                            <i class="fas fa-exclamation-triangle me-2"></i>
                            <?= htmlspecialchars($error) ?>
                            <button type="button" class="btn-close" data-bs-dismiss="alert"></button>
                        </div>
                    <?php endif; ?>

                    <div class="card fade-in-up">
                        <div class="card-header">
                            <h6><i class="fab fa-telegram-plane me-2"></i>تنظیمات ربات</h6>
                        </div>
                        <div class="card-body">
                            <form method="POST">
                                <input type="hidden" name="action" value="update_bot_settings">
                                
                                <div class="mb-3">
                                    <label for="bot_token" class="form-label">توکن ربات تلگرام</label>
                                    <input type="text" class="form-control" id="bot_token" name="bot_token" 
                                           value="<?= htmlspecialchars($botToken) ?>" 
                                           placeholder="مثال: 123456789:ABCdefGHIjklMNOpqrsTUVwxyz">
                                    <div class="form-text">توکن ربات را از @BotFather دریافت کنید</div>
                                </div>

                                <div class="mb-3">
                                    <label for="admin_telegram_id" class="form-label">آیدی عددی ادمین تلگرام</label>
                                    <input type="text" class="form-control" id="admin_telegram_id" name="admin_telegram_id" 
                                           value="<?= htmlspecialchars($adminId) ?>" 
                                           placeholder="مثال: 123456789">
                                    <div class="form-text">آیدی عددی خود را از @userinfobot دریافت کنید</div>
                                </div>

                                <div class="alert alert-info">
                                    <i class="fas fa-info-circle me-2"></i>
                                    <strong>راهنمای تنظیم:</strong>
                                    <ul class="mb-0 mt-2">
                                        <li>برای دریافت توکن ربات، به @BotFather در تلگرام پیام دهید و دستور /newbot را ارسال کنید</li>
                                        <li>برای دریافت آیدی عددی، به @userinfobot در تلگرام پیام دهید</li>
                                        <li>پس از ذخیره تنظیمات، می‌توانید با دکمه "تنظیم Webhook" به صورت خودکار webhook را تنظیم کنید</li>
                                    </ul>
                                </div>

                                <div class="text-end">
                                    <button type="submit" class="btn btn-primary">
                                        <i class="fas fa-save me-2"></i>ذخیره تنظیمات
                                    </button>
                                </div>
                            </form>
                        </div>
                    </div>

                    <?php if (!empty($botToken)): ?>
                    <div class="card fade-in-up mt-4">
                        <div class="card-header">
                            <h6><i class="fas fa-link me-2"></i>تنظیم Webhook</h6>
                        </div>
                        <div class="card-body">
                            <p class="mb-3">
                                <strong>آدرس Webhook:</strong><br>
                                <code class="d-inline-block mt-2 p-2 bg-light rounded"><?php 
                                    $protocol = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on') ? 'https' : 'http';
                                    $scriptPath = dirname($_SERVER['PHP_SELF']);
                                    $basePath = str_replace('/admin', '', $scriptPath);
                                    if ($basePath === $scriptPath) {
                                        $basePath = dirname($scriptPath);
                                    }
                                    echo $protocol . '://' . $_SERVER['HTTP_HOST'] . $basePath . '/api/telegram/webhook.php';
                                ?></code>
                            </p>
                            
                            <?php if ($webhookStatus): ?>
                                <div class="alert alert-success">
                                    <i class="fas fa-check-circle me-2"></i>
                                    <?= htmlspecialchars($webhookStatus) ?>
                                </div>
                            <?php endif; ?>
                            
                            <?php if ($webhookError): ?>
                                <div class="alert alert-danger">
                                    <i class="fas fa-exclamation-triangle me-2"></i>
                                    <?= htmlspecialchars($webhookError) ?>
                                </div>
                            <?php endif; ?>
                            
                            <form method="POST" class="mt-3">
                                <input type="hidden" name="action" value="set_webhook">
                                <input type="hidden" name="bot_token" value="<?= htmlspecialchars($botToken) ?>">
                                <div class="text-end">
                                    <button type="submit" class="btn btn-success">
                                        <i class="fas fa-link me-2"></i>تنظیم Webhook
                                    </button>
                                </div>
                            </form>
                        </div>
                    </div>
                    <?php endif; ?>

                    <div class="card fade-in-up mt-4">
                        <div class="card-header">
                            <h6><i class="fas fa-info-circle me-2"></i>اطلاعات ربات</h6>
                        </div>
                        <div class="card-body">
                            <p><strong>وظایف ربات:</strong></p>
                            <ul>
                                <li>ارسال اعلان برای سفارشات جدید به ادمین</li>
                                <li>نمایش لیست سفارشات (به جز تکمیل شده‌ها) در منوی ربات</li>
                                <li>امکان کنسل کردن سفارش و ریفاند سکه به کاربر</li>
                                <li>ارسال سفارش به SMM</li>
                                <li>پاسخ به کاربران غیرمجاز: "شما دسترسی لازم را ندارید"</li>
                            </ul>
                        </div>
                    </div>
        </div>
    </main>

    <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.bundle.min.js"></script>
    <?php include 'includes/admin_shell_scripts.php'; ?>
</body>
</html>

