<?php
// ═══════════════════════════════════════════════════════════════
// api/endpoints/simpan_telegram_chat_id.php
// POST: simpan Chat ID Telegram siswa agar bisa terima notifikasi
//
// Request body:
//   { "siswa_id": 123, "chat_id": "12345678" }
//
// Cara siswa dapat Chat ID:
//   1. Buka Telegram → cari bot sekolah (nama bot yang sudah dibuat)
//   2. Ketik /start
//   3. Bot akan membalas dengan Chat ID
//   4. Atau siswa buka: https://t.me/userinfobot
// ═══════════════════════════════════════════════════════════════
require_once dirname(__DIR__) . '/config/db.php';
header('Content-Type: application/json');

$siswaId = (int)($body['siswa_id'] ?? $_POST['siswa_id'] ?? 0);
$chatId  = trim($body['chat_id']  ?? $_POST['chat_id']  ?? '');

if ($siswaId <= 0 || empty($chatId)) {
    echo json_encode(['status' => 'error', 'message' => 'siswa_id dan chat_id wajib diisi']);
    exit;
}

// Validasi: pastikan chat_id hanya angka (bisa negatif untuk grup)
if (!preg_match('/^-?\d+$/', $chatId)) {
    echo json_encode(['status' => 'error', 'message' => 'Format chat_id tidak valid']);
    exit;
}

try {
    $pdo->prepare(
        "UPDATE users SET telegram_chat_id = ? WHERE siswa_id = ? AND role = 'siswa'"
    )->execute([$chatId, $siswaId]);

    echo json_encode(['status' => 'success', 'message' => 'Chat ID Telegram berhasil disimpan']);
} catch (Exception $e) {
    echo json_encode(['status' => 'error', 'message' => 'Gagal menyimpan: ' . $e->getMessage()]);
}