File "read_select.php"
Full path: /home2/santhos2/public_html/bharath-coe.firstmatrix.in.net/api/qp_setters/read_select.php
File size: 1.3 KiB (1334 bytes)
MIME-type: text/x-php
Charset: utf-8
<?php
require_once '../../config/config.php';
try {
// Check if we need to filter by role
$filterByRole = isset($_GET['role']) ? trim($_GET['role']) : '';
if ($filterByRole) {
// Filter by specific role (e.g., 'Supervisor')
$sql = "SELECT DISTINCT s.staff_id, s.first_name, s.last_name
FROM staff s
INNER JOIN staff_roles sr ON s.staff_id = sr.staff_id
INNER JOIN staff_role_types srt ON sr.role_id = srt.role_id
WHERE s.status = 'Active' AND srt.role_name = ?
ORDER BY s.first_name, s.last_name";
$stmt = $pdo->prepare($sql);
$stmt->execute([$filterByRole]);
} else {
// Return all active staff (original behavior)
$sql = "SELECT staff_id, first_name, last_name FROM staff WHERE status = 'Active' ORDER BY first_name, last_name";
$stmt = $pdo->prepare($sql);
$stmt->execute();
}
$data = $stmt->fetchAll(PDO::FETCH_ASSOC);
echo json_encode([
'status' => 'success',
'data' => $data,
'filter' => $filterByRole ?: 'all'
]);
} catch (Exception $e) {
error_log('Read Staff Select Error: ' . $e->getMessage());
echo json_encode([
'status' => 'error',
'message' => $e->getMessage()
]);
}
?>