<?php
ob_start();
$pageTitle = 'إدارة الموظفين';
ini_set('serialize_precision', '-1');
include 'init.php';
// use classs\ManagerCars;
/* use src\ManagerCars;
use src\FileManager; */
$do = isset($_GET['do']) ? $_GET['do'] : '';
$department_id = 14;
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">
                                    <input type="text" name="name_ar" class="form-control" placeholder="الاسم">
                                    <label for="name_ar" class="form-label">الاسم كامل</label>
                                </div>
                            </div>
                            <div class="col-md-2 mb-3">
                                <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-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-2 mb-3">
                                <div class="form-floating">
                                <input type="date" class="form-control" id="hire_date" name="hire_date" required>
                                <label for="hire_date">تاريخ التوظيف:</label>
                                </div>
                            </div>
                            <div class="col-md-2 mb-3">
                                <div class="form-floating">
                                    <input type="text" class="form-control" id="job_title" name="job_title" required>
                                    <label for="job_title">المسمى الوظيفى:</label>
                                </div>
                            </div>
                            <div class="col-md-2 mb-3">
                                <div class="form-floating">
                                    <input type="number" class="form-control" id="salary" name="salary" required>
                                    <label for="salary">الراتب:</label>
                                </div>
                            </div>
                            <div class="col-md-3 mb-3">
                                    <div class="form-floating">
                                    <select class="form-control" id="department_id" name="department_id" required>
                                            <?php
                                            // Query to retrieve agents from the agents table
                                            $agentsQuery = "SELECT * FROM department_employees";
                                            $agentsResult = $con->query($agentsQuery);
                                            echo "<option value=''>اختر القسم</option>";
                                            while ($agent = $agentsResult->fetch(PDO::FETCH_ASSOC)) {
                                                echo "<option value='{$agent['ID']}'>{$agent['name_ar']}</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_employee">Add Employee</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_employee'])) {
        
        $full_name = htmlspecialchars($_POST['name_ar']);
        $email = htmlspecialchars($_POST['email']);
        $phone_number = htmlspecialchars($_POST['phone']);
        $hire_date = htmlspecialchars($_POST['hire_date']);
        $job_title = htmlspecialchars($_POST['job_title']);
        $salary = htmlspecialchars($_POST['salary']);
        $department_id = htmlspecialchars($_POST['department_id']);
        // يمكنك إجراء عمليات التحقق هنا
        $formErrors = array();
        if (empty($full_name)) {
            $formErrors[] = 'لا يجب أن يكون الإسم  <strong>فارغ</strong>';
        }
        if (empty($hire_date)) {
            $formErrors[] = 'لا يجب أن يكون تاريخ التوظيف  <strong>فارغ</strong>';
        }
        if (empty($job_title)) {
            $formErrors[] = 'لا يجب أن يكون المسمى الوظيفى <strong>فارغ</strong>';
        }
        if (empty($salary)) {
            $formErrors[] = 'لا يجب أن يكون المرتب <strong>فارغ</strong>';
        }
        if (empty($department_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 {
                // استخدام الحد الأقصى للأمان: التحضير والربط
                $stmt = $con->prepare("INSERT INTO employees (full_name, email, phone_number, hire_date, job_title, salary, id_department_employees) VALUES (?, ?, ?, ?, ?, ?, ?)");
                $result = $stmt->execute([$full_name, $email, $phone_number, $hire_date, $job_title, $salary, $department_id]);

                if ($result) {
                    $theMsg = "تمت إضافة الموظف بنجاح!";
                    redirectlink($theMsg, $url = "employees.php?do=all_employees", $name = "عرض الموظفين", $seconds = 0);
                } else {
                    echo "حدث خطأ أثناء إضافة الموظف.";
                }
            } catch (PDOException $e) {
                echo "حدث خطأ فى السيرفر أثناء إضافة الموظف: " . $e->getMessage();
            }
        }
    }
} elseif ($do === 'all_employees') {
    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
        $sql = "SELECT * FROM employees";
        $stmt = $con->prepare($sql);
        $stmt->execute();
        // جلب البيانات كمصفوفة
        $result = $stmt->fetchAll(PDO::FETCH_ASSOC);
        if (!empty($result)) {
            echo "<table class='main-table text-center table table-bordered'>";
            echo "<tr>
                <td>اسم الموظف</td>
                <td>رقم الهاتف</td>
                <td>البريد الالكترونى</td>
                <td>تاريخ التوظيف</td>
                <td>المسمى الوظيفى</td>
                <td>الراتب</td>
                <td>القسم</td>
            </tr>";
            foreach ($result as $val) {
                $name_employee = getName('department_employees', 'ID', $val['id_department_employees'], 'name_ar');
                echo "<tr>
                    <td>{$val['full_name']}</td>
                    <td>{$val['phone_number']}</td>
                    <td>{$val['email']}</td>
                    <td>{$val['hire_date']}</td>
                    <td>{$val['job_title']}</td>
                    <td>{$val['salary']}</td>
                    <td>{$name_employee}</td>
                    ";
                /* if ( checkadmin($_SESSION['admin'], $department_id, 2) == 1 ) {
                    echo "<td>
                    <a href='?do=all_data_car&id=" . $val['ID'] . "' class='btn btn-primary'><i class=\"fa-solid fa-gear\"></i></i></i> </a>
                    <a href='?do=edit&id=" . $val['ID'] . "' class='btn btn-success'><i class=\"fa-solid fa-user-pen\"></i></i> </a>
                    <a href='?do=delete&id=" . $val['ID'] . "' class='btn btn-danger confirm'><i class='fa-solid fa-user-xmark'></i></i> </a>
                </td>";
                } */
                echo "</tr>";
            }
            echo "</table>";
        } else {
            echo 'لا يوجد بيانات';
        }
    } else {
        $theMsg = '<div class="alert alert-danger">ليس لديك صلاحية الدخول الى هذا القسم</div>';
        redirectHome($theMsg);
    }
} else {
    echo '<div class="alert alert-danger">برجاء إتباع رابط صحيح</div>';
}
include $tpl . 'footer.php';
?>