Refactor department time bookings routes to support department and ID parameters for access checks

This commit is contained in:
Jepp9350
2025-05-27 18:05:33 +02:00
parent 96647c5792
commit 5fb57b88e3
@@ -29,16 +29,17 @@ class departmentTimeBookingsRoute
$user = (new authentication())->get_user();
if ($user) {
$specific_department = null;
if (self::isParametersSet(['department'])) {
self::requireType((int)self::getParameter('department'), self::type_int());
self::requireMinValue((int)self::getParameter('department'), 1);
self::requireSameLength(self::getParameter('department'), (int)self::getParameter('department'));
self::requireDepartmentAccess((int)self::getParameter('department'));
$specific_department = (int)self::getParameter('department');
if (self::isParametersSet(['department']) || self::isParametersSet(['id'])) {
$parameter_name = self::isParametersSet(['department']) ? 'department' : 'id';
self::requireType((int)self::getParameter($parameter_name), self::type_int());
self::requireMinValue((int)self::getParameter($parameter_name), 1);
self::requireSameLength(self::getParameter($parameter_name), (int)self::getParameter($parameter_name));
self::requireDepartmentAccess((int)self::getParameter($parameter_name));
$specific_department = (int)self::getParameter($parameter_name);
// Select the specific department
$department_time_bookings_opening_hours = new department_time_bookings_opening_hours_o();
$department_time_bookings_opening_hours->selectByDepartment(
(int)self::getParameter('department')
(int)self::getParameter($parameter_name)
);
$response->success($department_time_bookings_opening_hours->asArray());
}
@@ -127,12 +128,13 @@ class departmentTimeBookingsRoute
$user = (new authentication())->get_user();
if ($user) {
$specific_department = null;
if (self::isParametersSet(['department'])) {
self::requireType((int)self::getParameter('department'), self::type_int());
self::requireMinValue((int)self::getParameter('department'), 1);
self::requireSameLength(self::getParameter('department'), (int)self::getParameter('department'));
self::requireDepartmentAccess((int)self::getParameter('department'));
$specific_department = (int)self::getParameter('department');
if (self::isParametersSet(['department']) || self::isParametersSet(['id'])) {
$parameter_name = self::isParametersSet(['department']) ? 'department' : 'id';
self::requireType((int)self::getParameter($parameter_name), self::type_int());
self::requireMinValue((int)self::getParameter($parameter_name), 1);
self::requireSameLength(self::getParameter($parameter_name), (int)self::getParameter($parameter_name));
self::requireDepartmentAccess((int)self::getParameter($parameter_name));
$specific_department = (int)self::getParameter($parameter_name);
}
$department_time_bookings_types = new department_time_bookings_types_o();
$result = $department_time_bookings_types->listObjectsWithPaginationIfSet(