<?php
session_start();
// Role check: hanya admin dan petugas yang boleh menyimpan
if (!isset($_SESSION['role']) || !in_array($_SESSION['role'], ['admin', 'petugas'])) {
    header('Content-Type: application/json');
    http_response_code(403);
    echo json_encode(['status'=>'error','message'=>'Akses ditolak. Hanya admin/petugas yang dapat menambah data.']);
    exit;
}

// point/simpan.php
include '../koneksi.php';
header('Content-Type: application/json');

$nama       = trim($_POST['nama']       ?? '');
$no_wa      = trim($_POST['no_wa']      ?? '');
$buka_24    = trim($_POST['buka_24_jam']?? '');
$latitude   = trim($_POST['latitude']   ?? '');
$longitude  = trim($_POST['longitude']  ?? '');

if (!$nama || !$no_wa || !$buka_24 || !$latitude || !$longitude) {
    echo json_encode(['status'=>'error','message'=>'Semua field wajib diisi.']);
    exit;
}

if (!in_array($buka_24, ['Ya','Tidak'])) {
    echo json_encode(['status'=>'error','message'=>'Nilai buka_24_jam tidak valid.']);
    exit;
}

try {
    $stmt = $pdo->prepare(
        "INSERT INTO points (nama, no_wa, buka_24_jam, latitude, longitude)
         VALUES (?, ?, ?, ?, ?)"
    );
    $stmt->execute([$nama, $no_wa, $buka_24, $latitude, $longitude]);
    $id = $pdo->lastInsertId();

    $stmtSelect = $pdo->prepare("SELECT * FROM points WHERE id = ?");
    $stmtSelect->execute([$id]);
    $data = $stmtSelect->fetch(PDO::FETCH_ASSOC);
    
    echo json_encode(['status'=>'success','data'=>$data]);
} catch (PDOException $e) {
    echo json_encode(['status'=>'error','message'=>'Gagal menyimpan: '.$e->getMessage()]);
}
?>
