Skip to content
Snippets Groups Projects
Verified Commit 4c06fda4 authored by Till Glöggler's avatar Till Glöggler
Browse files

fixes #281, improve query, consider aperiodic case as well

parent b837adff
No related branches found
No related tags found
No related merge requests found
...@@ -198,15 +198,31 @@ class Resources_RoomRequestController extends AuthenticatedController ...@@ -198,15 +198,31 @@ class Resources_RoomRequestController extends AuthenticatedController
if ($this->filter['request_periods'] == 'periodic') { if ($this->filter['request_periods'] == 'periodic') {
// get rid of requests for single dates AND requests for multiple single dates // get rid of requests for single dates AND requests for multiple single dates
// also check if there exists cycle dates in case it is a request for the whole seminar
$sql .= " AND resource_requests.termin_id = '' $sql .= " AND resource_requests.termin_id = ''
AND NOT EXISTS AND NOT EXISTS
( (
SELECT * FROM resource_request_appointments SELECT * FROM resource_request_appointments
WHERE resource_request_appointments.request_id = resource_requests.id WHERE resource_request_appointments.request_id = resource_requests.id
)
AND EXISTS (
SELECT * FROM seminar_cycle_dates
WHERE seminar_cycle_dates.seminar_id = resource_requests.course_id
)"; )";
} }
if ($this->filter['request_periods'] == 'aperiodic') { if ($this->filter['request_periods'] == 'aperiodic') {
$sql .= " AND resource_requests.termin_id <> '' "; $sql .= " AND (
resource_requests.termin_id <> ''
OR EXISTS
(
SELECT * FROM resource_request_appointments
WHERE resource_request_appointments.request_id = resource_requests.id
)
OR NOT EXISTS (
SELECT * FROM seminar_cycle_dates
WHERE seminar_cycle_dates.seminar_id = resource_requests.course_id
)
)";
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment