<?php
// config.php
declare(strict_types=1);
mb_internal_encoding('UTF-8');
date_default_timezone_set('Asia/Tehran');

// ── حتماً مقادیر زیر را با مال خودت پر کن ─────────────────────────────────────
const BOT_TOKEN = '8513931261:AAFYsjXgmSSO13ixLn6RcysJiBq_NpJbdAs';
const ADMIN_IDS = '5516198479';              // comma-separated
const DB_HOST   = 'localhost';
const DB_NAME   = 'gemaccir_369';
const DB_USER   = 'gemaccir_369';
const DB_PASS   = 'Alik.1997a';
// ───────────────────────────────────────────────────────────────────────────────

const API           = 'https://api.telegram.org/bot'.BOT_TOKEN.'/';
const SUPPORT_LINK  = 'https://t.me/anyconnect_admin';
const SHOP_NAME     = 'پیشگام سرور';
const ADMIN_TAG     = '@anyconnect_admin';
const CARD_NUMBER   = '6104331062907218'; // بنام زحمت کش
const CURRENCY_SUFFIX = ' تومان';
const V2_ONLY       = true; // فقط V2Ray
const DB_CHARSET    = 'utf8mb4';
const CHANNEL_USERNAME = '@anyconnect_iran'; // آیدی کانال

// —— DB
function db(): PDO {
  static $pdo;
  if ($pdo) return $pdo;
  $pdo = new PDO(
    'mysql:host='.DB_HOST.';dbname='.DB_NAME.';charset='.DB_CHARSET,
    DB_USER,
    DB_PASS,
    [
      PDO::ATTR_ERRMODE            => PDO::ERRMODE_EXCEPTION,
      PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
    ]
  );
  return $pdo;
}

// —— Helpers
function isAdmin($uid): bool {
  $ids = array_map('trim', explode(',', ADMIN_IDS));
  return in_array((string)$uid, $ids, true);
}
function money(int $amount): string {
  return number_format($amount).CURRENCY_SUFFIX;
}
function tg(string $method, array $params = []) {
  $ch = curl_init(API.$method);
  curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_POST           => true,
    CURLOPT_HTTPHEADER     => ['Content-Type: application/json'],
    CURLOPT_POSTFIELDS     => json_encode($params, JSON_UNESCAPED_UNICODE|JSON_UNESCAPED_SLASHES),
    CURLOPT_CONNECTTIMEOUT => 5,
    CURLOPT_TIMEOUT        => 15,
  ]);
  $res = curl_exec($ch);
  if ($res === false) {
    error_log('TG_CURL_ERR: '.curl_error($ch));
    curl_close($ch);
    return null;
  }
  $code = curl_getinfo($ch, CURLINFO_RESPONSE_CODE);
  curl_close($ch);
  if ($code !== 200) error_log('TG_HTTP_'.$code.': '.$res);
  return json_decode($res, true);
}

// ── پلن‌ها (قیمت «تومان واقعی») ───────────────────────────────────────────────
function plans(): array {
  return [
    // VIP یک‌ماهه
    'VIP_1U_1M'   => ['title'=>'نامحدود VIP | یک‌ماهه | 1 کاربر', 'price'=>150000],
    'VIP_2U_1M'   => ['title'=>'نامحدود VIP | یک‌ماهه | 2 کاربر', 'price'=>299000],
    // VIP سه‌ماهه
    'VIP_1U_3M'   => ['title'=>'نامحدود VIP | سه‌ماهه | 1 کاربر', 'price'=>439000],
    'VIP_2U_3M'   => ['title'=>'نامحدود VIP | سه‌ماهه | 2 کاربر', 'price'=>599000],
    // حجمی یک‌ماهه
    'VOL_10G_1M'  => ['title'=>'حجمی | یک‌ماهه | 10 گیگ', 'price'=>49000],
    'VOL_20G_1M'  => ['title'=>'حجمی | یک‌ماهه | 20 گیگ', 'price'=>98000],
    'VOL_30G_1M'  => ['title'=>'حجمی | یک‌ماهه | 30 گیگ', 'price'=>147000],
  ];
}