| Current Path : /home/emeraadmin/www/4d695/ |
| Current File : /home/emeraadmin/www/4d695/rejecttask_bulk.php.tar |
home/emeraadmin/public_html/pages/subcontractor/rejecttask_bulk.php 0000644 00000003165 15170146736 0021773 0 ustar 00 <?php
session_start();
require_once '../../Classes/Database.php';
require_once '../../Service/TaskService.php';
require_once '../../Classes/Task.php';
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
if (isset($_POST['taskIds']) && isset($_POST['companyId'])) {
$taskIds = $_POST['taskIds'];
$companyId = $_POST['companyId'];
$taskService = new TaskService();
$errors = [];
foreach ($taskIds as $taskId) {
$task = $taskService->getTaskByIdAsObject($taskId);
if ($task) {
$task->setAssignedTo(null);
$task->setIsAssigned(0);
// Get existing not accepted users
$temp = $task->getNotAcceptedUsers();
$notAcceptedUsers = array_filter(explode(',', $temp));
// Add the new companyId if not already in the list
if (!in_array($companyId, $notAcceptedUsers)) {
$notAcceptedUsers[] = $companyId;
}
// Convert the array back to a string
$task->setNotAcceptedUsers(implode(',', $notAcceptedUsers));
if (!$taskService->rejectTask($task)) {
$errors[] = "Failed to reject task ID: $taskId";
}
} else {
$errors[] = "Task ID: $taskId not found";
}
}
if (empty($errors)) {
echo 'success';
} else {
echo implode(', ', $errors);
}
} else {
echo 'invalid_data';
}
} else {
echo 'invalid_request';
}