<?php
require_once __DIR__ . '/../connect.php';

// استرجاع وتصفية البيانات
$driverId = filterRequest("driverId");
$carPlate = $encryptionHelper->encryptData(filterRequest("carPlate"));
$color = filterRequest("color");
$color_hex = filterRequest("color_hex");
$make = filterRequest("make");
$model = filterRequest("model");
$expiration_date = filterRequest("expiration_date");
$owner = $encryptionHelper->encryptData(filterRequest("owner"));
$year = filterRequest("year");
$employee = filterRequest("employee");

// تحديث CarRegistration
$sqlUpdate = "
    UPDATE `CarRegistration`
    SET
        `car_plate` = :carPlate,
        `color` = :color,
        `color_hex` = :color_hex,
        `make` = :make,
        `model` = :model,
        `year` = :year,
        `expiration_date` = :expiration_date,
        `owner` = :owner
    WHERE `driverID` = :driverId";

$stmtUpdate = $con->prepare($sqlUpdate);
$stmtUpdate->execute([
    ':carPlate' => $carPlate,
    ':color' => $color,
    ':color_hex' => $color_hex,
    ':make' => $make,
    ':model' => $model,
    ':year' => $year,
    ':expiration_date' => $expiration_date,
    ':owner' => $owner,
    ':driverId' => $driverId
]);

if ($stmtUpdate->rowCount() > 0) {
    // تسجيل التعديل
    $sqlInsert = "INSERT INTO `carPlateEdit`
        (`driverId`, `carPlate`, `color`, `make`, `model`, `expiration_date`, `owner`, `year`, `employee`, `isEdit`)
        VALUES (:driverId, :carPlate, :color, :make, :model, :expiration_date, :owner, :year, :employee, 1)";
    $stmtInsert = $con->prepare($sqlInsert);
    $stmtInsert->execute([
        ':driverId' => $driverId,
        ':carPlate' => $carPlate,
        ':color' => $color,
        ':make' => $make,
        ':model' => $model,
        ':expiration_date' => $expiration_date,
        ':owner' => $owner,
        ':year' => $year,
        ':employee' => $employee
    ]);

    jsonSuccess(null, "Car data updated and edit logged successfully.");
} else {
    jsonError("No changes were made to the car data.");
}