uawdijnntqw1x1x1
IP : 216.73.216.110
Hostname : 6.87.74.97.host.secureserver.net
Kernel : Linux 6.87.74.97.host.secureserver.net 4.18.0-553.83.1.el8_10.x86_64 #1 SMP Mon Nov 10 04:22:44 EST 2025 x86_64
Disable Function : None :)
OS : Linux
PATH:
/
home
/
emeraadmin
/
www
/
node_modules
/
lodash.debounce
/
..
/
..
/
4d695
/
report_tasksstatusbyschedule.php.tar
/
/
home/emeraadmin/public_html/pages/taskprovider/report_tasksstatusbyschedule.php000064400000033444151677423170024506 0ustar00<?php include('head.php'); require_once '../../Classes/Database.php'; require_once '../../Service/TaskService.php'; require_once '../../Service/UserService.php'; require_once '../../Service/ServiceService.php'; require_once '../../Classes/System.php'; // Create instances of the required services $taskService = new TaskService(); $UserService = new UserService(); $System = new System(); // Create ServiceService instance $serviceService = new ServiceService(); $services = $serviceService->getAllServicesForDropdown(); // Fetch all schedules for the dropdown $schedules = $taskService->getAllSchedules(); //get schedule id form the url $schedule_id = isset($_GET['schedule_id']) ? $_GET['schedule_id'] : null; // Handle form submission and fetch tasks based on the selected schedule $selectedScheduleId = $System->decryptData($schedule_id); $tasksBySchedule = []; if ($selectedScheduleId) { $tasksBySchedule = $taskService->getTasksBySchedule($selectedScheduleId); } ?> <div class="main-content"> <div class="container-fluid"> <div class="page-header"> <div class="row align-items-end"> <div class="col-lg-8"> <div class="page-header-title"> <i class="ik ik-layers bg-blue"></i> <div class="d-inline"> <h5>View Tasks by Schedule</h5> <span>Select a schedule to view tasks</span> </div> </div> </div> <div class="col-lg-4"> <nav class="breadcrumb-container" aria-label="breadcrumb"> <ol class="breadcrumb"> <li class="breadcrumb-item"> <a href="#"><i class="ik ik-home"></i></a> </li> <li class="breadcrumb-item"> <a href="#">Tasks</a> </li> <li class="breadcrumb-item active" aria-current="page">View Tasks by Schedule</li> </ol> </nav> </div> </div> </div> <!-- Search Form --> <div class="row"> <div class="col-md-12"> <form method="GET" action=""> <div class="form-group"> <label for="schedule_id">Select Schedule:</label> <select name="schedule_id" id="schedule_id" class="form-control"> <option value="">-- Select Schedule --</option> <?php foreach ($schedules as $schedule) { ?> <option value="<?= htmlspecialchars($System->encryptData($schedule->id)); ?>" <?= ($selectedScheduleId == $schedule->id) ? 'selected' : '' ?>> <?= htmlspecialchars($schedule->schedule_name); ?> </option> <?php } ?> </select> </div> <button type="submit" class="btn btn-primary">Search</button> </form> </div> </div> <!-- Display Tasks Table --> <div class="row mt-4"> <div class="col-md-12"> <div class="card"> <div class="card-body"> <div class="dt-responsive"> <div class="row mb-3"> <div class="col-md-2"> <label for="filter_Service_Name" class="form-label">Filter by Service Name:</label> <input type="text" class="form-control" id="filter_Service_Name"> </div> <div class="col-md-2"> <label for="filter_region" class="form-label">Filter by Region:</label> <select class="form-control" id="filter_region"> <option value="">All Regions</option> <?php // Collect unique regions $uniqueRegions = []; foreach ($services as $service) { if (!in_array($service->region, $uniqueRegions)) { $uniqueRegions[] = $service->region; ?> <option value="<?= htmlspecialchars($service->region) ?>"><?= htmlspecialchars($service->region) ?></option> <?php } } ?> </select> </div> <div class="col-md-2"> <label for="filter_status" class="form-label">Filter by Status:</label> <select name="filter_status" id="filter_status" class="form-control"> <option value="">-- Select Status --</option> <option value="Assigned.">Assigned</option> <option value="Not Assigned">Not Assigned</option> </select> </div> <div class="col-md-2"> <label for="filter_finished" class="form-label">Filter by Finished:</label> <select name="filter_finished" id="filter_finished" class="form-control"> <option value="">-- Select Finished --</option> <option value="Finished.">Finished</option> <option value="Not Finished">Not Finished</option> </select> </div> <div class="col-md-3"> <label for="reset_filters" class="form-label"> </label> <button type="button" id="reset_filters" class="btn btn-icon btn-outline-danger"><i class="ik ik-refresh-cw"></i></button> </div> </div> <table class="table" id="tasks_by_schedule_table"> <thead> <tr> <th>ID</th> <th>Service Name</th> <th>Region</th> <th>Status</th> <th>Finished</th> <th>Actions</th> </tr> </thead> <tbody> <?php foreach ($tasksBySchedule as $task) { ?> <tr> <td><?php echo 'TSK-000'.htmlspecialchars($task->id); ?></td> <td><?= htmlspecialchars($task->service_name); ?></td> <td><?= htmlspecialchars($task->region); ?></td> <td> <?= $task->is_assigned && $task->accepted ? '<label class="badge badge-success">Assigned.</label>' : '<label class="badge badge-warning">Not Assigned</label>'; ?> </td> <td><?php echo($task->finished ? '<label class="badge badge-success">Finished.</label>' : '<label class="badge badge-warning">Not Finished</label>'); ?></td> <td> <a href="viewtask.php?id=<?= $System->encryptData($task->id); ?>" class="btn btn-primary">View</a> </td> </tr> <?php } ?> </tbody> </table> <script> $(document).ready(function () { // Initialize DataTable var table = $('#tasks_by_schedule_table').DataTable({ // Configure initial settings if needed }); // Function to save filters to localStorage function saveFilters() { var filters = { serviceName: $('#filter_Service_Name').val(), region: $('#filter_region').val(), status: $('#filter_status').val(), finished: $('#filter_finished').val() }; localStorage.setItem('tasksByScheduleTableFilters', JSON.stringify(filters)); } // Function to apply saved filters function applyFilters() { var filters = JSON.parse(localStorage.getItem('tasksByScheduleTableFilters')); if (filters) { $('#filter_Service_Name').val(filters.serviceName).trigger('keyup'); $('#filter_region').val(filters.region).trigger('change'); $('#filter_status').val(filters.status).trigger('change'); $('#filter_finished').val(filters.finished).trigger('change'); } } // Function to reset filters function resetFilters() { $('#filter_Service_Name').val('').trigger('keyup'); $('#filter_region').val('').trigger('change'); $('#filter_status').val('').trigger('change'); $('#filter_finished').val('').trigger('change'); localStorage.removeItem('tasksByScheduleTableFilters'); table.search('').columns().search('').draw(); } // Check previous page and apply filters if necessary function checkPreviousPage() { var previousUrl = sessionStorage.getItem('previousUrl'); if (!previousUrl || !previousUrl.includes('viewtask.php')) { resetFilters(); } else { applyFilters(); } } checkPreviousPage(); // Add custom filters $('#filter_Service_Name').on('keyup', function () { table.column(1).search(this.value).draw(); saveFilters(); }); $('#filter_region').on('change', function () { table.column(2).search(this.value).draw(); saveFilters(); }); $('#filter_status').on('change', function () { table.column(3).search(this.value).draw(); saveFilters(); }); $('#filter_finished').on('change', function () { table.column(4).search(this.value).draw(); saveFilters(); }); // Add reset filters button functionality $('#reset_filters').on('click', function () { resetFilters(); }); // Apply saved filters on initial load applyFilters(); }); </script> </div> </div> </div> </div> </div> </div> </div> <?php include('footer.php'); ?> <script> $(document).ready(function() { $('#tasks_by_schedule_table').DataTable(); }); </script>
/home/emeraadmin/www/node_modules/lodash.debounce/../../4d695/report_tasksstatusbyschedule.php.tar