Line 11: Open to level 1 | 'function processTelegramUpdate($update) {' Line 15: Open to level 2 | "if (isset($update['message'])) {" Line 30: Open to level 3 | 'if (!$user) {' Line 35: Open to level 4 | "if (strpos($text, '/start ref_') === 0) {" Line 37: Open to level 5 | 'if (isset($ref_parts[1]) && is_numeric($ref_parts[1])) {' Line 40: Open to level 6 | 'if ($potential_referrer !== $chat_id) {' Line 44: Open to level 7 | 'if ($stmtCheckRef->fetchColumn() > 0) {' Line 46: Close to level 6 | '}' Line 47: Close to level 5 | '}' Line 48: Close to level 4 | '}' Line 49: Close to level 3 | '}' Line 61: Open to level 4 | 'if ($referrer_id) {' Line 62: Open to level 5 | 'sendTelegramMessage($referrer_id, "👥 *New Referral!*\\n\\n@{$u' Line 62: Close to level 4 | 'sendTelegramMessage($referrer_id, "👥 *New Referral!*\\n\\n@{$u' Line 63: Close to level 3 | '}' Line 64: Close to level 2 | '} else {' Line 64: Open to level 3 | '} else {' Line 66: Open to level 4 | "if ($user['username'] !== $username || $user['first_name'] !" Line 72: Close to level 3 | '}' Line 73: Close to level 2 | '}' Line 76: Open to level 3 | "if (strpos($text, '/start') === 0) {" Line 81: Open to level 4 | 'if ($is_new_user) {' Line 85: Open to level 5 | 'if ($welcome_img && file_exists($welcome_img)) {' Line 86: Open to level 6 | '$default_welcome = "👋 *Assalamu Alaikum, {name}! Welcome to ' Line 86: Close to level 5 | '$default_welcome = "👋 *Assalamu Alaikum, {name}! Welcome to ' Line 90: Open to level 6 | 'if (empty(trim($caption))) {' Line 92: Close to level 5 | '}' Line 97: Open to level 6 | "['{name}', '{username}', '{id}']," Line 97: Close to level 5 | "['{name}', '{username}', '{id}']," Line 97: Open to level 6 | "['{name}', '{username}', '{id}']," Line 97: Close to level 5 | "['{name}', '{username}', '{id}']," Line 97: Open to level 6 | "['{name}', '{username}', '{id}']," Line 97: Close to level 5 | "['{name}', '{username}', '{id}']," Line 106: Close to level 4 | '}' Line 107: Close to level 3 | '}' Line 111: Close to level 2 | '}' Line 113: Open to level 3 | "if (isset($message['reply_to_message']) && strpos($message['" Line 115: Open to level 4 | 'if ($amount <= 0) {' Line 118: Close to level 3 | '}' Line 120: Open to level 4 | 'if ($paymentUrl) {' Line 122: Close to level 3 | '} else {' Line 122: Open to level 4 | '} else {' Line 124: Close to level 3 | '}' Line 126: Close to level 2 | '}' Line 129: Open to level 3 | "if (strpos($text, '/deposit') === 0) {" Line 132: Open to level 4 | 'if (count($parts) < 4) {' Line 135: Close to level 3 | '}' Line 141: Open to level 4 | 'if ($amount <= 0) {' Line 144: Close to level 3 | '}' Line 146: Open to level 4 | 'if (empty($txn_id)) {' Line 149: Close to level 3 | '}' Line 154: Open to level 4 | 'if ($stmtTxCheck->fetchColumn() > 0) {' Line 157: Close to level 3 | '}' Line 161: Open to level 4 | "if ($stmtInsDep->execute([$user['id'], $amount, strtoupper($" Line 168: Close to level 3 | '} else {' Line 168: Open to level 4 | '} else {' Line 170: Close to level 3 | '}' Line 172: Close to level 2 | '}' Line 176: Close to level 1 | '}' Line 179: Open to level 2 | "if (isset($update['callback_query'])) {" Line 191: Open to level 3 | 'if (!$user) {' Line 194: Close to level 2 | '}' Line 199: Open to level 3 | "if ($data === 'main_menu') {" Line 236: Open to level 4 | "if (isset($callback['message']['photo'])) {" Line 241: Close to level 3 | '} else {' Line 241: Open to level 4 | '} else {' Line 244: Close to level 3 | '}' Line 248: Close to level 2 | '}' Line 251: Open to level 3 | "if ($data === 'main_reseller') {" Line 255: Open to level 4 | "if ($user['role'] === 'reseller') {" Line 257: Close to level 3 | '} else {' Line 257: Open to level 4 | '} else {' Line 264: Close to level 3 | '}' Line 272: Close to level 2 | '}' Line 275: Open to level 3 | "if ($data === 'main_orders') {" Line 285: Open to level 4 | 'if (count($orders) === 0) {' Line 287: Close to level 3 | '} else {' Line 287: Open to level 4 | '} else {' Line 289: Open to level 5 | 'foreach ($orders as $order) {' Line 291: Open to level 6 | '$text_msg .= "📦 *Order #{$order[\'id\']}* - {$order[\'product_n' Line 291: Close to level 5 | '$text_msg .= "📦 *Order #{$order[\'id\']}* - {$order[\'product_n' Line 291: Open to level 6 | '$text_msg .= "📦 *Order #{$order[\'id\']}* - {$order[\'product_n' Line 291: Close to level 5 | '$text_msg .= "📦 *Order #{$order[\'id\']}* - {$order[\'product_n' Line 292: Open to level 6 | '. "▫️ *Duration*: {$order[\'duration_name\']}\\n"' Line 292: Close to level 5 | '. "▫️ *Duration*: {$order[\'duration_name\']}\\n"' Line 294: Open to level 6 | '. "▫️ *Status*: {$status_emoji} " . strtoupper($order[\'statu' Line 294: Close to level 5 | '. "▫️ *Status*: {$status_emoji} " . strtoupper($order[\'statu' Line 296: Open to level 6 | "if ($order['status'] === 'completed') {" Line 297: Open to level 7 | '$text_msg .= "▫️ 🔑 *Key*: `{$order[\'license_key_text\']}`\\n";' Line 297: Close to level 6 | '$text_msg .= "▫️ 🔑 *Key*: `{$order[\'license_key_text\']}`\\n";' Line 298: Close to level 5 | "} elseif ($order['status'] === 'waiting') {" Line 298: Open to level 6 | "} elseif ($order['status'] === 'waiting') {" Line 300: Close to level 5 | '}' Line 302: Close to level 4 | '}' Line 303: Close to level 3 | '}' Line 314: Close to level 2 | '}' Line 317: Open to level 3 | "if ($data === 'main_profile') {" Line 338: Open to level 4 | '. "🪪 *Telegram ID:* `{$chat_id}`\\n\\n"' Line 338: Close to level 3 | '. "🪪 *Telegram ID:* `{$chat_id}`\\n\\n"' Line 340: Open to level 4 | '. "💳 *Wallet Balance:* *{$bal_text}*\\n"' Line 340: Close to level 3 | '. "💳 *Wallet Balance:* *{$bal_text}*\\n"' Line 341: Open to level 4 | '. "🎖 *Account Role:* {$role_text}\\n\\n"' Line 341: Close to level 3 | '. "🎖 *Account Role:* {$role_text}\\n\\n"' Line 343: Open to level 4 | '. "🛍 *Total Orders:* {$total_orders}\\n"' Line 343: Close to level 3 | '. "🛍 *Total Orders:* {$total_orders}\\n"' Line 344: Open to level 4 | '. "👥 *Total Referrals:* {$total_referrals}\\n"' Line 344: Close to level 3 | '. "👥 *Total Referrals:* {$total_referrals}\\n"' Line 355: Close to level 2 | '}' Line 358: Open to level 3 | "if ($data === 'main_add_balance') {" Line 368: Close to level 2 | '}' Line 369: Close to level 1 | '}' Line 372: Open to level 2 | "if ($data === 'main_referral') {" Line 380: Open to level 3 | '$ref_link = "https://t.me/{$bot_user}?start=ref_{$chat_id}";' Line 380: Close to level 2 | '$ref_link = "https://t.me/{$bot_user}?start=ref_{$chat_id}";' Line 380: Open to level 3 | '$ref_link = "https://t.me/{$bot_user}?start=ref_{$chat_id}";' Line 380: Close to level 2 | '$ref_link = "https://t.me/{$bot_user}?start=ref_{$chat_id}";' Line 383: Open to level 3 | '. "Invite users to our bot and earn **{$ref_percent}%** comm' Line 383: Close to level 2 | '. "Invite users to our bot and earn **{$ref_percent}%** comm' Line 384: Open to level 3 | '. "🔗 *Your Invitation Link*:\\n`{$ref_link}`\\n\\n"' Line 384: Close to level 2 | '. "🔗 *Your Invitation Link*:\\n`{$ref_link}`\\n\\n"' Line 385: Open to level 3 | '. "👥 *Total Referrals*: {$total_referrals} Users";' Line 385: Close to level 2 | '. "👥 *Total Referrals*: {$total_referrals} Users";' Line 396: Close to level 1 | '}' Line 399: Open to level 2 | "if ($data === 'main_how_to_use') {" Line 411: Close to level 1 | '}' Line 414: Open to level 2 | "if ($data === 'main_lucky_spin') {" Line 416: Open to level 3 | "if ($user['last_spin']) {" Line 419: Open to level 4 | 'if ($time_diff < 86400) {' Line 425: Close to level 3 | '}' Line 426: Close to level 2 | '}' Line 428: Open to level 3 | 'if ($cooldown) {' Line 429: Open to level 4 | '$text_msg = "🎡 *Lucky Spin Cooldown*\\n\\nYou have already spu' Line 429: Close to level 3 | '$text_msg = "🎡 *Lucky Spin Cooldown*\\n\\nYou have already spu' Line 429: Open to level 4 | '$text_msg = "🎡 *Lucky Spin Cooldown*\\n\\nYou have already spu' Line 429: Close to level 3 | '$text_msg = "🎡 *Lucky Spin Cooldown*\\n\\nYou have already spu' Line 429: Open to level 4 | '$text_msg = "🎡 *Lucky Spin Cooldown*\\n\\nYou have already spu' Line 429: Close to level 3 | '$text_msg = "🎡 *Lucky Spin Cooldown*\\n\\nYou have already spu' Line 430: Close to level 2 | '} else {' Line 430: Open to level 3 | '} else {' Line 434: Open to level 4 | 'if (count($rewards) === 0) {' Line 436: Close to level 3 | '} else {' Line 436: Open to level 4 | '} else {' Line 441: Open to level 5 | 'foreach ($rewards as $r) {' Line 443: Open to level 6 | 'if ($rand <= $cumulative) {' Line 446: Close to level 5 | '}' Line 447: Close to level 4 | '}' Line 449: Open to level 5 | 'if (!$selected_reward) {' Line 451: Close to level 4 | '}' Line 454: Open to level 5 | "if ($selected_reward['reward_type'] === 'balance') {" Line 464: Close to level 4 | '} else {' Line 464: Open to level 5 | '} else {' Line 472: Close to level 4 | '}' Line 473: Close to level 3 | '}' Line 474: Close to level 2 | '}' Line 485: Close to level 1 | '}' Line 490: Open to level 2 | "if (strpos($data, 'cat_') === 0) {" Line 506: Open to level 3 | 'foreach ($products as $p) {' Line 509: Open to level 4 | 'if ($stmtPlCount->fetchColumn() > 0) {' Line 511: Close to level 3 | '}' Line 512: Close to level 2 | '}' Line 517: Open to level 3 | 'if (!empty($cat_desc)) {' Line 519: Close to level 2 | '}' Line 524: Open to level 3 | "if (isset($callback['message']['photo'])) {" Line 527: Close to level 2 | '} else {' Line 527: Open to level 3 | '} else {' Line 529: Close to level 2 | '}' Line 532: Close to level 1 | '}' Line 535: Open to level 2 | "if ($data === 'back_categories') {" Line 540: Open to level 3 | 'foreach ($categories as $cat) {' Line 545: Open to level 4 | 'if ($prod_count > 0) {' Line 547: Close to level 3 | '}' Line 548: Close to level 2 | '}' Line 555: Open to level 3 | "if (isset($callback['message']['photo'])) {" Line 558: Close to level 2 | '} else {' Line 558: Open to level 3 | '} else {' Line 560: Close to level 2 | '}' Line 563: Close to level 1 | '}' Line 566: Open to level 2 | "if (strpos($data, 'prod_') === 0) {" Line 577: Open to level 3 | 'if (!$product) {' Line 580: Close to level 2 | '}' Line 588: Open to level 3 | 'foreach ($plans as $pl) {' Line 596: Open to level 4 | '$buttons[] = [[\'text\' => "⚡ {$pl[\'duration_name\']} - " . for' Line 596: Close to level 3 | '$buttons[] = [[\'text\' => "⚡ {$pl[\'duration_name\']} - " . for' Line 597: Close to level 2 | '}' Line 609: Open to level 3 | "if ($image_path && file_exists(__DIR__ . '/../' . $image_pat" Line 612: Close to level 2 | '} else {' Line 612: Open to level 3 | '} else {' Line 613: Open to level 4 | "if (isset($callback['message']['photo'])) {" Line 616: Close to level 3 | '} else {' Line 616: Open to level 4 | '} else {' Line 618: Close to level 3 | '}' Line 619: Close to level 2 | '}' Line 622: Close to level 1 | '}' Line 625: Open to level 2 | "if (strpos($data, 'plan_') === 0) {" Line 636: Open to level 3 | 'if (!$plan) {' Line 639: Close to level 2 | '}' Line 656: Open to level 3 | 'if ($keys_left > 0) {' Line 657: Open to level 4 | '$text_msg .= "🟢 *Stock*: **{$keys_left} keys** available in ' Line 657: Close to level 3 | '$text_msg .= "🟢 *Stock*: **{$keys_left} keys** available in ' Line 658: Close to level 2 | '} else {' Line 658: Open to level 3 | '} else {' Line 660: Close to level 2 | '}' Line 663: Open to level 3 | "if (isset($callback['message']['photo'])) {" Line 666: Close to level 2 | '} else {' Line 666: Open to level 3 | '} else {' Line 668: Close to level 2 | '}' Line 671: Close to level 1 | '}' Line 674: Open to level 2 | "if (strpos($data, 'buy_') === 0) {" Line 684: Open to level 3 | 'if (!$plan) {' Line 687: Close to level 2 | '}' Line 691: Open to level 3 | "if ($user['balance'] < $price) {" Line 694: Close to level 2 | '}' Line 697: Open to level 3 | 'try {' Line 706: Open to level 4 | 'if ($key) {' Line 717: Open to level 5 | '. "▫️ *Order ID*: #{$order_id}\\n"' Line 717: Close to level 4 | '. "▫️ *Order ID*: #{$order_id}\\n"' Line 732: Close to level 3 | '} else {' Line 732: Open to level 4 | '} else {' Line 740: Open to level 5 | '. "▫️ *Order ID*: #{$order_id}\\n"' Line 740: Close to level 4 | '. "▫️ *Order ID*: #{$order_id}\\n"' Line 755: Close to level 3 | '}' Line 756: Close to level 2 | '} catch (Exception $e) {' Line 756: Open to level 3 | '} catch (Exception $e) {' Line 759: Close to level 2 | '}' Line 761: Close to level 1 | '}' Line 764: Open to level 2 | "if ($data === 'confirm_reseller') {" Line 765: Open to level 3 | "if ($user['role'] === 'reseller') {" Line 768: Close to level 2 | '}' Line 772: Open to level 3 | "if ($user['balance'] < $reseller_cost) {" Line 775: Close to level 2 | '}' Line 778: Open to level 3 | 'try {' Line 803: Close to level 2 | '} catch (Exception $e) {' Line 803: Open to level 3 | '} catch (Exception $e) {' Line 806: Close to level 2 | '}' Line 808: Close to level 1 | '}' Line 809: Close to level 0 | '}' Line 810: Close to level -1 | '}' Line 815: Open to level 0 | 'function sendMainMenu($chat_id, $first_name) {' Line 817: Open to level 1 | '. "👋 Welcome back, *{$first_name}*!\\n\\n"' Line 817: Close to level 0 | '. "👋 Welcome back, *{$first_name}*!\\n\\n"' Line 853: Close to level -1 | '}' Line 858: Open to level 0 | 'function getBotUsername() {' Line 862: Open to level 1 | 'if (empty($username)) {' Line 864: Open to level 2 | "if (!empty($token) && $token !== 'YOUR_TELEGRAM_BOT_TOKEN') " Line 874: Open to level 3 | "if ($resp && isset($resp['ok']) && $resp['ok'] === true) {" Line 877: Close to level 2 | '}' Line 878: Close to level 1 | '}' Line 879: Close to level 0 | '}' Line 882: Close to level -1 | '}'