<?php
// POST কাজটি layout load হওয়ার আগেই করা হচ্ছে,
// যাতে header redirect ঠিকমতো কাজ করে এবং সাবমিটের পর সাদা/blank page না আসে।
require_once __DIR__.'/../config/config.php';
require_user();
$U=current_user();

$min_recharge=(float)setting($pdo,'min_recharge',50);

if($_SERVER['REQUEST_METHOD']==='POST'){
  csrf_check();
  $m=trim($_POST['method']??'');
  $a=(float)($_POST['amount']??0);
  $t=trim($_POST['txn']??'');
  $s=trim($_POST['sender']??'');
  $err=null; $ok=null;

  if($a<$min_recharge){
    $err="সর্বনিম্ন রিচার্জ $min_recharge";
  } elseif(!$m || !$t){
    $err='সব ফিল্ড পূরণ করুন';
  } else {
    $chk=$pdo->prepare("SELECT id FROM recharges WHERE txn_id=? LIMIT 1");
    $chk->execute([$t]);
    if($chk->fetch()){
      $err='এই Transaction ID আগে ব্যবহার করা হয়েছে। অনুগ্রহ করে সঠিক TxnID দিন।';
    } else {
      $pdo->prepare("INSERT INTO recharges(user_id,method,amount,txn_id,sender_number) VALUES(?,?,?,?,?)")
          ->execute([$U['id'],$m,$a,$t,$s]);
      $rid=(int)$pdo->lastInsertId();
      try { tg_notify_new_recharge($pdo, $rid); } catch (Throwable $e) { /* ignore */ }
      $ok='রিচার্জ রিকোয়েস্ট জমা হয়েছে। অ্যাডমিন অনুমোদনের পর ব্যালেন্স যুক্ত হবে।';
    }
  }

  $_SESSION['flash']=['ok'=>$ok,'err'=>$err];
  redirect('recharge.php');
}

$PAGE_TITLE='Recharge';
require __DIR__.'/_layout.php';
$methods=$pdo->query("SELECT * FROM recharge_methods WHERE active=1")->fetchAll();

// সর্বনিম্ন রিচার্জ সুন্দর করে দেখানোর জন্য (দশমিক .00 বাদ)
$min_display = rtrim(rtrim(number_format($min_recharge,2,'.',''),'0'),'.');
$placeholder_text = 'সর্বনিম্ন রিচার্জ '.CURRENCY.$min_display;

$flash=$_SESSION['flash']??['ok'=>null,'err'=>null];
unset($_SESSION['flash']);
$ok=$flash['ok']??null; $err=$flash['err']??null;

$my=$pdo->prepare("SELECT * FROM recharges WHERE user_id=? ORDER BY id DESC LIMIT 20");
$my->execute([$U['id']]); $my=$my->fetchAll();
?>
<h2 style="margin-bottom:14px">💰 রিচার্জ</h2>
<div class="grid g2">
<div class="card">
<h3>রিচার্জ মেথড</h3>
<?php foreach($methods as $m):?>
<div style="padding:12px;margin-top:10px;background:#f8fafc;border-radius:10px;border-left:4px solid #6366f1">
<b><?=e($m['name'])?></b> (<?=e($m['type']??'')?>) — <span style="color:#6366f1"><b><?=e($m['number'])?></b></span>
<div style="font-size:13px;color:#64748b;margin-top:4px"><?=e($m['instruction'])?></div>
</div>
<?php endforeach;?>
<?php if(!$methods):?><p style="color:#64748b">কোনো মেথড এখনো এড করা হয়নি।</p><?php endif;?>
</div>

<div class="card">
<h3>রিকোয়েস্ট জমা দিন</h3>
<?php if($ok):?><div class="alert ok"><?=e($ok)?></div><?php endif;?>
<?php if($err):?><div class="alert err"><?=e($err)?></div><?php endif;?>
<form method="post" style="margin-top:10px"><?=csrf_field()?>
<div class="field"><label>মেথড</label>
<select name="method" class="input" required>
<?php foreach($methods as $m):?><option><?=e($m['name'])?></option><?php endforeach;?>
</select></div>
<div class="field">
  <label>Amount</label>
  <input class="input" name="amount" type="number" min="<?=e($min_recharge)?>" step="any" placeholder="<?=e($placeholder_text)?>" required>
  <small style="display:block;margin-top:6px;color:#64748b;font-size:12px">ℹ️ <?=e($placeholder_text)?></small>
</div>
<div class="field"><label>Transaction ID</label><input class="input" name="txn" required></div>
<div class="field"><label>Sender Number</label><input class="input" name="sender"></div>
<button class="btn">সাবমিট</button>
</form>
</div>
</div>

<div style="margin-top:24px">
<h3>আমার রিচার্জ হিস্টোরি</h3>
<table style="margin-top:10px"><thead><tr><th>#</th><th>Date</th><th>Method</th><th>Amount</th><th>TxnID</th><th>Status</th><th>Note</th></tr></thead><tbody>
<?php foreach($my as $r):?>
<tr><td>#<?=$r['id']?></td><td><?=e($r['created_at'])?></td><td><?=e($r['method'])?></td><td><?=money($r['amount'])?></td>
<td><?=e($r['txn_id'])?></td>
<td><span class="badge <?=$r['status']==='approved'?'ok':($r['status']==='rejected'?'fail':'pending')?>"><?=e($r['status'])?></span></td>
<td><?=e($r['admin_note']??'')?></td></tr>
<?php endforeach;?>
</tbody></table>
</div>
<?php require __DIR__.'/_footer.php';
