Skip to content
Snippets Groups Projects
Commit 5fc88cf5 authored by Elmar Ludwig's avatar Elmar Ludwig Committed by Jan-Hendrik Willms
Browse files

apply chdate filter first (and fix the filter so it actually works), fixes #1779

Closes #1779

Merge request studip/studip!1156
parent c185ff77
No related branches found
No related tags found
No related merge requests found
...@@ -82,7 +82,8 @@ class Course_AdmissionController extends AuthenticatedController ...@@ -82,7 +82,8 @@ class Course_AdmissionController extends AuthenticatedController
$this->activated_admission_rules = AdmissionRule::getAvailableAdmissionRules(); $this->activated_admission_rules = AdmissionRule::getAvailableAdmissionRules();
if (!$this->current_courseset) { if (!$this->current_courseset) {
$available_coursesets = new SimpleCollection(); $available_coursesets = new SimpleCollection();
foreach (CourseSet::getCoursesetsByInstituteId($this->course->institut_id) as $cs) { $filter = ['course_set_chdate' => strtotime('-1 year')];
foreach (CourseSet::getCoursesetsByInstituteId($this->course->institut_id, $filter) as $cs) {
$cs = new CourseSet($cs['set_id']); $cs = new CourseSet($cs['set_id']);
if ($cs->isUserAllowedToAssignCourse($this->user_id, $this->course_id)) { if ($cs->isUserAllowedToAssignCourse($this->user_id, $this->course_id)) {
$available_coursesets[] = ['id' => $cs->getId(), $available_coursesets[] = ['id' => $cs->getId(),
...@@ -91,7 +92,7 @@ class Course_AdmissionController extends AuthenticatedController ...@@ -91,7 +92,7 @@ class Course_AdmissionController extends AuthenticatedController
'my_own' => $cs->getUserId() === $GLOBALS['user']->id]; 'my_own' => $cs->getUserId() === $GLOBALS['user']->id];
} }
} }
foreach (CourseSet::getglobalCoursesets() as $cs) { foreach (CourseSet::getglobalCoursesets($filter) as $cs) {
$cs = new CourseSet($cs['set_id']); $cs = new CourseSet($cs['set_id']);
if ($cs->isUserAllowedToAssignCourse($this->user_id, $this->course_id)) { if ($cs->isUserAllowedToAssignCourse($this->user_id, $this->course_id)) {
$available_coursesets[] = ['id' => $cs->getId(), $available_coursesets[] = ['id' => $cs->getId(),
...@@ -100,7 +101,6 @@ class Course_AdmissionController extends AuthenticatedController ...@@ -100,7 +101,6 @@ class Course_AdmissionController extends AuthenticatedController
'my_own' => $cs->getUserId() === $GLOBALS['user']->id]; 'my_own' => $cs->getUserId() === $GLOBALS['user']->id];
} }
} }
$available_coursesets = $available_coursesets->findBy('chdate', strtotime('-1 year'), '>');
$available_coursesets->orderBy('name'); $available_coursesets->orderBy('name');
$this->available_coursesets = $available_coursesets; $this->available_coursesets = $available_coursesets;
......
...@@ -393,9 +393,9 @@ class CourseSet ...@@ -393,9 +393,9 @@ class CourseSet
$query .= " AND s.start_time = ?"; $query .= " AND s.start_time = ?";
$parameters[] = Semester::find($filter['semester_id'])->beginn; $parameters[] = Semester::find($filter['semester_id'])->beginn;
} }
if ($filter['course_set_chdate']) { if (!empty($filter['course_set_chdate'])) {
$query .= " AND c.chdate < ?"; $query .= " AND c.chdate > ?";
$parameters[] = $filter['chdate']; $parameters[] = $filter['course_set_chdate'];
} }
$query .= " ORDER BY c.name"; $query .= " ORDER BY c.name";
$stmt = DBManager::get()->prepare($query); $stmt = DBManager::get()->prepare($query);
...@@ -432,9 +432,9 @@ class CourseSet ...@@ -432,9 +432,9 @@ class CourseSet
$query .= " AND s.start_time = ?"; $query .= " AND s.start_time = ?";
$parameters[] = Semester::find($filter['semester_id'])->beginn; $parameters[] = Semester::find($filter['semester_id'])->beginn;
} }
if ($filter['course_set_chdate']) { if (!empty($filter['course_set_chdate'])) {
$query .= " AND c.chdate < ?"; $query .= " AND c.chdate > ?";
$parameters[] = $filter['chdate']; $parameters[] = $filter['course_set_chdate'];
} }
$query .= " ORDER BY c.name"; $query .= " ORDER BY c.name";
$stmt = DBManager::get()->prepare($query); $stmt = DBManager::get()->prepare($query);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment