public function getForm($object = null) { if (is_null($object)) { $object = new CareerSubject(); $object->setCareerId($this->getUser()->getReferenceFor('career')); } return parent::getForm($object); }
public static function retrieveByCareerSubjectAndSchoolYear(CareerSubject $cs, SchoolYear $school_year = null) { if (is_null($school_year)) { $school_year = SchoolYearPeer::retrieveCurrent(); } $c = new Criteria(); $c->add(CareerSchoolYearPeer::CAREER_ID, $cs->getCareerId()); $c->add(CareerSchoolYearPeer::SCHOOL_YEAR_ID, $school_year->getId()); $c->addJoin(CareerSchoolYearPeer::ID, self::CAREER_SCHOOL_YEAR_ID, Criteria::INNER_JOIN); $c->add(self::CAREER_SUBJECT_ID, $cs->getId()); return self::doSelectOne($c); }
/** * Creates career_subject_school_year if the career has already have an instance of career_school_year of the actual school year. * * @param CareerSubject $career_subject * @param PropelPDO $con */ public function updateCareerSubjectSchoolYear(CareerSubject $career_subject, PropelPDO $con) { if ($career_subject->isNew()) { $school_year = SchoolYearPeer::retrieveCurrent(); $career_school_year = CareerSchoolYearPeer::retrieveByCareerAndSchoolYear($career_subject->getCareer(), $school_year); if (!is_null($career_school_year) && !$career_school_year->getIsProcessed()) { $career_subject_school_year = new CareerSubjectSchoolYear(); $career_subject_school_year->setCareerSubjectId($career_subject->getId()); $career_subject_school_year->setCareerSchoolYearId($career_school_year->getId()); $career_subject_school_year->save($con); } } }
protected function doSave($con = null) { $values = $this->getValues(); $optional_career_subject = new CareerSubject(); $optional_career_subject->setSubjectId($values['subject_id']); $optional_career_subject->setIsOption(true); $career_subject = CareerSubjectPeer::retrieveByPK($values['career_subject_id']); $optional_career_subject->setCareerId($career_subject->getCareerId()); $optional_career_subject->setYear($career_subject->getYear()); $optional_career_subject->setSubjectConfigurationId($career_subject->getSubjectConfigurationId()); $optional_career_subject->setCreditHours($career_subject->getCreditHours()); $this->getObject()->setCareerSubjectRelatedByOptionalCareerSubjectId($optional_career_subject); parent::doSave($con); $career_subject->setHasOptions(true); $career_subject->save($con); }
/** * This method check if the student has approved all the correlatives for the careerSubject. * * @param CareerSubject $career_subject * @param Student $student * @return boolean */ public function canAddEquivalenceFor(CareerSubject $career_subject, Student $student) { foreach ($career_subject->getCorrelativeCareerSubjects() as $cs) { $c = new Criteria(); $c->add(StudentApprovedCareerSubjectPeer::STUDENT_ID, $student->getId()); $c->add(StudentApprovedCareerSubjectPeer::CAREER_SUBJECT_ID, $cs->getId()); if (StudentApprovedCareerSubjectPeer::doCount($c) == 0) { return false; } } return true; }
public function isApprovedCareerSubject(CareerSubject $career_subject, Student $student) { $c = new Criteria(); $c->add(StudentApprovedCareerSubjectPeer::STUDENT_ID, $student->getId()); $c->add(StudentApprovedCareerSubjectPeer::CAREER_SUBJECT_ID, $career_subject->getId()); return StudentApprovedCareerSubjectPeer::doSelectOne($c) ? true : false; }