<?php
session_start();
header('Content-Type: application/json');
include '../config/database.php';

$db = new Database();
$conn = $db->getConnection();

$id = $_POST['id'];
$nama_lengkap = $_POST['nama_lengkap'];
$nik = $_POST['nik'];
$tempat_lahir = $_POST['tempat_lahir'];
$tgl_lahir = $_POST['tgl_lahir'];
$jenis_kelamin = $_POST['jenis_kelamin'];
$kaum = $_POST['kaum'];
$no_hp = $_POST['no_hp'];
$alamat = $_POST['alamat'];
$gereja_id = $_POST['gereja_id'];
$status_baptis = $_POST['status_baptis'];
$tgl_baptis = $_POST['tgl_baptis'] ?: null;
$status_nikah = $_POST['status_nikah'];

// Handle upload foto
$foto = $_POST['foto_lama'];
if(!empty($_FILES['foto']['name'])){
    $ext = pathinfo($_FILES['foto']['name'], PATHINFO_EXTENSION);
    $foto = 'jemaat_'.time().'.'.$ext;
    move_uploaded_file($_FILES['foto']['tmp_name'], '../assets/img/jemaat/'.$foto);
    
    // Hapus foto lama
    if($_POST['foto_lama'] != '' && file_exists('../assets/img/jemaat/'.$_POST['foto_lama'])){
        unlink('../assets/img/jemaat/'.$_POST['foto_lama']);
    }
}

try {
    if($id == ''){
        // TAMBAH DATA - FIX: GAK PAKE created_at LAGI
        $sql = "INSERT INTO jemaat (nama_lengkap, nik, tempat_lahir, tgl_lahir, jenis_kelamin, kaum, no_hp, alamat, gereja_id, status_baptis, tgl_baptis, status_nikah, foto, no_anggota) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
        
        // Generate No Anggota pake COUNT total aja, lebih simple
        $thn = date('Y');
        $stmt = $conn->query("SELECT COUNT(*) as jml FROM jemaat");
        $urut = $stmt->fetch()['jml'] + 1;
        $no_anggota = 'GBI/'.$thn.'/'.str_pad($urut, 4, '0', STR_PAD_LEFT);
        
        $stmt = $conn->prepare($sql);
        $exe = $stmt->execute([$nama_lengkap, $nik, $tempat_lahir, $tgl_lahir, $jenis_kelamin, $kaum, $no_hp, $alamat, $gereja_id, $status_baptis, $tgl_baptis, $status_nikah, $foto, $no_anggota]);
        $msg = 'Data berhasil ditambah';
    } else {
        // UPDATE DATA
        $sql = "UPDATE jemaat SET nama_lengkap=?, nik=?, tempat_lahir=?, tgl_lahir=?, jenis_kelamin=?, kaum=?, no_hp=?, alamat=?, gereja_id=?, status_baptis=?, tgl_baptis=?, status_nikah=?, foto=? WHERE id=?";
        $stmt = $conn->prepare($sql);
        $exe = $stmt->execute([$nama_lengkap, $nik, $tempat_lahir, $tgl_lahir, $jenis_kelamin, $kaum, $no_hp, $alamat, $gereja_id, $status_baptis, $tgl_baptis, $status_nikah, $foto, $id]);
        $msg = 'Data berhasil diupdate';
    }

    if($exe){
        echo json_encode(['status'=>'success','message'=>$msg]);
    } else {
        echo json_encode(['status'=>'error','message'=>'Gagal simpan data']);
    }

} catch (PDOException $e) {
    echo json_encode(['status'=>'error','message'=>'Error: '.$e->getMessage()]);
}
?>