public function executeEditAll() { $curr_id = $this->getRequestParameter('curr_id'); $curr = CurriculumPeer::retrieveByPK($curr_id); $this->forward404Unless($curr); // get subjects list $depts = $curr->getDepartment()->getIdRecurs(); $depts = explode(',', $depts); $c = new Criteria(); $c->add(SubjectPeer::DEPARTMENT_ID, $depts, Criteria::IN); $c->addAscendingOrderByColumn(SubjectPeer::NAME); $subjects = array(); foreach (SubjectPeer::doSelect($c) as $s) { $subjects[$s->getId()] = $s->toString(); } $selected = array(); $subject_currs = $curr->getSubjectCurrs(); foreach ($subject_currs as $sc) { $selected[] = $sc->getSubjectId(); } $actions = array(array('name' => 'save', 'type' => 'submit', 'options' => array('class' => 'save_button', 'onclick' => "action_type.value=this.value"))); array_push($actions, array('name' => 'cancel', 'url' => 'subject_curr/list?curr_id=' . $curr_id, 'color' => 'white')); $this->subtitle = $curr->toString(); $this->type = 'edit'; $this->curr = $curr; $this->subjects = $subjects; $this->selected = $selected; $this->actions = $actions; }
public function getSubjects($criteria = null, $con = null) { include_once 'lib/model/om/BaseSubjectPeer.php'; if ($criteria === null) { $criteria = new Criteria(); } elseif ($criteria instanceof Criteria) { $criteria = clone $criteria; } if ($this->collSubjects === null) { if ($this->isNew()) { $this->collSubjects = array(); } else { $criteria->add(SubjectPeer::DEPARTMENT_ID, $this->getId()); SubjectPeer::addSelectColumns($criteria); $this->collSubjects = SubjectPeer::doSelect($criteria, $con); } } else { if (!$this->isNew()) { $criteria->add(SubjectPeer::DEPARTMENT_ID, $this->getId()); SubjectPeer::addSelectColumns($criteria); if (!isset($this->lastSubjectCriteria) || !$this->lastSubjectCriteria->equals($criteria)) { $this->collSubjects = SubjectPeer::doSelect($criteria, $con); } } } $this->lastSubjectCriteria = $criteria; return $this->collSubjects; }
public static function doSelectByAccalFromStudent() { $student_id = sfContext::getInstance()->getRequest()->getParameter('student_id'); $student_table = StudentPeer::retrieveByPK($student_id); $student = StudentPeer::retrieveByPK($student_id); if ($student == null) { return array(); } $accal = $student->getAcademicCalendarId(); $c = new Criteria(); $c->add(SubjectAccalPeer::ACADEMIC_CALENDAR_ID, $accal, Criteria::IN); $c->addJoin(SubjectAccalPeer::SUBJECT_ID, SubjectPeer::ID); $c->addAscendingOrderByColumn(SubjectPeer::NAME); return SubjectPeer::doSelect($c); }
public function executeGetList() { $depts = sfContext::getInstance()->getUser()->getAttribute('department', null, 'bo'); if ($this->hasRequestParameter('subject_name') && $this->getRequestParameter('subject_name') != '') { $name = $this->getRequestParameter('subject_name'); $c = new Criteria(); #$c->add(SubjectPeer::NAME, "%$name%", Criteria::LIKE); $cton1 = $c->getNewCriterion(SubjectPeer::NAME, '%$name%', Criteria::LIKE); $cton2 = $c->getNewCriterion(SubjectPeer::CODE, '%$name%', Criteria::LIKE); $cton1->addOr($cton2); $c->add($cton1); $c->add(SubjectPeer::DEPARTMENT_ID, $depts->getIdRecurs(), Criteria::IN); $this->rows = SubjectPeer::doSelect($c); } }
public function executeListSubject() { $emp_id = $this->getRequestParameter('employee_id'); $emp = EmployeePeer::retrieveByPK($emp_id); $this->forward404Unless($emp); $this->employee = $emp; $c = new Criteria(); $c->add(TeachingCompetencyPeer::EMPLOYEE_ID, $emp_id); $c->add(TeachingCompetencyPeer::SUBJECT_ID, SubjectPeer::ID); $objs = SubjectPeer::doSelect($c); $subject_ids = array(); foreach ($objs as $o) { $subject_ids[$o->getId()] = $o->toString(); } $depts = $emp->getDepartment()->getIdRecurs(); $depts = explode(',', $depts); $c = new Criteria(); $c->add(SubjectPeer::DEPARTMENT_ID, $depts, Criteria::IN); #$c->add(SubjectPeer::ID, $subject_ids, Criteria::NOT_IN); #$c->addJoin(TeachingCompetencyPeer::EMPLOYEE_ID, EmployeePeer::ID); #$c->addJoin(TeachingCompetencyPeer::SUBJECT_ID, SubjectPeer::ID); $c->addJoin(SubjectCurrPeer::SUBJECT_ID, SubjectPeer::ID); $c->addAscendingOrderByColumn(SubjectPeer::NAME); $this->sortSubject($c); if ($this->getRequest()->hasParameter('filters')) { $filters = $this->getRequestParameter('filters'); if ($filters == 'clear') { $this->filters = null; } else { $defined_filter = false; foreach ($filters as $f) { if (is_array($f)) { if (strlen($f['from']) > 0 || strlen($f['to']) > 0) { $defined_filter = true; break; } } else { if ($f != null && $f != '') { $defined_filter = true; break; } } } if ($defined_filter) { $this->filters = $filters; $this->filterSubject($c, $this->getRequestParameter('filters')); } } } $rpp = $this->getRequestParameter('max_per_page', $this->getUser()->getAttribute('max_per_page', ParamsPeer::retrieveByCode('row_per_page')->getValue(), 'subject')); $this->getUser()->setAttribute('max_per_page', $rpp, 'subject'); $pager = new sfPropelPager('Subject', $rpp); $pager->setCriteria($c); $page = $this->getRequestParameter('page', $this->getUser()->getAttribute('page', 1, 'subject')); $this->getUser()->setAttribute('page', $page, 'subject'); $pager->setPage($page); $pager->init(); $this->pager = $pager; $actions2 = array(array('name' => 'filter', 'color' => 'white')); $this->actions2 = $actions2; }
public static function retrieveByPKs($pks, $con = null) { if ($con === null) { $con = Propel::getConnection(self::DATABASE_NAME); } $objs = null; if (empty($pks)) { $objs = array(); } else { $criteria = new Criteria(); $criteria->add(SubjectPeer::ID, $pks, Criteria::IN); $objs = SubjectPeer::doSelect($criteria, $con); } return $objs; }