Esempio n. 1
0
 public function executeUpdateTK()
 {
     $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');
     $course_schedule = CourseSchedulePeer::retrieveByPk($this->getRequestParameter('id'));
     $this->forward404Unless($course_schedule);
     $course_schedule->setId($this->getRequestParameter('id'));
     $course_schedule->setClassGroupId($this->getRequestParameter('class_group_id'));
     $course_schedule->setAcademicCalendarId($this->getRequestParameter('academic_calendar_id'));
     $course_schedule->setSubjectCurrId($this->getRequestParameter('subject_curr_id'));
     $course_schedule->setName($this->getRequestParameter('name'));
     $course_schedule->save();
     if ($this->getRequestParameter('class_session_id')) {
         $cw = new Criteria();
         $cw->add(CourseScheduleDetailPeer::COURSE_SCHEDULE_ID, $course_schedule->getId());
         $cs_detail = CourseScheduleDetailPeer::doSelectOne($cw);
         $cs_detail->setCourseSchedule($course_schedule);
         $cs_detail->setClassSessionId($this->getRequestParameter('class_session_id'));
         $cs_detail->setLocationId($this->getRequestParameter('location_id'));
         $cs_detail->save();
     }
     $c = new Criteria();
     $c->add(CourseScheduleTutorPeer::COURSE_SCHEDULE_ID, $course_schedule->getId());
     CourseScheduleTutorPeer::doDelete($c);
     $tutors = $this->getRequestParameter('isSelected');
     if ($tutors) {
         foreach ($tutors as $id) {
             $cr = new CourseScheduleTutor();
             $cr->setCourseSchedule($course_schedule);
             $cr->setEmployeeId($id);
             $cr->save();
         }
     }
     return $this->redirect('course_sched/listTK');
 }
Esempio n. 2
0
			<?php 
if ($pager->getNbResults() < 1) {
    ?>
				<tr class="list"><td colspan="100"><div class="no_record"><?php 
    echo __('No record found');
    ?>
</div></td></tr>
			<?php 
} else {
    ?>
				<?php 
    $i = 0;
    foreach ($pager->getResults() as $course_schedule) {
        $c = new Criteria();
        $c->add(CourseScheduleDetailPeer::COURSE_SCHEDULE_ID, $course_schedule->getId());
        $cs_detail = CourseScheduleDetailPeer::doSelectOne($c);
        ?>
					<tr class="list<?php 
        ++$i;
        if ($i % 2 == 0) {
            echo ' even';
        }
        ?>
">
                                                                                                                <td style="vertical-align: middle;"><?php 
        echo $i + ($pager->getPage() - 1) * $pager->getMaxPerPage();
        ?>
</td>

						<td class='first' style="vertical-align: middle;">
						<?php 
Esempio n. 3
0
 public function executeEdit()
 {
     $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');
     }
     $this->can_add = $acl->getAddPriv() == 1;
     $this->can_edit = $acl->getEditPriv() == 1;
     $this->can_remove = $acl->getRemovePriv() == 1;
     $c = new Criteria();
     $c->add(VCoursePeer::ID, $this->getRequestParameter('id'));
     $c_schedule = VCoursePeer::doSelectOne($c);
     $this->forward404Unless($c_schedule);
     $cw = new Criteria();
     $cw->add(CourseScheduleDetailPeer::ID, $c_schedule->getId());
     $csd = CourseScheduleDetailPeer::doSelectOne($c);
     $c = new Criteria();
     $c->add(CourseSchedulePeer::ACADEMIC_CALENDAR_ID, $c_schedule->getAcademicCalendarId());
     $c->add(CourseSchedulePeer::CLASS_GROUP_ID, $c_schedule->getClassGroupId());
     $c->add(CourseSchedulePeer::SUBJECT_CURR_ID, $c_schedule->getSubjectCurrId());
     $course_schedule = CourseSchedulePeer::doSelectOne($c);
     #$course_schedule = CourseSchedulePeer::retrieveByPK($csd->getCourseScheduleId());
     #$this->forward404Unless($course_schedule);
     $this->subtitle = $c_schedule->getClassGroup()->getName() . ' - ' . $c_schedule->getSubjectCurr()->getSubject()->getName() . ' (id:' . $c_schedule->getId() . ')';
     $actions = array(array('name' => 'save', 'type' => 'submit', 'options' => array('class' => 'save_button', 'onclick' => "action_type.value=this.value")));
     if ($acl->getRemovePriv()) {
         array_push($actions, array('name' => 'delete', 'url' => 'course_schedule/delete?id=' . $c_schedule->getId(), 'color' => 'red'));
     }
     array_push($actions, array('name' => 'cancel', 'url' => 'course_schedule/list', 'color' => 'black'));
     $this->type = 'edit';
     $this->course_schedule = $course_schedule;
     $this->c_schedule = $c_schedule;
     $this->actions = $actions;
     $curr = CurriculumPeer::retrieveByPK($c_schedule->getSubjectCurr()->getCurriculumId());
     $this->curr = $curr;
     $subject_curriculums = $curr->getSubjectCurrs();
     $subject_ids = array();
     foreach ($subject_curriculums as $subject_curriculum) {
         $subject_ids[$subject_curriculum->getSubjectId()] = $subject_curriculum->getSubject()->getName();
     }
     $this->subject_ids = $subject_ids;
     $this->subject_currs = $subject_ids;
     $this->selected_subject_curr = $c_schedule->getSubjectCurr()->getSubjectId();
     $subject_id = $c_schedule->getSubjectCurr()->getSubjectId();
     $c = new Criteria();
     $c->add(CourseScheduleTutorPeer::COURSE_SCHEDULE_ID, $course_schedule->getId());
     $c->addJoin(CourseScheduleTutorPeer::EMPLOYEE_ID, TeachingCompetencyPeer::EMPLOYEE_ID);
     $c->addJoin(TeachingCompetencyPeer::EMPLOYEE_ID, EmployeePeer::ID);
     $objs = EmployeePeer::doSelect($c);
     $employee_ids = array();
     foreach ($objs as $o) {
         $employee_ids[] = $o->getId();
     }
     $c = new Criteria();
     $c->add(TeachingCompetencyPeer::SUBJECT_ID, $subject_id, Criteria::IN);
     $c->add(TeachingCompetencyPeer::EMPLOYEE_ID, $employee_ids, Criteria::NOT_IN);
     $c->addJoin(TeachingCompetencyPeer::EMPLOYEE_ID, EmployeePeer::ID);
     $c->addAscendingOrderByColumn(EmployeePeer::NAME);
     $lectors = EmployeePeer::doSelect($c);
     $this->lectors = $lectors;
     $c = new Criteria();
     $c->add(CourseScheduleDetailPeer::COURSE_SCHEDULE_ID, $course_schedule->getId());
     $c->addDescendingOrderByColumn(CourseScheduleDetailPeer::ID);
     $this->sortDetail($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->filterDetail($c, $this->getRequestParameter('filters'));
             }
         }
     }
     $rpp = $this->getRequestParameter('max_per_page', $this->getUser()->getAttribute('max_per_page', ParamsPeer::retrieveByCode('row_per_page')->getValue(), 'course_schedule_detail'));
     $this->getUser()->setAttribute('max_per_page', $rpp, 'course_schedule_detail');
     $pager = new sfPropelPager('CourseScheduleDetail', $rpp);
     $pager->setCriteria($c);
     $page = $this->getRequestParameter('page', $this->getUser()->getAttribute('page', 1, 'course_schedule_detail'));
     $this->getUser()->setAttribute('page', $page, 'course_schedule_detail');
     $pager->setPage($page);
     $pager->init();
     $this->pager = $pager;
     $actions3 = array(array('name' => 'filter', 'color' => 'white'));
     array_unshift($actions3, array('name' => 'add', 'url' => 'course_schedule/createSchedule2?course_id=' . $course_schedule->getId() . '&vcourse_id=' . $c_schedule->getId(), 'color' => 'black'));
     $this->actions3 = $actions3;
 }