From b18910647219729d95d8998444388891217f7073 Mon Sep 17 00:00:00 2001 From: Tim Steiner <tsteiner2@unl.edu> Date: Fri, 30 Oct 2009 20:13:57 +0000 Subject: [PATCH] When searching for courses that have been removed, include those that have changed course ids as well. --- application/modules/courses/models/CourseModel.php | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/application/modules/courses/models/CourseModel.php b/application/modules/courses/models/CourseModel.php index 3917c242..c0820444 100644 --- a/application/modules/courses/models/CourseModel.php +++ b/application/modules/courses/models/CourseModel.php @@ -543,8 +543,9 @@ class Courses_CourseModel extends Unl_Model $select->join(array('s' => 'creqSubjects'), 'd.departmentId = s.department', array()); $select->join(array('c' => 'creqCourseCodes'), 's.name = c.subject', array()); $select->join(array('x' => 'creqCourseCrosslistings'), 'c.courseCodeId = x.courseCode', array()); - $select->join(array('g' => 'creqCourseGenerations'), 'x.generation = g.courseGenerationId', array('courseGenerationId')); - $select->join(array('p' => 'creqCourses'), 'g.courseGenerationId = p.currentGeneration', array()); + $select->join(array('g' => 'creqCourseGenerations'), 'x.generation = g.courseGenerationId', array()); + $select->join(array('p' => 'creqCourses'), 'g.course = p.courseId', array()); + $select->join(array('g2' => 'creqCourseGenerations'), 'p.currentGeneration = g2.courseGenerationId', array('courseGenerationId')); $select->join(array('e' => 'creqCourseDetails'), 'g.courseGenerationId = e.generation', array()); if (!$includeRemoved) { $select->where('g.removed = "no"'); @@ -586,6 +587,9 @@ class Courses_CourseModel extends Unl_Model if ($criteria['integratedStudies']) { $select->where('c.integratedStudies = ?', 'yes'); } + if (!$includeRemoved) { + $select->where('g.courseGenerationId = g2.courseGenerationId'); + } $records = $select->query()->fetchAll(); if (count($records) == 0) { -- GitLab