<?php
ob_start();
$pageTitle = 'إدارة وكلاء السياحة';
ini_set('serialize_precision', '-1');
include 'init.php';
use classs\ManagerCars;
use classs\ManagerAgent;
/* use src\ManagerCars;
use src\FileManager; */
$do = isset($_GET['do']) ? $_GET['do'] : '';
$department_id = 2;
if ($do === 'add') {
    if (checkadmin($_SESSION['admin'], $department_id, 3) == 1 ) {
        ?>
        <div class="container mt-5">
            <div class="card">
                <div class="card-header">
                    <h3 class="card-title">إضافة وكيل <i class="fa-solid fa-bus"></i></h3>
                </div>
                <div class="card-body">
                    <form action="?do=insert" method="post">
                        <div class="row">
                            <div class="col-md-3 mb-3">
                                <div class="form-floating">
                                    <select name="tourism_management" id="tourism_management" class="form-select" required>
                                        <?php
                                        // Query to retrieve agents from the agents table
                                        $agentsQuery = "SELECT * FROM tourism_management";
                                        $agentsResult = $con->query($agentsQuery);
                                        echo "<option value=''>اختر القسم</option>";
                                        while ($agent = $agentsResult->fetch(PDO::FETCH_ASSOC)) {
                                            $id_user = $_SESSION['admin'];
                                            if (checkadmin($id_user, $agent['department_id'], 3) == 1) {
                                                echo "<option value='{$agent['ID']}'>{$agent['name_management']}</option>";
                                            }
                                        }
                                        ?>
                                    </select>
                                    <label for="tourism_management" class="form-label">قسم:</label>
                                </div>
                            </div>
                            <div class="col-md-2 mb-3">
                                <div class="form-floating">
                                    <input type="text" name="agent_name" class="form-control" placeholder="إسم الوكيل" required>
                                    <label for="agent_name" class="form-label">إسم الوكيل</label>
                                </div>
                            </div>
                            <div class="col-md-2 mb-3">
                                <div class="form-floating">
                                    <input type="text" name="phone" class="form-control" placeholder="رقم الهاتف">
                                    <label for="phone" class="form-label">رقم الهاتف</label>
                                </div>
                            </div>
                            <div class="col-md-3 mb-4">
                                <div class="form-floating">
                                    <input type="text" name="email" class="form-control" placeholder="البريد الالكترونى">
                                    <label for="email" class="form-label">البريد الالكترونى</label>
                                </div>
                            </div>
                            <!-- <div class="col-md-3 mb-3">
                                <div class="form-floating">
                                    <select name="cost_centers_id" id="cost_centers_id" class="form-select">
                                        <?php
                                        // Query to retrieve agents from the agents table
                                        /* $agentsQuery = "SELECT * FROM cost_centers WHERE cc_lv = 1";
                                        $agentsResult = $con->query($agentsQuery);
                                        echo "<option value=''>اختر مركز التكلفة الرئيسي</option>";
                                        while ($agent = $agentsResult->fetch(PDO::FETCH_ASSOC)) {
                                            echo "<option value='{$agent['ID']}'>{$agent['cost_center_name']}</option>";
                                        } */
                                        ?>
                                    </select>
                                    <label for="cost_centers_id" class="form-label">مركز التكلفة:</label>
                                </div>
                            </div> -->
                            <div class="col-md-2 mb-3">
                                <br>
                                <button type="submit" class="btn btn-primary" name="add_agent">Add Agent</button>
                            </div>
                        </div>
                    </form>
                </div>
            </div>
        </div>
        <?php
    } else {
        echo '<div class="alert alert-danger">ليس لديك صلاحية الدخول الى هذا القسم</div>';
    }
} elseif ($do === 'insert') {
    // معالجة إضافة السيارة الجديد
    if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['add_agent'])) {
        $ManagerAgent = new ManagerAgent($con);
        // استلام البيانات من الفورم
        $agent_name = filter_input(INPUT_POST, 'agent_name');
        $phone = filter_input(INPUT_POST, 'phone');
        $email = filter_input(INPUT_POST, 'email');
        // $cost_centers_id = filter_input(INPUT_POST, 'cost_centers_id');
        $tourism_management_id = filter_input(INPUT_POST, 'tourism_management');

        // يمكنك إجراء عمليات التحقق هنا
        $formErrors = array();
        if (empty($agent_name)) {
            $formErrors[] = 'لا يجب أن يكون إسم الوكيل <strong>فارغ</strong>';
        }
        if (empty($tourism_management_id)) {
            $formErrors[] = 'لا يجب أن يكون القسم <strong>فارغ</strong>';
        }
        $cost_centers_id = '';
        if (!empty($cost_centers_id)) {
            $lv1 = getName("cost_centers", "ID", $cost_centers_id, "cost_center_code");
            $new_cost_center_id = getNextCostCenterCode($con, $lv1, $cost_centers_id, $agent_name);
        } else {
            $new_cost_center_id = "";
        }
        // Loop Into Errors Array And Echo It
        foreach ($formErrors as $error) {
            echo '<div class="alert alert-danger">' . $error . '</div>';
        }
        if (empty($formErrors)) {
            try {
                $con->beginTransaction();
                $lv1 = "";
                $lv2 = "";
                $lv3 = "";
                $lv4 = "";
                $lv5 = "";
                $id_lv = getId("tourism_management", "ID", $tourism_management_id, "lv_client");
                $lev_acc = getId("level_acc", "ID", $id_lv, "lev_acc");
                $lvacc = $lev_acc + 1;
                if ($lvacc == 1) {
                    $acc_up = "";
                    $account = $con->prepare("SELECT MAX(lv1) as last_code_account FROM level_acc where lev_acc = 1 ");
                    $account->execute();
                    $account1s = $account->fetchAll();
                    foreach ($account1s as $key => $account1) {
                        $last_code_account = $account1['last_code_account'];
                        if (!empty($last_code_account)) {
                            $lv1 = $last_code_account + 1;
                        } else {
                            $lv1 = 1;
                        }
                    }
                    $lv = $lv1;
                } elseif ($lvacc == 2) {
                    $lv1 = getName("level_acc", "ID", $id_lv1, "lv1");
                    $acc_up = $id_lv1;
                    $account = $con->prepare("SELECT MAX(CAST(SUBSTRING_INDEX(lv2, '.', -1) AS UNSIGNED)) AS last_code_account FROM level_acc where lev_acc = 2 AND acc_up = $id_lv1");
                    // $account = $con->prepare("SELECT MAX(lv2) as last_code_account FROM level_acc where lev_acc = 2 AND acc_up = $id_lv1 ");
                    $account->execute();
                    // احصل على البيانات
                    $result = $account->fetch(PDO::FETCH_ASSOC);
                    // احصل على أكبر قيمة
                    $last_code_account = $result['last_code_account'];
                    // $account1s = $account->fetchAll();
                    // foreach ($account1s as $key => $account1) {
                        // $last_code_account = $account1['last_code_account'];
                        if (!empty($last_code_account)) {
                            $lv2 = $last_code_account + 1;
                            $lv2 = $lv1.".".$lv2;
                        } else {
                            $lv2 = $lv1 . ".1";
                        }
                    // }
                    $lv = $lv2;
                } elseif ($lvacc == 3) {
                    $lv1 = getName("level_acc", "ID", $id_lv1, "lv1");
                    $lv2 = getName("level_acc", "ID", $id_lv2, "lv2");
                    $acc_up = $id_lv2;
                    $account = $con->prepare("SELECT MAX(CAST(SUBSTRING_INDEX(SUBSTRING_INDEX(lv3, '.', -1), '.', -1) AS UNSIGNED)) AS last_code_account FROM level_acc where lev_acc = 3 AND acc_up = $id_lv2 ");
                    $account->execute();
                    $result = $account->fetch(PDO::FETCH_ASSOC);
                    $last_code_account = $result['last_code_account'];
                        if (!empty($last_code_account)) {
                            $lv3 = $last_code_account + 1;
                            $lv3 = $lv2.".".$lv3;
                        } else {
                            $lv3 = $lv2 . ".1";
                        }
                    $lv = $lv3;
                } elseif ($lvacc == 4) {
                    $id_lv3 = $id_lv ;
                    
                    $id_lv2 = getId("level_acc", "ID", $id_lv3, "acc_up");
                    $id_lv1 = getId("level_acc", "ID", $id_lv2, "acc_up");
                    $lv1 = getId("level_acc", "ID", $id_lv1, "lv1");
                    $lv2 = getId("level_acc", "ID", $id_lv2, "lv2");
                    $lv3 = getId("level_acc", "ID", $id_lv3, "lv3");
                    $acc_up = $id_lv3;

                    $account = $con->prepare("SELECT MAX(CAST(SUBSTRING_INDEX(SUBSTRING_INDEX(SUBSTRING_INDEX(lv4, '.', -1), '.', -1), '.', -1) AS UNSIGNED)) AS last_code_account FROM level_acc where lev_acc = 4 AND acc_up = $id_lv3 ");
                    $account->execute();
                    $result = $account->fetch(PDO::FETCH_ASSOC);
                    $last_code_account = $result['last_code_account'];
                        if (!empty($last_code_account)) {
                            $lv4 = $last_code_account + 1;
                            $lv4 = $lv3.".".$lv4;
                        } else {
                            $lv4 = $lv3 . ".1";
                        }
                    $lv = $lv4;
                    
                } elseif ($lvacc == 5) {
                    $lv1 = getName("level_acc", "ID", $id_lv1, "lv1");
                    $lv2 = getName("level_acc", "ID", $id_lv2, "lv2");
                    $lv3 = getName("level_acc", "ID", $id_lv3, "lv3");
                    $lv4 = getName("level_acc", "ID", $id_lv4, "lv4");
                    $acc_up = $id_lv4;
                    $account = $con->prepare("SELECT MAX(CAST(SUBSTRING_INDEX(SUBSTRING_INDEX(SUBSTRING_INDEX(SUBSTRING_INDEX(lv5, '.', -1), '.', -1), '.', -1), '.', -1) AS UNSIGNED)) AS last_code_account FROM level_acc where lev_acc = 5 AND acc_up = $id_lv4 ");

                    // $account = $con->prepare("SELECT MAX(lv5) as last_code_account FROM level_acc where lev_acc = 5 AND acc_up = $id_lv4 ");
                    $account->execute();
                    // احصل على البيانات
                    $result = $account->fetch(PDO::FETCH_ASSOC);
                    // احصل على أكبر قيمة
                    $last_code_account = $result['last_code_account'];

                    // $account1s = $account->fetchAll();
                    // foreach ($account1s as $key => $account1) {
                        // $last_code_account = $account1['last_code_account'];
                        if (!empty($last_code_account)) {
                            $lv5 = $last_code_account + 1;
                            $lv5 = $lv4.".".$lv5;
                        } else {
                            $lv5 = $lv4 . ".1";
                        }
                    // }
                    $lv = $lv5;
                }
                if ($lvacc != 1){
                    $list_account = getId("level_acc", "ID", $id_lv1, "list_account");
                    $nature = getId("level_acc", "ID", $id_lv1, "nature_account");
                }
                $nameacc = $agent_name;
                // Insert Userinfo In Database
                $stmt = $con->prepare("INSERT INTO 
                level_acc(name_account, lev_acc, lv, lv1, lv2, lv3, lv4, lv5, acc_up, nature_account, list_account, user_id_add, DateInsert)
                            VALUES(:zname_account, :zlev_acc, :zlv, :zlv1, :zlv2, :zlv3, :zlv4, :zlv5, :zacc_up, :znature_account, :zlist_account, :zuser_id_add, now()) ");
                $stmt->execute(
                    array(
                    'zname_account' => $nameacc,
                    'zlev_acc' => $lvacc,
                    'zlv' => $lv,
                    'zlv1' => $lv1,
                    'zlv2' => $lv2,
                    'zlv3' => $lv3,
                    'zlv4' => $lv4,
                    'zlv5' => $lv5,
                    'zacc_up' => $acc_up,
                    'znature_account' => $nature,
                    'zlist_account' => $list_account,
                    'zuser_id_add' => $_SESSION['admin']
                    )
                );
                $id_level_acc = $con->lastInsertId();
                $result = $ManagerAgent->insertAgentData($agent_name, $phone, $email, $cost_centers_id, $id_level_acc);
                $con->commit();
                if ($result) {
                    $theMsg = "تمت إضافة الوكيل بنجاح!";
                    redirectlink($theMsg, $url = "agents?do=all_agents", $name = "عرض الوكلاء", $seconds = 2);
                } else {
                    echo "حدث خطأ أثناء إضافة الوكيل.";
                }
            } catch (PDOException $e) {
                $con->rollBack();
                echo "حدث خطأ فى السيرفر أثناء إضافة الوكيل: " . $e->getMessage();
            }
        }
    }
} elseif ($do === 'edit') {
    if (checkadmin($_SESSION['admin'], $department_id, 4) == 1 ) {
        if (isset($_GET['id']) && is_numeric($_GET['id'])) {
            $car_id = $_GET['id'];

            $ManagerCars = new ManagerCars($con);
            $cars = $ManagerCars->getcarById($car_id);

            if ($cars != null) {
                // استخدم $reservationData لملء حقول النموذج
                ?>
                <div class="container mt-5">
                    <div class="card">
                        <div class="card-header">
                            <h3 class="card-title"><i class="fa-solid fa-bus fa-sm"></i> تعديل بيانات السيارة رقم <?php echo $cars['vehicle_plate_number']; ?> </h3>
                        </div>
                        <div class="card-body">
                            <form action="?do=update" method="post">
                                <input type="hidden" name="car_id" value="<?php echo $cars['ID']; ?>">
                                <div class="row">
                                    <div class="col-md-4 mb-3">
                                        <label for="name_car" class="form-label">اسم السيارة</label>
                                        <input type="text" name="name_car" value="<?php echo $cars['vehicle_model']; ?>" class="form-control">
                                    </div>
                                    <div class="col-md-3 mb-3">
                                        <label for="num_car" class="form-label">رقم السيارة</label>
                                        <input type="text" name="num_car" value="<?php echo $cars['vehicle_plate_number']; ?>" class="form-control">
                                    </div>
                                    <div class="col-md-3 mb-3">
                                        <label for="number_passengers" class="form-label">عدد الركاب</label>
                                        <input type="text" name="number_passengers" value="<?php echo $cars['seating_capacity']; ?>" class="form-control">
                                    </div>
                                    <div class="col-md-2 mb-3">
                                        <br>
                                        <button type="submit" class="btn btn-primary" name="edit_car">save</button>
                                    </div>
                                </div>
                            </form>
                        </div>
                    </div>
                </div>

                <?php
                // }
            } else {
                // رسالة خطأ أو إعادة توجيه إلى صفحة خطأ
                echo "خطأ: لا يوجدسيارة بهذا الرقم.";
                exit;
            }
        } else {
            // رسالة خطأ أو إعادة توجيه إلى صفحة خطأ
            echo "خطأ: يجب تحديد رقم السيارة.";
            exit;
        }
    } else {
        echo '<div class="alert alert-danger">ليس لديك صلاحية الدخول الى هذا القسم</div>';
    }
} elseif ($do === 'update') {
    // معالجة تعديل السيارة
    if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['edit_car'])) {

        $ManagerCars = new ManagerCars($con);

        // استلام البيانات من الفورم
        $car_id = $_POST['car_id'];
        $name_car           = $_POST['name_car'];
        $num_car            = $_POST['num_car'];
        $number_passengers  = $_POST['number_passengers'];
        // يمكنك إجراء عمليات التحقق هنا
        $formErrors = array();
        if (empty($name_car)) {
            $formErrors[] = 'لا يجب أن يكون إسم السيارة  <strong>فارغ</strong>';
        }
        if (empty($num_car)) {
            $formErrors[] = 'لا يجب أن يكون رقم السيارة <strong>فارغ</strong>';
        }
        if (empty($number_passengers)) {
            $formErrors[] = 'لا يجب أن يكون عدد الركاب <strong>فارغ</strong>';
        }
        // Loop Into Errors Array And Echo It
        foreach ($formErrors as $error) {
            echo '<div class="alert alert-danger">' . $error . '</div>';
        }
        if (empty($formErrors)) {
            try {
                // إضافة الحجز باستخدام فئة ReservationsManager
                $result = $ManagerCars->updateCar($car_id, $name_car, $num_car, $number_passengers);
                // $result = $reservationsManager->addReservation($agent_id, $client_id, $arrival_date, $departure_date, $remarks);

                if ($result) {
                    $theMsg = "تم تحديث بيانات السيارة بنجاح!";
                    redirectlink($theMsg, $url = "cars?do=all_cars", $name = "عرض السيارات", $seconds = 0);
                } else {
                    echo "حدث خطأ أثناء تحديث البيانات.";
                }
            } catch (PDOException $e) {
                echo "حدث خطأ أثناء تعديل بيانات السيارة: " . $e->getMessage();
            }
        }
    }
} elseif ($do === 'delete') {
    if (checkadmin($_SESSION['admin'], $department_id, 5) == 1 ) {
        // معالجة حذف الحجز
        echo "<h3 class='text-center'>حذف</h3>";
        echo "<div class='container'>";
        // Check If Get Request id Is Numeric & Get The Integer Value Of It
        $id = isset($_GET['id']) && is_numeric($_GET['id']) ? intval($_GET['id']) : 0;
        // Select All Data Depend On This ID
        $check = checkItem('id', 'vehicles', $id);
        // If There's Such ID Show The Form
        if ($check > 0) {
            $stmt = $con->prepare("DELETE FROM vehicles WHERE ID = :zid");
            $stmt->bindParam(":zid", $id);
            $stmt->execute();
            $theMsg = "<div class='alert alert-success'>" . $stmt->rowCount() . ' تم الحذف بنجاح</div>';
            redirectlink($theMsg, $url = "cars?do=all_cars", $name = "عرض السيارات", $seconds = 0);
        } else {
            $theMsg = '<div class="alert alert-danger">برجاء إتباع رابط صحيح</div>';
            redirectHome($theMsg);
        }
    } else {
        $theMsg = '<div class="alert alert-danger">ليس لديك صلاحية الدخول الى هذا القسم</div>';
        redirectlink($theMsg, $url = "cars?do=all_cars", $name = "عرض السيارات", $seconds = 3);
    }
    echo '</div>';
} elseif ($do === 'all_agents') {
    if (checkadmin($_SESSION['admin'], $department_id, 2) == 1 ) {
        ?>
        <h1 class="input-group-text text-center">إدارة الوكلاء</h1>
        <br>
        <?php
        $ManagerAgent = new ManagerAgent($con);
        $Agents = $ManagerAgent->getAll();
        $msgres = "لا توجد بيانات.";
        if (!empty($Agents)) {
            echo "<table class='main-table text-center table table-bordered'>";
            echo "<tr>
                <td>اسم الوكيل</td>
                <td>رقم الهاتف</td>
                <td>البريد الإلكترونى</td>
                <td>Control</td>
            </tr>";
            foreach ($Agents as $reservation) {
                echo "<tr>
                    <td>{$reservation['agent_name']}</td>
                    <td>{$reservation['phone_number']}</td>
                    <td>{$reservation['email']}</td>";
                if (checkadmin($_SESSION['admin'], 2, 2) == 2 || checkadmin($_SESSION['admin'], 1, 0) == 0 || checkadmin($_SESSION['admin'], 2, 1) == 1) {
                    echo "<td>
                    <a href='?do=all_data_hotel&id=" . $reservation['ID'] . "' class='btn btn-primary'><i class=\"fa-solid fa-gear\"></i></i></i> </a>
                </td>";
                }
                echo "</tr>";
                ?>
                <script>
                    function toggleDescription(button) {
                        var row = button.closest('tr');
                        var shortDescription = row.querySelector('.short-description');
                        var fullDescription = row.querySelector('.full-description');

                        if (shortDescription.style.display === 'none') {
                            shortDescription.style.display = 'inline';
                            fullDescription.style.display = 'none';
                            button.innerText = 'أكثر';
                        } else {
                            shortDescription.style.display = 'none';
                            fullDescription.style.display = 'inline';
                            button.innerText = 'أقل';
                        }
                    }
                </script>

                <?php
            }
            echo "</table>";
        } else {
            echo $msgres;
        }
    } else {
        $theMsg = '<div class="alert alert-danger">ليس لديك صلاحية الدخول الى هذا القسم</div>';
        redirectHome($theMsg);
    }
} elseif ($do === 'all_data_agent') {
    if (checkadmin($_SESSION['admin'], $department_id, 2) == 1 ) {
        if (isset($_GET['id']) && is_numeric($_GET['id'])) {
            $car_id = $_GET['id'];
            $ManagerCars = new ManagerCars($con);
            $carDatas = $ManagerCars->getcarById($car_id);
            // $file_number = explode("/", $reservationDatas['file_number']);
            ?>
            <h1 class="input-group-text text-center">بيان تحليل ايراد السيارة <?php echo $carDatas['vehicle_model']; ?> رقم  : <?php echo $carDatas['vehicle_plate_number']; ?>
            </h1>
            <form action="?do=all_data_car&id=<?=$car_id?>" method="post">
                    <div class="row">
                        <div class="form-group form-group-lg col-sm-3">
                            <div class="col-sm-12">
                                <label for="start_date" class="control-label">من تاريخ:</label>
                                <input type="date" name="start_date" class="form-control" value="<?php echo $start_date_default; ?>"
                                    required>
                            </div>
                        </div>
                        <div class="form-group form-group-lg col-sm-3">
                            <div class="col-sm-12">
                                <label for="end_date" class="control-label">الى تاريخ:</label>
                                <input type="date" name="end_date" class="form-control" value="<?php echo $end_date_default; ?>"
                                    required>
                            </div>
                        </div>
                        <div class="form-group form-group-lg col-sm-1">
                            <div class="col-sm-12">
                                <label></label>
                                <button type="submit" class="btn btn-primary form-control" name="view_cars">بحث</button>
                            </div>
                        </div>
                        <div class="form-group form-group-lg col-sm-1">
                            
                        </div>
                    </div>
                </form>
            <a href="?do=add_exp&id=<?=$car_id?>" class="btn btn-primary">
                <i class="fa fa-plus"></i> إضافة مصاريف
            </a>
            <a href="?do=add_rev&id=<?=$car_id?>" class="btn btn-primary">
                <i class="fa fa-plus"></i> أمر تشغيل جديد
            </a>
            <br>
            <?php
            if ($carDatas != null) {
                if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['view_cars'])) {
                    $start_date = $_POST['start_date'];
                    $end_date = $_POST['end_date'];
                    $carrevenues = $ManagerCars->getRecordsByIdCar($car_id, 5, $start_date, $end_date);
                    $carexpenses = $ManagerCars->getRecordsByIdCar($car_id, 4);
                } else {
                    /* $start_date = $start_date_default;
                    $end_date = $end_date_default; */
                    $carrevenues = $ManagerCars->getRecordsByIdCar($car_id, 5);
                    $carexpenses = $ManagerCars->getRecordsByIdCar($car_id, 4);
                }
                ?>
                <h1 class="input-group-text text-center">بيان تحليل ايراد السيارة
                </h1>
                <br>
                <?php
                echo "<table class='main-table text-center table table-bordered'>";
                echo "<tr>
                        <td>التاريخ</td>
                        <td>البيان</td>
                        <td>الشركة المستأجرة</td>
                        <td>اسم السائق</td>
                        <td>المبلغ</td>
                    </tr>";
                    $allrevamountUSD = 0;
                    foreach ($carrevenues as $carrevenue) {
                        $allrevamountUSD += $carrevenue['amountUSD'];
                        echo "<tr>
                            <td>{$carrevenue['date_operation']}</td>
                            <td>{$carrevenue['payan']}</td>
                            <td>{$carrevenue['id_operator']}</td>
                            <td>{$carrevenue['driver_name']}</td>
                            <td>\${$carrevenue['amountUSD']}</td>";
                        echo "</tr>";
                    }
                    $allrevamountUSD = (strpos($allrevamountUSD, '.') !== false) ? rtrim($allrevamountUSD, '0') : $allrevamountUSD . '.00';
                    echo "<tr>
                        <td>الإجمالى</td>
                        <td></td>
                        <td></td>
                        <td></td>
                        <td>\${$allrevamountUSD}</td>";
                    echo "</tr>";
                echo "</table>";
                ?>
                <h1 class="input-group-text text-center">بيان مصاريف السيارة
            </h1>
            <br>
            <?php
                echo "<table class='main-table text-center table table-bordered'>";
                echo "<tr>
                        <td>التاريخ</td>
                        <td>البيان</td>
                        <td>البند</td>
                        <td>السائق</td>
                        <td>المبلغ</td>
                    </tr>";
                $allexpamountUSD = 0;
                foreach ($carexpenses as $carexpense) {
                    $allexpamountUSD += $carexpense['amountUSD'];
                    echo "<tr>
                        <td>{$carexpense['date_operation']}</td>
                        <td>{$carexpense['payan']}</td>
                        <td>{$carexpense['id_operator']}</td>
                        <td>{$carexpense['driver_name']}</td>
                        <td>\${$carexpense['amountUSD']}</td>";
                    echo "</tr>";
                }
                $allexpamountUSD = (strpos($allexpamountUSD, '.') !== false) ? rtrim($allexpamountUSD, '0') : $allexpamountUSD . '.00';
                echo "<tr>
                        <td>الإجمالى</td>
                        <td></td>
                        <td></td>
                        <td></td>
                        <td>\${$allexpamountUSD}</td>";
                    echo "</tr>";
                echo "</table>";
            } else {
                // رسالة خطأ أو إعادة توجيه إلى صفحة خطأ
                echo "خطأ: لا يوجد سيارة بهذا الرقم.";
                exit;
            }
        } else {
            // رسالة خطأ أو إعادة توجيه إلى صفحة خطأ
            echo "خطأ: يجب تحديد رقم السيارة.";
            exit;
        }
    } else {
        $theMsg = '<div class="alert alert-danger">ليس لديك صلاحية الدخول الى هذا القسم</div>';
        redirectHome($theMsg);
    }
} elseif ($do === 'all_drivers') {
    if (checkadmin($_SESSION['admin'], $department_id, 2) == 1 ) {
        ?>
        <h1 class="input-group-text text-center">عرض بيانات السيارات</h1>
        <form action="?do=all_file" method="post">
            <div class="row">
                
                <div class="form-group form-group-lg col-sm-1">
                </div>
                <div class="form-group form-group-lg col-sm-3">
                    <label></label>
                    <a href="?do=add" class="btn btn-warning form-control">
                        <i class="fa-solid fa-bus fa-xl"></i> إضافة سيارة جديد
                    </a>
                </div>
            </div>
        </form>
        <br>
        <?php
        $ManagerCars = new ManagerCars($con);
        
            $cars = $ManagerCars->getAll();
            $msgres = "No reservations found.";
        
        if (!empty($cars)) {
            echo "<table class='main-table text-center table table-bordered'>";
            echo "<tr>
                <td>اسم السيارة</td>
                <td>رقم السيارة</td>
                <td>سعة السيارة</td>
                <td>Control</td>
            </tr>";
            foreach ($cars as $car) {
                echo "<tr>
                    <td>{$car['vehicle_model']}</td>
                    <td>{$car['vehicle_plate_number']}</td>
                    <td>{$car['seating_capacity']} <i class='fa-solid fa-users-between-lines fa-xl'></i></td>";
                if ( checkadmin($_SESSION['admin'], $department_id, 2) == 1 ) {
                    echo "<td>
                    <a href='?do=all_data_car&id=" . $car['ID'] . "' class='btn btn-primary'><i class=\"fa-solid fa-gear\"></i></i></i> </a>
                    <a href='?do=edit&id=" . $car['ID'] . "' class='btn btn-success'><i class=\"fa-solid fa-user-pen\"></i></i> </a>
                    <a href='?do=delete&id=" . $car['ID'] . "' class='btn btn-danger confirm'><i class='fa-solid fa-user-xmark'></i></i> </a>
                </td>";
                }
                echo "</tr>";
            }
            echo "</table>";
        } else {
            echo $msgres;
        }
    } else {
        $theMsg = '<div class="alert alert-danger">ليس لديك صلاحية الدخول الى هذا القسم</div>';
        redirectHome($theMsg);
    }
} elseif ($do === 'insert_in_car') {
    // معالجة إضافة الحجز الجديد
    if ($_SERVER['REQUEST_METHOD'] === 'POST') {
        
    }
} elseif ($do === 'add_driver') {
    if (checkadmin($_SESSION['admin'], $department_id, 3) == 1 ) {
        ?>
        <div class="container mt-5">
            <div class="card">
                <div class="card-header">
                    <h3 class="card-title">إضافة سائق <i class="fa-solid fa-bus"></i></h3>
                </div>
                <div class="card-body">
                    <form action="?do=insert_driver" method="post">
                        <div class="row">
                            <div class="col-md-3 mb-3">
                                <div class="form-floating">
                                    <input type="text" name="name_driver" class="form-control" placeholder="<?= $lang['name_driver'] ?>">
                                    <label for="name_driver" class="form-label"><?= $lang['name_driver'] ?></label>
                                </div>
                            </div>
                            <div class="col-md-2 mb-3">
                                <div class="form-floating">
                                    <input type="text" name="num_driver" class="form-control" placeholder="رقم الرخصة ?>">
                                    <label for="num_driver" class="form-label">رقم الرخصة</label>
                                </div>
                            </div>
                            <div class="col-md-2 mb-3">
                                <div class="form-floating">
                                    <input type="text" name="phone" class="form-control" placeholder="رقم الهاتف">
                                    <label for="phone" class="form-label">رقم الهاتف</label>
                                </div>
                            </div>
                            <div class="col-md-3 mb-3">
                                <div class="form-floating">
                                    <select name="car_id" class="form-select" required>
                                        <?php
                                        // Query to retrieve agents from the agents table
                                        $agentsQuery = "SELECT * FROM vehicles";
                                        $agentsResult = $con->query($agentsQuery);
                                        echo "<option value=''>اختر السيارة</option>";
                                        while ($agent = $agentsResult->fetch(PDO::FETCH_ASSOC)) {
                                            echo "<option value='{$agent['ID']}'>{$agent['vehicle_model']} - {$agent['vehicle_plate_number']}</option>";
                                        }
                                        ?>
                                    </select>
                                    <label for="car_id" class="form-label">السيارة:</label>
                                </div>
                            </div>
                            <div class="col-md-2 mb-3">
                                <br>
                                <button type="submit" class="btn btn-primary" name="add_driver">Add Driver</button>
                            </div>
                        </div>
                    </form>
                </div>
            </div>
        </div>
        <?php
    } else {
        echo '<div class="alert alert-danger">ليس لديك صلاحية الدخول الى هذا القسم</div>';
    }
} elseif ($do === 'insert_driver') {
    // معالجة إضافة السيارة الجديد
    if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['add_driver'])) {
        
        $ManagerCars = new ManagerCars($con);
        // استلام البيانات من الفورم
        $name_driver            = $_POST['name_driver'];
        $num_driver             = $_POST['num_driver'];
        $phone                  = $_POST['phone'];
        $car_id                 = $_POST['car_id'];
        // يمكنك إجراء عمليات التحقق هنا
        $formErrors = array();
        if (empty($name_driver)) {
            $formErrors[] = 'لا يجب أن يكون إسم السائق  <strong>فارغ</strong>';
        }
        if (empty($num_driver)) {
            $formErrors[] = 'لا يجب أن يكون رقم الرخصة <strong>فارغ</strong>';
        }
        if (empty($car_id)) {
            $formErrors[] = 'برجا إختر <strong>السيارة</strong>';
        }
        // Loop Into Errors Array And Echo It
        foreach ($formErrors as $error) {
            echo '<div class="alert alert-danger">' . $error . '</div>';
        }
        if (empty($formErrors)) {
            try {
                $result = $ManagerCars->addDriver($name_driver, $num_driver, $phone, $car_id);

                if ($result) {
                    $theMsg = "تمت إضافة السائق بنجاح!";
                    redirectlink($theMsg, $url = "cars?do=all_drivers", $name = "عرض السائقين", $seconds = 0);
                } else {
                    echo "حدث خطأ أثناء إضافة السيارة.";
                }
            } catch (PDOException $e) {
                echo "حدث خطأ فى السيرفر أثناء إضافة السيارة: " . $e->getMessage();
            }
        }
    }
} else {
    $theMsg = '<div class="alert alert-danger">ليس لديك صلاحية الدخول الى هذا القسم</div>';
    redirectHome($theMsg);
}

include $tpl . 'footer.php';
?>