42 lines
1.3 KiB
PHP
42 lines
1.3 KiB
PHP
<?php
|
|
require_once __DIR__ . '/../connect.php';
|
|
|
|
// فحص الدور — كان غائباً تماماً بينما شقيقه getComplaintAllData.php يفحصه.
|
|
// مجلد serviceapp خارج بوّابة Admin/ المسارية، فكل ملف يحمي نفسه، وهذا
|
|
// كان مكشوفاً: أي حامل JWT صالح يقدر يغلق أي شكوى ويكتب نص قرارها.
|
|
if ($role !== 'admin' && $role !== 'super_admin') {
|
|
http_response_code(403);
|
|
exit(json_encode([
|
|
'status' => 'failure',
|
|
'message' => 'Forbidden. Support access required.',
|
|
], JSON_UNESCAPED_UNICODE));
|
|
}
|
|
|
|
$id = filterRequest("id");
|
|
$status = filterRequest("statusComplaint");
|
|
$resolution = filterRequest("resolution");
|
|
|
|
if ($id && $status) {
|
|
$sql = "UPDATE `complaint` SET `statusComplaint` = :status, `resolution` = :resolution";
|
|
|
|
if ($status == 'Resolved') {
|
|
$sql .= ", `date_resolved` = CURRENT_TIMESTAMP";
|
|
}
|
|
|
|
$sql .= " WHERE `id` = :id";
|
|
|
|
$stmt = $con->prepare($sql);
|
|
$stmt->bindParam(':status', $status);
|
|
$stmt->bindParam(':resolution', $resolution);
|
|
$stmt->bindParam(':id', $id);
|
|
|
|
if ($stmt->execute()) {
|
|
jsonSuccess(null, "Complaint updated successfully");
|
|
} else {
|
|
jsonError("Failed to update complaint");
|
|
}
|
|
} else {
|
|
jsonError("Missing required fields");
|
|
}
|
|
?>
|