<?php
session_start();
// Hanya admin yang sudah login boleh mengakses file ini
if (!isset($_SESSION['admin_bulfood']) || $_SESSION['admin_bulfood'] !== true) {
    die("Akses ditolak.");
}

// Panggil koneksi database
require_once '../db.php'; // Ambil db.php dari folder 'api/'

// Ambil data dari formulir
$name = $_POST['name'] ?? '';
$phone = $_POST['phone'] ?? '';
$password = $_POST['password'] ?? '';
$role = $_POST['role'] ?? '';

// Validasi sederhana
if (empty($name) || empty($phone) || empty($password) || empty($role)) {
    die("Data tidak lengkap. Kembali dan ulangi.");
}

if ($role !== 'merchant' && $role !== 'driver') {
    die("Role tidak valid.");
}

try {
    // Cek duplikasi nomor HP
    $check = $conn->prepare("SELECT id FROM users WHERE phone = :phone");
    $check->bindParam(':phone', $phone);
    $check->execute();

    if ($check->rowCount() > 0) {
        die("Nomor HP ini sudah terdaftar. Gunakan nomor lain.");
    }

    // Hash password (WAJIB!)
    $password_hash = password_hash($password, PASSWORD_BCRYPT);

    // Masukkan ke database
    $sql = "INSERT INTO users (name, phone, password, role) VALUES (:name, :phone, :pass, :role)";
    $stmt = $conn->prepare($sql);

    $stmt->bindParam(':name', $name);
    $stmt->bindParam(':phone', $phone);
    $stmt->bindParam(':pass', $password_hash);
    $stmt->bindParam(':role', $role);
    $stmt->execute();

    // Jika berhasil, kembali ke dashboard dengan pesan sukses
    header("Location: dashboard.php?message=Mitra baru ($name) berhasil ditambahkan!");
    exit;

} catch (PDOException $e) {
    die("Database error: " . $e->getMessage());
}
?>