<?php
$token = "7903052086:AAFJXB-Npn-VrpZxUj_BzBgPjWraYjfcIBI";
$api = "https://api.telegram.org/bot$token/";

$update = json_decode(file_get_contents("php://input"), true);
$chat_id = $update['message']['chat']['id'];
$text = $update['message']['text'];

session_start();

if (!isset($_SESSION['replacements'])) {
    $_SESSION['replacements'] = [];
}

if ($text == "/start") {
    file_put_contents("jagozin.txt", "");
    $_SESSION['replacements'] = [];
    sendMessage($chat_id, "لطفا متن اصلی را ارسال کنید", true, false);
} elseif (empty(trim(file_get_contents("jagozin.txt")))) {
    file_put_contents("jagozin.txt", $text);
    sendMessage($chat_id, "لطفا متن های جایگزین را ارسال کنید", false, false);
} else {
    $lines = explode("\n", $text);
    foreach ($lines as $line) {
        $parts = explode(" ", $line, 2);
        if (count($parts) == 2) {
            $_SESSION['replacements'][$parts[0]] = $parts[1];
        }
    }
    
    $original_text = file_get_contents("jagozin.txt");
    $modified_text = $original_text;
    foreach ($_SESSION['replacements'] as $key => $value) {
        $modified_text = str_replace($key, $value, $modified_text);
    }

    // اینجا قالب‌بندی `mono space` را اعمال می‌کنیم
    sendMessage($chat_id, $modified_text, false, true);
}

function sendMessage($chat_id, $text, $add_button = false, $use_monospace = false) {
    global $api;
    $reply_markup = $add_button ? json_encode(["keyboard" => [["/start"]], "resize_keyboard" => true]) : "";

    if ($use_monospace) {
        // تقسیم متن بر اساس دو یا چند خط خالی
        $sections = preg_split("/(\n\s*\n\s*\n+)/", $text);

        foreach ($sections as $section) {
            $trimmed_section = trim($section);
            if (!empty($trimmed_section)) {
                // Escape کردن کاراکترهای خاص برای MarkdownV2
                $escaped_text = str_replace(['\\', '`'], ['\\\\', '\`'], $trimmed_section);
                $formatted_text = "```\n" . $escaped_text . "\n```";

                $data = [
                    'chat_id' => $chat_id,
                    'text' => $formatted_text,
                    'parse_mode' => 'MarkdownV2',
                    'reply_markup' => $reply_markup
                ];
                
                file_get_contents($api . "sendMessage?" . http_build_query($data));
            }
        }
    } else {
        // پیام عادی بدون قالب‌بندی `mono space`
        $data = [
            'chat_id' => $chat_id,
            'text' => $text,
            'reply_markup' => $reply_markup
        ];

        file_get_contents($api . "sendMessage?" . http_build_query($data));
    }
}
