Esempio n. 1
0
 public function executeShowStudent()
 {
     $group_id = $this->getContext()->getUser()->getAttribute('group_id', null, 'bo');
     $c = new Criteria();
     $c->add(JobPeer::CODE, $this->getModuleName());
     $job = JobPeer::doSelectOne($c);
     $acl = AclPeer::retrieveByPK($group_id, $job->getId());
     if (!$acl) {
         $this->forward('default', 'error404');
     }
     $subject_accal = SubjectAccalPeer::retrieveByPk($this->getRequestParameter('id'));
     $this->forward404Unless($subject_accal);
     $this->subtitle = $subject_accal->toString() . ' - id:' . $subject_accal->getId();
     $actions = array();
     $this->subject_accal = $subject_accal;
     $this->actions = $actions;
 }
Esempio n. 2
0
 public function executeDelete()
 {
     $accal_id = $this->getRequestParameter('accal_id');
     $accal = AcademicCalendarPeer::retrieveByPK($accal_id);
     $this->forward404Unless($accal);
     $this->accal = $accal;
     $subject_accal = SubjectAccalPeer::retrieveByPk($this->getRequestParameter('id'));
     $this->forward404Unless($subject_accal);
     $ref_error = 0;
     foreach ($subject_accal->getRefCountMethods() as $ref) {
         $method = "count" . $ref['affix'];
         $count = $subject_accal->{$method}();
         if ($count > 0) {
             ++$ref_error;
             $this->getRequest()->setError('subject_accal_l/delete/' . sfInflector::camelize($ref['table']), $count);
         }
     }
     if ($ref_error > 0) {
         $this->getRequest()->setError('subject_accal_l/delete', '_ERR_DELETE_ (' . $subject_accal->toString() . ' - id:' . $subject_accal->getId() . ')');
     } else {
         $subject_accal->delete();
     }
     $this->getRequest()->setParameter('accal_id', $accal_id);
     return $this->forward('subject_accal_l', 'list');
 }
Esempio n. 3
0
 public function executeSave()
 {
     $subject = SubjectPeer::retrieveByPk($this->getRequestParameter('id'));
     $this->forward404Unless($subject);
     $subject->setId($this->getRequestParameter('id'));
     $subject->setCode($this->getRequestParameter('code'));
     $subject->setName($this->getRequestParameter('name'));
     $subject->setCredit($this->getRequestParameter('credit'));
     $subject->setSubjectGroupId($this->getRequestParameter('subject_group_id'));
     $subject->setDepartmentId($this->getRequestParameter('department_id'));
     $subject->save();
     $subject_accal = SubjectAccalPeer::retrieveByPk($this->getRequestParameter('subject_accal_id'));
     $this->forward404Unless($subject_accal);
     #$c = new Criteria()
     #$c->add(SubjectAccalPeer::SUBJECT_ID, $this->getRequestParameter('id'));
     #$subject_accal = SubjectAccalPeer::doSelectOne($c);
     #$subject_accal->setId('subject_accal_id');
     $subject_accal->setSubject($subject);
     $subject_accal->setAcademicCalendarId($this->getRequestParameter('academic_calendar_id'));
     $subject_accal->setEmployeeId($this->getRequestParameter('employee_id'));
     $subject_accal->save();
     return $this->redirect('subject/list');
 }
Esempio n. 4
0
 public function executeDeleteSubject()
 {
     $subject_accal = SubjectAccalPeer::retrieveByPk($this->getRequestParameter('id'));
     $this->forward404Unless($subject_accal);
     $subject_accal->delete();
     return $this->redirect('academic_calendar/list');
 }
Esempio n. 5
0
 public function executeUpdate()
 {
     $i18n = new sfI18N();
     $i18n->initialize($this->getContext());
     $i18n->setCulture($this->getUser()->getCulture());
     $action_i18n = $i18n->globalMessageFormat->format('save as new');
     $action_type = $this->getRequestParameter('action_type');
     if ($action_type == $action_i18n || !$this->getRequestParameter('id')) {
         $subject = new Subject();
         $subject->setCode($this->getRequestParameter('code'));
         $subject->setName($this->getRequestParameter('name'));
         $subject->setCredit($this->getRequestParameter('credit'));
         $subject->setSubjectGroupId($this->getRequestParameter('subject_group_id'));
         $subject->setDepartmentId($this->getRequestParameter('department_id'));
         $subject->save();
         $subject_curr = new SubjectCurr();
         $subject_curr->setSubject($subject);
         $subject_curr->setCurriculumId($this->getRequestParameter('curriculum_id'));
         $subject_curr->save();
         if ($this->hasRequestParameter('academic_calendar_id') && $this->getRequestParameter('academic_calendar_id') != null && $this->getRequestParameter('academic_calendar_id') != '') {
             $subject_accal = new SubjectAccal();
             $subject_accal->setSubject($subject);
             $subject_accal->setAcademicCalendarId($this->getRequestParameter('academic_calendar_id'));
             $subject_accal->setEmployeeId($this->getRequestParameter('employee_id'));
             $subject_accal->save();
             $subject_accal_lector = new SubjectAccalLector();
             $subject_accal_lector->setSubjectAccal($subject_accal);
             $subject_accal_lector->setEmployeeId($this->getRequestParameter('employee_id'));
             $subject_accal_lector->save();
         } else {
             $c = new Criteria();
             $c->add(AcademicCalendarPeer::CURRICULUM_ID, $this->getRequestParameter('curriculum_id'));
             $currs = AcademicCalendarPeer::doSelect($c);
             foreach ($currs as $curr) {
                 $subject_accal = new SubjectAccal();
                 $subject_accal->setSubject($subject);
                 $subject_accal->setAcademicCalendarId($curr->getId());
                 $subject_accal->setEmployeeId($this->getRequestParameter('employee_id'));
                 $subject_accal->save();
                 $subject_accal_lector = new SubjectAccalLector();
                 $subject_accal_lector->setSubjectAccal($subject_accal);
                 $subject_accal_lector->setEmployeeId($this->getRequestParameter('employee_id'));
                 $subject_accal_lector->save();
             }
         }
     } else {
         $subject = SubjectPeer::retrieveByPk($this->getRequestParameter('id'));
         $this->forward404Unless($subject);
         $subject->setId($this->getRequestParameter('id'));
         $subject->setCode($this->getRequestParameter('code'));
         $subject->setName($this->getRequestParameter('name'));
         $subject->setCredit($this->getRequestParameter('credit'));
         $subject->setSubjectGroupId($this->getRequestParameter('subject_group_id'));
         $subject->setDepartmentId($this->getRequestParameter('department_id'));
         $subject->save();
         if ($this->hasRequestParameter('subject_curr_id') && $this->getRequestParameter('subject_curr_id') != null && $this->getRequestParameter('subject_curr_id') != '') {
             $subject_curr = SubjectCurrPeer::retrieveByPk($this->getRequestParameter('subject_curr_id'));
             $this->forward404Unless($subject_curr);
             $subject_curr->setId($this->getRequestParameter('subject_curr_id'));
             $subject_curr->setSubject($subject);
             $subject_curr->setCurriculumId($this->getRequestParameter('curriculum_id'));
             $subject_curr->save();
         } else {
             $subject_curr = new SubjectCurr();
             $subject_curr->setSubject($subject);
             $subject_curr->setCurriculumId($this->getRequestParameter('curriculum_id'));
             $subject_curr->save();
         }
         if ($this->hasRequestParameter('subject_accal_id') && $this->getRequestParameter('subject_accal_id') != null && $this->getRequestParameter('subject_accal_id') != '') {
             $subject_accal = SubjectAccalPeer::retrieveByPk($this->getRequestParameter('subject_accal_id'));
             $this->forward404Unless($subject_accal);
             $subject_accal->setId('subject_accal_id');
             $subject_accal->setSubject($subject);
             $subject_accal->setAcademicCalendarId($this->getRequestParameter('academic_calendar_id'));
             $subject_accal->setEmployeeId($this->getRequestParameter('employee_id'));
             $subject_accal->save();
         } else {
             $c = new Criteria();
             $c->add(AcademicCalendarPeer::CURRICULUM_ID, $this->getRequestParameter('curriculum_id'));
             $currs = AcademicCalendarPeer::doSelect($c);
             foreach ($currs as $curr) {
                 $subject_accal = new SubjectAccal();
                 $subject_accal->setSubject($subject);
                 $subject_accal->setAcademicCalendarId($curr->getId());
                 $subject_accal->setEmployeeId($this->getRequestParameter('employee_id'));
                 $subject_accal->save();
                 $subject_accal_lector = new SubjectAccalLector();
                 $subject_accal_lector->setSubjectAccal($subject_accal);
                 $subject_accal_lector->setEmployeeId($this->getRequestParameter('employee_id'));
                 $subject_accal_lector->save();
             }
         }
     }
     return $this->redirect('subject/list');
 }