コード例 #1
0
ファイル: StudentPeer.php プロジェクト: taryono/school
 public static function retrieveByCode($member_code, $con = null)
 {
     if ($con === null) {
         $con = Propel::getConnection(self::DATABASE_NAME);
     }
     $criteria = new Criteria(StudentPeer::DATABASE_NAME);
     $criteria->add(StudentPeer::CODE, $member_code);
     $v = StudentPeer::doSelect($criteria, $con);
     return !empty($v) > 0 ? $v[0] : null;
 }
コード例 #2
0
 public static function getAvailableStudentsForExaminationRepprovedSubject(ExaminationRepprovedSubject $examination_repproved_subject)
 {
     if ($examination_repproved_subject->getExaminationRepproved()->getExaminationType() == ExaminationRepprovedType::FREE_GRADUATED) {
         $c = self::getFreeGraduatedStudentsCriteria($examination_repproved_subject);
     } else {
         $c = self::getAvailableForExaminationRepprovedSubjectCriteria($examination_repproved_subject);
     }
     $c->addJoin(CourseSubjectStudentPeer::STUDENT_ID, StudentPeer::ID, Criteria::INNER_JOIN);
     return StudentPeer::doSelect($c);
 }
コード例 #3
0
 /**
  * This method returns the students related with this examinationRepprovedSubject
  *
  * @return array Students[]
  */
 public function getStudents()
 {
     $c = new Criteria();
     $c->add(StudentExaminationRepprovedSubjectPeer::EXAMINATION_REPPROVED_SUBJECT_ID, $this->getId());
     $c->addJoin(StudentExaminationRepprovedSubjectPeer::STUDENT_REPPROVED_COURSE_SUBJECT_ID, StudentRepprovedCourseSubjectPeer::ID);
     $c->addJoin(StudentRepprovedCourseSubjectPeer::COURSE_SUBJECT_STUDENT_ID, CourseSubjectStudentPeer::ID);
     $c->addJoin(CourseSubjectStudentPeer::STUDENT_ID, StudentPeer::ID);
     $c->addJoin(StudentPeer::PERSON_ID, PersonPeer::ID);
     $c->addAscendingOrderByColumn(PersonPeer::LASTNAME);
     return StudentPeer::doSelect($c);
 }
コード例 #4
0
ファイル: actions.class.php プロジェクト: nvidela/kimkelen
 protected function buildCriteria()
 {
     if (is_null($this->filters)) {
         $this->filters = $this->configuration->getFilterForm($this->getFilters());
     }
     $criteria = $this->filters->buildCriteria($this->getFilters());
     $event = $this->dispatcher->filter(new sfEvent($this, 'admin.build_criteria'), $criteria);
     $criteria = $event->getReturnValue();
     $deserter_students = StudentPeer::getDeserterStudents();
     $ids = array();
     foreach ($deserter_students as $student) {
         $ids[] = $student->getId();
     }
     $criteria->add(StudentPeer::ID, $ids, Criteria::IN);
     $total_criteria_desertores = count(StudentPeer::doSelect($criteria));
     $total_alumnos = count(StudentPeer::doSelect(new Criteria()));
     $this->getUser()->setAttribute('students_count', $total_criteria_desertores);
     $this->getUser()->setAttribute('students_percentaje', $total_criteria_desertores * 100 / $total_alumnos);
     return $criteria;
 }
コード例 #5
0
 protected function execute($arguments = array(), $options = array())
 {
     // initialize the database connection
     $databaseManager = new sfDatabaseManager($this->configuration);
     $connection = $databaseManager->getDatabase($options['connection'] ? $options['connection'] : null)->getConnection();
     // add your code here
     $this->createContextInstance();
     $i = 0;
     $students = StudentPeer::doSelect(new Criteria());
     $career_school_year = CareerSchoolYearPeer::retrieveByPK(4);
     foreach ($students as $student) {
         $this->logSection("Evaluando student ID = ", $student->getId());
         $career_student = $student->getCareerStudent();
         if ($career_student == null) {
             $this->logSection("ceando CarrerStudent", $student->getId());
             $career_student = new CareerStudent();
             $career_student->setStudent($student);
             $career_student->setCareerId(1);
             $career_student->setStartYear(1);
             $career_student->setFileNumber($student->getGlobalFileNumber());
             $career_student->save($connection);
             #$career_student->createStudentsCareerSubjectAlloweds(1, $connection);
             $this->logSection("Fin creacion careerStudent", $career_student->getId());
         }
         $student_career_school_year = StudentCareerSchoolYearPeer::getCurrentForStudentAndCareerSchoolYear($student, $career_school_year);
         if ($student_career_school_year == null) {
             $i++;
             $this->logSection("Creando studentCareerSchoolYear", $student->getId());
             $student_career_school_year = new StudentCareerSchoolYear();
             $student_career_school_year->setCareerSchoolYear($career_school_year);
             $student_career_school_year->setStudent($student);
             $student_career_school_year->setYear($student->getCareerStudent()->getStartYear());
             $student_career_school_year->save($connection);
             $this->logSection("Fin creacion studentCareerSchoolYear", $career_student->getId());
             $this->logSection("Guardando", $student);
             echo $i;
         }
     }
 }
コード例 #6
0
ファイル: actions.class1.php プロジェクト: taryono/school
 public function executeListFullTryout()
 {
     $employee_id = sfContext::getInstance()->getUser()->getAttribute('user_id', null, 'bo');
     $employee = EmployeePeer::retrieveByPK($employee_id);
     $this->forward404Unless($employee);
     $this->employee_id = $employee_id;
     $this->employee = $employee;
     $counseling = CounselingPeer::retrieveByPk($this->getRequestParameter('counseling_id'));
     $this->forward404Unless($counseling);
     $academic_calendar = AcademicCalendarPeer::retrieveByPk($this->getRequestParameter('accal_id'));
     $this->forward404Unless($academic_calendar);
     $c = new Criteria();
     $c->add(StudentAccalPeer::ACADEMIC_CALENDAR_ID, $academic_calendar->getId());
     $c->add(StudentAccalPeer::CLASS_GROUP_ID, $counseling->getClassGroupId());
     $c->addJoin(StudentPeer::ID, StudentAccalPeer::STUDENT_ID);
     $c->add(StudentPeer::STATUS, 2, Criteria::NOT_EQUAL);
     $c->add(StudentPeer::STATUS, 3, Criteria::NOT_EQUAL);
     $c->addAscendingOrderByColumn(StudentPeer::CLASS_NAME);
     $this->students = StudentPeer::doSelect($c);
     $this->student_count = StudentPeer::doCount($c);
     $rpp = $this->getRequestParameter('max_per_page', 999);
     $pager = new sfPropelPager('Student', $rpp);
     $pager->setCriteria($c);
     $pager->setPage($this->getRequestParameter('page', 1));
     $pager->init();
     $this->pager = $pager;
     $grade_id = $this->getRequestParameter('grade_id');
     $this->grade_id = $grade_id;
     $cr = new Criteria();
     $cr->add(GradeSpecPeer::PARENT, 45, Criteria::IN);
     #$cr->add(GradeSpecPeer::ID, $grade_id, Criteria::NOT_IN);
     $grade1 = GradeSpecPeer::doSelect($cr);
     $count1 = GradeSpecPeer::doCount($cr);
     $this->grade1 = $grade1;
     $this->count1 = $count1;
     $grade_current = GradeSpecPeer::retrieveByPk($grade_id);
     $this->counseling = $counseling;
     $this->academic_calendar = $academic_calendar;
     $this->subtitle = $grade_current->getCode() . ' # ' . $counseling->getClassGroup()->getName() . ' - ' . $academic_calendar->toString();
     #SMP
     if ($academic_calendar->getDepartmentId() == 2) {
         $cw = new Criteria();
         $cw->add(VCoursePeer::CLASS_GROUP_ID, $counseling->getClassGroupId(), Criteria::IN);
         $cw->add(VCoursePeer::ACADEMIC_CALENDAR_ID, $academic_calendar->getId(), Criteria::IN);
         $cton1 = $cw->getNewCriterion(VCoursePeer::SUBJECT_CURR_ID, 350, Criteria::IN);
         $cton2 = $cw->getNewCriterion(VCoursePeer::SUBJECT_CURR_ID, 351, Criteria::IN);
         $cton3 = $cw->getNewCriterion(VCoursePeer::SUBJECT_CURR_ID, 346, Criteria::IN);
         $cton4 = $cw->getNewCriterion(VCoursePeer::SUBJECT_CURR_ID, 339, Criteria::IN);
         $cton5 = $cw->getNewCriterion(VCoursePeer::SUBJECT_CURR_ID, 340, Criteria::IN);
         $cton6 = $cw->getNewCriterion(VCoursePeer::SUBJECT_CURR_ID, 337, Criteria::IN);
         $cton5->addOr($cton6);
         $cton4->addOr($cton5);
         $cton3->addOr($cton4);
         $cton2->addOr($cton3);
         $cton1->addOr($cton2);
         $cw->add($cton1);
         $cw->addAscendingOrderByColumn(VCoursePeer::CODE);
         $this->smp_subjects = VCoursePeer::doSelect($cw);
         $this->smp_count = VCoursePeer::doCount($cw);
         $cd = new Criteria();
         $cd->add(VCoursePeer::CLASS_GROUP_ID, $counseling->getClassGroupId(), Criteria::IN);
         $cd->add(VCoursePeer::ACADEMIC_CALENDAR_ID, $academic_calendar->getId(), Criteria::IN);
         $cton1 = $cd->getNewCriterion(VCoursePeer::SUBJECT_CURR_ID, 352, Criteria::IN);
         $cton2 = $cd->getNewCriterion(VCoursePeer::SUBJECT_CURR_ID, 349, Criteria::IN);
         $cton3 = $cd->getNewCriterion(VCoursePeer::SUBJECT_CURR_ID, 348, Criteria::IN);
         $cton4 = $cd->getNewCriterion(VCoursePeer::SUBJECT_CURR_ID, 341, Criteria::IN);
         $cton5 = $cd->getNewCriterion(VCoursePeer::SUBJECT_CURR_ID, 355, Criteria::IN);
         $cton4->addOr($cton5);
         $cton3->addOr($cton4);
         $cton2->addOr($cton3);
         $cton1->addOr($cton2);
         $cd->add($cton1);
         $cd->addAscendingOrderByColumn(VCoursePeer::CODE);
         $this->smp_subjects2 = VCoursePeer::doSelect($cd);
         $this->smp_count2 = VCoursePeer::doCount($cd);
         $cm = new Criteria();
         $cm->add(VCoursePeer::CLASS_GROUP_ID, $counseling->getClassGroupId(), Criteria::IN);
         $cm->add(VCoursePeer::ACADEMIC_CALENDAR_ID, $academic_calendar->getId(), Criteria::IN);
         $cton1 = $cm->getNewCriterion(VCoursePeer::SUBJECT_CURR_ID, 353, Criteria::IN);
         $cton2 = $cm->getNewCriterion(VCoursePeer::SUBJECT_CURR_ID, 354, Criteria::IN);
         $cton1->addOr($cton2);
         $cm->add($cton1);
         $cm->addAscendingOrderByColumn(VCoursePeer::CODE);
         $this->ipas = VCoursePeer::doSelect($cm);
         $this->ipa_count = VCoursePeer::doCount($cm);
         $cl = new Criteria();
         $cl->add(VCoursePeer::CLASS_GROUP_ID, $counseling->getClassGroupId(), Criteria::IN);
         $cl->add(VCoursePeer::ACADEMIC_CALENDAR_ID, $academic_calendar->getId(), Criteria::IN);
         $cton1 = $cl->getNewCriterion(VCoursePeer::SUBJECT_CURR_ID, 343, Criteria::IN);
         $cton2 = $cl->getNewCriterion(VCoursePeer::SUBJECT_CURR_ID, 338, Criteria::IN);
         $cton3 = $cl->getNewCriterion(VCoursePeer::SUBJECT_CURR_ID, 347, Criteria::IN);
         $cton2->addOr($cton3);
         $cton1->addOr($cton2);
         $cl->add($cton1);
         $cl->addAscendingOrderByColumn(VCoursePeer::CODE);
         $this->ips = VCoursePeer::doSelect($cl);
         $this->ips_count = VCoursePeer::doCount($cl);
         #SD
     } else {
         if ($counseling->getClassGroup()->getParent() == 54) {
             $cw = new Criteria();
             $cw->add(VCoursePeer::CLASS_GROUP_ID, $counseling->getClassGroupId());
             $cw->add(VCoursePeer::ACADEMIC_CALENDAR_ID, $academic_calendar->getId());
             $cton1 = $cw->getNewCriterion(VCoursePeer::SUBJECT_CURR_ID, 319, Criteria::NOT_IN);
             $cton2 = $cw->getNewCriterion(VCoursePeer::SUBJECT_CURR_ID, 332, Criteria::NOT_IN);
             $cton1->addAnd($cton2);
             $cw->add($cton1);
             $cw->addAscendingOrderByColumn(VCoursePeer::CODE);
             $this->sd_subjects = VCoursePeer::doSelect($cw);
             $this->sd_count = VCoursePeer::doCount($cw);
         } else {
             $cw = new Criteria();
             $cw->add(VCoursePeer::CLASS_GROUP_ID, $counseling->getClassGroupId());
             $cw->add(VCoursePeer::ACADEMIC_CALENDAR_ID, $academic_calendar->getId());
             $cw->add(VCoursePeer::SUBJECT_CURR_ID, 319, Criteria::NOT_IN);
             $cw->addAscendingOrderByColumn(VCoursePeer::CODE);
             $this->sd_subjects = VCoursePeer::doSelect($cw);
             $this->sd_count = VCoursePeer::doCount($cw);
         }
         $cri = new Criteria();
         $cri->add(VCoursePeer::CLASS_GROUP_ID, $counseling->getClassGroupId(), Criteria::IN);
         $cri->add(VCoursePeer::ACADEMIC_CALENDAR_ID, $academic_calendar->getId(), Criteria::IN);
         $cri->add(VCoursePeer::SUBJECT_GROUP_ID, 7, Criteria::IN);
         $cri->add(VCoursePeer::SUBJECT_CURR_ID, 319, Criteria::NOT_IN);
         $cri->addAscendingOrderByColumn(VCoursePeer::CODE);
         $this->sd_subjects7 = VCoursePeer::doSelect($cri);
         $this->sd_count7 = VCoursePeer::doCount($cri);
         $crit = new Criteria();
         $crit->add(VCoursePeer::CLASS_GROUP_ID, $counseling->getClassGroupId());
         $crit->add(VCoursePeer::ACADEMIC_CALENDAR_ID, $academic_calendar->getId());
         $crit->add(VCoursePeer::SUBJECT_GROUP_ID, 8);
         $crit->addAscendingOrderByColumn(VCoursePeer::CODE);
         $this->sd_subjects8 = VCoursePeer::doSelect($crit);
         $this->sd_count8 = VCoursePeer::doCount($crit);
     }
     $actions = array();
     array_unshift($actions, array('name' => '_AS_CSV_', 'url' => "counseling/listFullTryoutAsCSV?counseling_id=" . $counseling->getId() . "&accal_id=" . $academic_calendar->getId() . "&grade_id=" . $grade_id, 'color' => 'black', 'type' => 'direct'));
     array_unshift($actions, array('name' => '_AS_PDF_', 'url' => "counseling/listFullTryoutAsPDF?counseling_id=" . $counseling->getId() . "&accal_id=" . $academic_calendar->getId() . "&grade_id=" . $grade_id, 'color' => 'black', 'type' => 'direct'));
     $this->actions = $actions;
     $actions2 = array(array('name' => '<span>' . $academic_calendar->getName() . '</span>', 'url' => 'counseling/listByEmployee', 'color' => 'volcadot'));
     foreach ($grade1 as $grade) {
         if ($grade->getId() == $grade_id) {
             array_push($actions2, array('name' => '<span>' . $grade->getCode() . '</span>', 'url' => 'counseling/listFullTryout?counseling_id=' . $counseling->getId() . '&accal_id=' . $academic_calendar->getId() . '&grade_id=' . $grade->getId(), 'color' => 'sky', 'type' => 'direct'));
         } else {
             array_push($actions2, array('name' => '<span>' . $grade->getCode() . '</span>', 'url' => 'counseling/listFullTryout?counseling_id=' . $counseling->getId() . '&accal_id=' . $academic_calendar->getId() . '&grade_id=' . $grade->getId(), 'color' => 'sun'));
         }
     }
     $this->actions2 = $actions2;
 }
コード例 #7
0
ファイル: actions.class.php プロジェクト: taryono/school
 public function executeEditByEmployee()
 {
     $employee_id = sfContext::getInstance()->getUser()->getAttribute('user_id', null, 'bo');
     $employee = EmployeePeer::retrieveByPK($employee_id);
     $this->forward404Unless($employee);
     $class_counseling = ClassCounselingPeer::retrieveByPk($this->getRequestParameter('id'));
     $this->forward404Unless($class_counseling);
     $student_options = array();
     $c = new Criteria();
     $c->add(StudentPeer::CLASS_GROUP_ID, $class_counseling->getCourseSchedule()->getClassGroupId(), Criteria::IN);
     $c->addAscendingOrderByColumn(StudentPeer::NAME);
     $students = StudentPeer::doSelect($c);
     foreach ($students as $student) {
         $student_options[$student->getId()] = $student->getName();
     }
     $this->student_options = $student_options;
     $this->actions = array(array('name' => 'save', 'type' => 'submit', 'options' => array('class' => 'save_button', 'onclick' => "action_type.value=this.value")), array('name' => 'cancel', 'url' => 'employee_counsel/list', 'color' => 'black'));
     $this->subtitle = $class_counseling->toString() . ' - id:' . $class_counseling->getId();
     $this->type = 'edit';
     $actions2 = array(array('name' => '<span>Semester 1, ' . $class_counseling->getCourseSchedule()->getAcademicCalendar()->getParentName() . '</span>', 'url' => 'employee_counsel/list', 'color' => 'sun', 'type' => 'direct'));
     array_push($actions2, array('name' => '<span>Semester 2, ' . $class_counseling->getCourseSchedule()->getAcademicCalendar()->getParentName() . '</span>', 'url' => 'employee_counsel/list2', 'color' => 'sky'));
     array_push($actions2, array('name' => '<span>Riwayat Konseling</span>', 'url' => 'employee_counsel/listHistory', 'color' => 'volcadot'));
     $this->actions2 = $actions2;
     $this->class_counseling = $class_counseling;
     $this->employee = $employee;
 }
コード例 #8
0
ファイル: actions.class.php プロジェクト: taryono/school
 public function executeSavePreview()
 {
     $class_id = $this->getRequestParameter('class_group_id');
     $accal_id = $this->getRequestParameter('academic_calendar_id');
     $c = new Criteria();
     $c->add(StudentPeer::CLASS_GROUP_ID, $this->getRequestParameter('class_group_id'));
     $students = StudentPeer::doSelect($c);
     $counts = StudentPeer::doCount($c);
     $dept = $this->getContext()->getUser()->getAttribute('department', null, 'bo');
     if ($dept->getCourseModel() == Department::CM_TK) {
         return $this->redirect('course_sched/listTK');
     } else {
         return $this->redirect('course_sched/list');
     }
 }
コード例 #9
0
 public function getStudents($criteria = null, $con = null)
 {
     include_once 'lib/model/om/BaseStudentPeer.php';
     if ($criteria === null) {
         $criteria = new Criteria();
     } elseif ($criteria instanceof Criteria) {
         $criteria = clone $criteria;
     }
     if ($this->collStudents === null) {
         if ($this->isNew()) {
             $this->collStudents = array();
         } else {
             $criteria->add(StudentPeer::ACADEMIC_CALENDAR_ID, $this->getId());
             StudentPeer::addSelectColumns($criteria);
             $this->collStudents = StudentPeer::doSelect($criteria, $con);
         }
     } else {
         if (!$this->isNew()) {
             $criteria->add(StudentPeer::ACADEMIC_CALENDAR_ID, $this->getId());
             StudentPeer::addSelectColumns($criteria);
             if (!isset($this->lastStudentCriteria) || !$this->lastStudentCriteria->equals($criteria)) {
                 $this->collStudents = StudentPeer::doSelect($criteria, $con);
             }
         }
     }
     $this->lastStudentCriteria = $criteria;
     return $this->collStudents;
 }
コード例 #10
0
ファイル: actions.class.php プロジェクト: taryono/school
 public function executeSelectByClass()
 {
     $class_id = $this->getRequestParameter('class_id');
     $c = new Criteria();
     $c->add(StudentPeer::CLASS_GROUP_ID, $class_id, Criteria::IN);
     $c->addAscendingOrderByColumn(StudentPeer::NAME);
     $objs = StudentPeer::doSelect($c);
     $content = array();
     $disabled = array();
     foreach ($objs as $o) {
         $content[$o->getId()] = $o->getName();
     }
     $this->content = $content;
     $this->disabled = $disabled;
 }
コード例 #11
0
ファイル: actions.class.php プロジェクト: taryono/school
 private function userStudentInit()
 {
     $classArray = array();
     $this->classOutput = array();
     foreach ($this->classes as $class) {
         $classArray[] = $class->getId();
         $this->classOutput[$class->getId()] = array('id' => $class->getId(), 'code' => $class->getCode(), 'name' => $class->getName(), 'items' => array());
     }
     $studentCriteria = new Criteria();
     $studentCriteria->add(StudentPeer::CLASS_GROUP_ID, $classArray, Criteria::IN);
     $this->students = StudentPeer::doSelect($studentCriteria);
 }
コード例 #12
0
 public static function retrieveLastYearCareerGraduatedStudents($career_school_year)
 {
     $last_year_school_year = SchoolYearPeer::retrieveLastYearSchoolYear(SchoolYearPeer::retrieveCurrent());
     $c = new Criteria();
     $c->addJoin(self::STUDENT_ID, StudentPeer::ID, Criteria::INNER_JOIN);
     $c->add(self::STATUS, CareerStudentStatus::GRADUATE);
     $c->add(self::GRADUATION_SCHOOL_YEAR_ID, $last_year_school_year->getId());
     $c->add(self::CAREER_ID, $career_school_year->getCareer()->getId());
     return StudentPeer::doSelect($c);
 }
コード例 #13
0
ファイル: actions.class.php プロジェクト: taryono/school
 public function executeEditByEmployee()
 {
     $class_agenda = ClassAgendaPeer::retrieveByPK($this->getRequestParameter('agenda_id'));
     $this->forward404Unless($class_agenda);
     $employee_id = sfContext::getInstance()->getUser()->getAttribute('user_id', null, 'bo');
     $employee = EmployeePeer::retrieveByPK($employee_id);
     $this->forward404Unless($employee);
     $this->employee = $employee;
     $group_id = $this->getContext()->getUser()->getAttribute('group_id', null, 'bo');
     $c = new Criteria();
     $c->add(JobPeer::CODE, 'leave/listByEmployee');
     $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;
     $student_absence = StudentAbsencePeer::retrieveByPk($this->getRequestParameter('id'));
     $this->forward404Unless($student_absence);
     $stu_options = array();
     $c = new Criteria();
     $c->add(StudentPeer::CLASS_GROUP_ID, $class_agenda->getClassGroupId(), Criteria::IN);
     $c->addAscendingOrderByColumn(StudentPeer::NAME);
     $students = StudentPeer::doSelect($c);
     foreach ($students as $student) {
         $stu_options[$student->getId()] = $student->getName();
     }
     $this->stu_options = $stu_options;
     $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' => 'leave/deleteByEmployee?id=' . $student_absence->getId() . '&agenda_id=' . $class_agenda->getId(), 'color' => 'red'));
     }
     array_push($actions, array('name' => 'cancel', 'url' => 'leave/listByEmployee?agenda_id=' . $class_agenda->getId(), 'color' => 'white'));
     $this->subtitle = $class_agenda->toString() . ' - id:' . $student_absence->getId();
     $this->type = 'edit';
     $this->student_absence = $student_absence;
     $this->actions = $actions;
     $this->class_agenda = $class_agenda;
 }
コード例 #14
0
 public static function setBrothersForStudent(Student $student)
 {
     $c = new Criteria();
     $c->add(StudentPeer::ID, $student->getId(), Criteria::NOT_EQUAL);
     self::$_brothers = array_merge($student->getBrothers(), StudentPeer::doSelect($c));
 }
コード例 #15
0
ファイル: CareerSchoolYear.php プロジェクト: nvidela/kimkelen
 public function getStudents(Criteria $c = null, PropelPDO $con = null)
 {
     if ($c == null) {
         $c = new Criteria();
     }
     $c->add(StudentCareerSchoolYearPeer::CAREER_SCHOOL_YEAR_ID, $this->getId());
     $c->addJoin(StudentCareerSchoolYearPeer::STUDENT_ID, StudentPeer::ID);
     return StudentPeer::doSelect($c, $con);
 }
コード例 #16
0
ファイル: actions.class1.php プロジェクト: taryono/school
 public function executeListStuScore()
 {
     $employee_id = sfContext::getInstance()->getUser()->getAttribute('user_id', null, 'bo');
     $employee = EmployeePeer::retrieveByPK($employee_id);
     $this->forward404Unless($employee);
     $this->employee_id = $employee_id;
     $this->employee = $employee;
     $course_schedule = CourseSchedulePeer::retrieveByPk($this->getRequestParameter('course_id'));
     $this->forward404Unless($course_schedule);
     $course_schedule_id = $course_schedule->getId();
     $student_options = array();
     $c = new Criteria();
     $c->add(StudentAccalPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId(), Criteria::IN);
     $c->addJoin(StudentAccalPeer::STUDENT_ID, StudentPeer::ID);
     $c->add(StudentPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId(), Criteria::IN);
     $c->addAscendingOrderByColumn(StudentPeer::NAME);
     $students = StudentPeer::doSelect($c);
     foreach ($students as $student) {
         $student_options[$student->getId()] = $student->getName();
     }
     $this->student_options = $student_options;
     $actions = array();
     $this->actions = $actions;
     $this->subtitle = $course_schedule->getSubjectCurr()->getSubject()->getName() . ' - ' . $course_schedule->getClassGroup()->toString();
     $this->type = 'edit';
     $this->course_schedule = $course_schedule;
     $this->course_schedule_id = $course_schedule_id;
     $actions2 = array(array('name' => '<span>Rumusan Nilai / KKM</span>', 'url' => 'course_score/listRegulation?course_id=' . $course_schedule->getId(), 'color' => 'sky'));
     if ($course_schedule->getAcademicCalendar()->getCourseModel() == 'A') {
         array_unshift($actions2, array('name' => '<span>' . $course_schedule->getAcademicCalendar()->getName() . '</span>', 'url' => 'course_score/list', 'color' => 'sky'));
     } else {
         array_unshift($actions2, array('name' => '<span>' . $course_schedule->getAcademicCalendar()->getName() . '</span>', 'url' => 'course_score/list2', 'color' => 'sky'));
     }
     array_push($actions2, array('name' => '<span>Nilai Per Kategori</span>', 'url' => 'course_score/listScore?course_id=' . $course_schedule->getId(), 'color' => 'sky'));
     array_push($actions2, array('name' => '<span>Nilai Per Murid</span>', 'url' => 'course_score/listStuScore?course_id=' . $course_schedule->getId(), 'color' => 'sun', 'type' => 'direct'));
     array_push($actions2, array('name' => '<span>Nilai Ulangan</span>', 'url' => 'course_score/listRaportScore?course_id=' . $course_schedule->getId(), 'color' => 'sky'));
     array_push($actions2, array('name' => '<span>Nilai Akhir</span>', 'url' => 'course_score/listByEmployee?course_id=' . $course_schedule->getId(), 'color' => 'sky'));
     $this->actions2 = $actions2;
 }
コード例 #17
0
 /**
  * This method join Students with this examination_subject
  *
  * @return array Students
  */
 public function getStudents()
 {
     $criteria = $this->getCriteriaForCourseSubjectExamination();
     return StudentPeer::doSelect($criteria);
 }
コード例 #18
0
 /**
  * This methods returns the students available four a course that have a Division
  *
  * @see getAvailableStudentsForCourseSubjectCriteria
  *
  * @param CourseSubject $course_subject
  * @param Criteria $criteria
  * @param Boolean $filter_by_orientation
  * @return Criteria
  */
 public function getAvailableStudentsForDivisionCourseSubject(CourseSubject $course_subject, $criteria = null, $filter_by_orientation = false)
 {
     $filter_by_orientation = false;
     return StudentPeer::doSelect($this->getAvailableStudentsForDivisionCourseSubjectCriteria($course_subject, $criteria, $filter_by_orientation));
 }
コード例 #19
0
ファイル: _list_header.php プロジェクト: nvidela/kimkelen
    <th> <?php 
echo __('Cantidad de alumnos desaprobados');
?>
 </th>
  </tr>
  <tr>
    <td> <?php 
echo __('Se registraron: ' . $sf_user->getAttribute('students_count') . ' alumnos');
?>
 </td>
  </tr>
</table>
<table>
  <tr>
    <?php 
$total = count(StudentPeer::doSelect(new Criteria()));
?>
    <th> <?php 
echo __('Porcentaje de alumnos desaprobados del total');
?>
 </th>
  </tr>
  <tr>
    <td> <?php 
echo __(number_format($sf_user->getAttribute('students_percentaje'), 2) . ' %');
?>
 </td>
  </tr>
</table>

コード例 #20
0
ファイル: actions.class.php プロジェクト: taryono/school
 public function executeAddEksStu()
 {
     $accal_id = $this->getRequestParameter('accal_id');
     $academic_calendar = AcademicCalendarPeer::retrieveByPK($accal_id);
     $this->forward404Unless($academic_calendar);
     $schedule = SchedulePeer::retrieveByPk($this->getRequestParameter('schedule_id'));
     $this->forward404Unless($schedule);
     $schedule_detail = ScheduleDetailPeer::retrieveByPk($this->getRequestParameter('detail_id'));
     $this->forward404Unless($schedule_detail);
     $class_group = ClassGroupPeer::retrieveByPK($this->getRequestParameter('class_id'));
     $this->forward404Unless($class_group);
     if ($academic_calendar->getDepartment()->getCourseModel() == Department::CM_SMP) {
         $cb = new Criteria();
         $cb->add(StudentRaportPeer::GRADE_COMPONENT_ID, $schedule->getGradeComponentId());
         $cb->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $schedule->getAcademicCalendarId());
         $cb->add(StudentRaportPeer::SCHEDULE_DETAIL_ID, $schedule_detail->getId());
         $cb->add(StudentRaportPeer::SCHEDULE_ID, $schedule->getId());
         $cb->add(StudentRaportPeer::CLASS_GROUP_ID, $class_group->getId());
         $cb->addJoin(StudentPeer::ID, StudentRaportPeer::STUDENT_ID);
         $cb->add(StudentPeer::STATUS, Student::STATUS_ACTIVE, Criteria::EQUAL);
         #$cb->add(StudentPeer::CLASS_GROUP_ID, $class_group->getId());
         $students = StudentPeer::doSelect($cb);
         $stu_ids = array();
         foreach ($students as $student) {
             $stu_ids[] = $student->getId();
         }
         $c = new Criteria();
         $c->add(StudentRaportPeer::GRADE_COMPONENT_ID, $schedule->getGradeComponentId());
         $c->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $schedule->getAcademicCalendarId());
         $c->add(StudentRaportPeer::SCHEDULE_DETAIL_ID, $schedule_detail->getId());
         $c->add(StudentRaportPeer::SCHEDULE_ID, $schedule->getId());
         $c->add(StudentRaportPeer::CLASS_GROUP_ID, $class_group->getId());
         $c->addJoin(StudentPeer::ID, StudentRaportPeer::STUDENT_ID);
         $c->add(StudentPeer::STATUS, Student::STATUS_ACTIVE, Criteria::EQUAL);
         $c->add(StudentPeer::ID, $stu_ids, Criteria::NOT_IN);
         $c->addAscendingOrderByColumn(StudentPeer::CLASS_NAME);
         $rpp = $this->getRequestParameter('max_per_page', $this->getUser()->getAttribute('max_per_page', ParamsPeer::retrieveByCode('row_per_page')->getValue(), 'student'));
         $this->getUser()->setAttribute('max_per_page', $rpp, 'student');
         $pager = new sfPropelPager('Student', $rpp);
         $pager->setCriteria($c);
         $page = $this->getRequestParameter('page', $this->getUser()->getAttribute('page', 1, 'student'));
         $this->getUser()->setAttribute('page', $page, 'student');
         $pager->setPage($page);
         $pager->init();
         $this->pager = $pager;
         $this->setTemplate('addEksSmp');
     } else {
         $ct = new Criteria();
         $ct->add(ScheduleDetailPeer::SCHEDULE_ID, $schedule->getId());
         $ct->addJoin(Cur13EkskulPeer::SCHEDULE_DETAIL_ID, ScheduleDetailPeer::ID);
         $ct->addJoin(StudentAccalPeer::ID, Cur13EkskulPeer::STUDENT_ACCAL_ID);
         $ct->add(StudentAccalPeer::CLASS_GROUP_ID, $class_group->getId());
         $ct->add(StudentAccalPeer::ACADEMIC_CALENDAR_ID, $academic_calendar->getId());
         $ct->addJoin(StudentPeer::ID, StudentAccalPeer::STUDENT_ID);
         $ct->add(StudentPeer::STATUS, Student::STATUS_ACTIVE, Criteria::EQUAL);
         $students = StudentPeer::doSelect($ct);
         $stu_ids = array();
         foreach ($students as $student) {
             $stu_ids[] = $student->getId();
         }
         $c = new Criteria();
         $c->add(StudentAccalPeer::CLASS_GROUP_ID, $class_group->getId());
         $c->add(StudentAccalPeer::ACADEMIC_CALENDAR_ID, $academic_calendar->getId());
         $c->addJoin(StudentPeer::ID, StudentAccalPeer::STUDENT_ID);
         $c->add(StudentPeer::STATUS, Student::STATUS_ACTIVE, Criteria::EQUAL);
         $c->add(StudentPeer::ID, $stu_ids, Criteria::NOT_IN);
         $c->addAscendingOrderByColumn(StudentPeer::CLASS_NAME);
         $rpp = $this->getRequestParameter('max_per_page', $this->getUser()->getAttribute('max_per_page', ParamsPeer::retrieveByCode('row_per_page')->getValue(), 'student'));
         $this->getUser()->setAttribute('max_per_page', $rpp, 'student');
         $pager = new sfPropelPager('Student', $rpp);
         $pager->setCriteria($c);
         $page = $this->getRequestParameter('page', $this->getUser()->getAttribute('page', 1, 'student'));
         $this->getUser()->setAttribute('page', $page, 'student');
         $pager->setPage($page);
         $pager->init();
         $this->pager = $pager;
     }
     $actions = array(array('name' => 'Pilih', 'type' => 'submit', 'options' => array('class' => 'save_button', 'onclick' => "action_type.value=this.value")));
     $this->actions = $actions;
     $this->subtitle = $schedule->getGradeComponent()->toString() . ' - ' . $schedule_detail->getDayString();
     $cti = new Criteria();
     $cti->add(StudentAccalPeer::ACADEMIC_CALENDAR_ID, $academic_calendar->getId());
     $stu_accals = StudentAccalPeer::doSelect($cti);
     $stu_accal_ids = array();
     foreach ($stu_accals as $stu_accal) {
         $stu_accal_ids[$stu_accal->getStudentId() . '#' . $stu_accal->getClassGroupId()] = $stu_accal->getId();
     }
     $this->stu_accal_ids = $stu_accal_ids;
     $cj = new Criteria();
     $cj->add(GradeConversionPeer::DEPARTMENT_ID, $academic_calendar->getDepartmentId());
     $cj->add(GradeConversionPeer::GRADE_CONVERSION_TEMPLATE_ID, 19);
     $cj->add(GradeConversionPeer::TYPE_CONVERSION, ScoreRule::FIVE);
     $cj->addDescendingOrderByColumn(GradeConversionPeer::MAX_VALUE);
     $grade_convs = GradeConversionPeer::doSelect($cj);
     $this->grade_convs = $grade_convs;
     $this->schedule = $schedule;
     $this->schedule_detail = $schedule_detail;
     $this->actions3 = array();
     $this->class_group = $class_group;
     $this->academic_calendar = $academic_calendar;
 }
コード例 #21
0
ファイル: actions.class.php プロジェクト: taryono/school
 public function executeSavePreview()
 {
     $class_id = $this->getRequestParameter('class_group_id');
     $accal_id = $this->getRequestParameter('academic_calendar_id');
     $c = new Criteria();
     $c->add(StudentPeer::CLASS_GROUP_ID, $this->getRequestParameter('class_group_id'));
     $students = StudentPeer::doSelect($c);
     $counts = StudentPeer::doCount($c);
     $c = new Criteria();
     $c->add(GradeComponentPeer::GRADE_SPEC_ID, '20');
     $c->add(GradeComponentPeer::PUBLISHED, '1');
     $components = GradeComponentPeer::doSelect($c);
     $accal = AcademicCalendarPeer::retrieveByPk($this->getRequestParameter('academic_calendar_id'));
     $c = new Criteria();
     $c->add(CourseSchedulePeer::ACADEMIC_CALENDAR_ID, $accal_id);
     $c->add(CourseSchedulePeer::CLASS_GROUP_ID, $class_id);
     $course_schedules = CourseSchedulePeer::doSelect($c);
     $counts = CourseSchedulePeer::doCount($c);
     if ($accal->getCurriculum()->getCourseModel() == Curriculum::CM_PACKAGED || $accal->getCurriculum()->getCourseModel() == Curriculum::CM_PACKAGED_CUSTOM) {
         #if ($counts > 1) {
         foreach ($course_schedules as $course_schedule) {
             foreach ($students as $student) {
                 $c = new Criteria();
                 $c->add(StudentCoursePeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId());
                 $c->add(StudentCoursePeer::STUDENT_ID, $student->getId());
                 $stu_courses = StudentCoursePeer::doCount($c);
                 if ($stu_courses < 1) {
                     $student_course = new StudentCourse();
                     $student_course->setStudentId($student->getId());
                     $student_course->setSubjectCurrId($course_schedule->getSubjectCurrId());
                     $student_course->setStatus(1);
                     $student_course->setAcademicCalendarId($this->getRequestParameter('academic_calendar_id'));
                     $student_course->setClassGroupId($this->getRequestParameter('class_group_id'));
                     $student_course->save();
                 }
             }
         }
         foreach ($students as $student) {
             foreach ($components as $component) {
                 $c = new Criteria();
                 $c->add(StudentCoursePeer::STUDENT_ID, $student->getId());
                 $c->add(StudentCoursePeer::GRADE_COMPONENT_ID, $component->getId());
                 $com_courses = StudentCoursePeer::doCount($c);
                 if ($com_courses < 1) {
                     $student_course = new StudentCourse();
                     $student_course->setStudentId($student->getId());
                     $student_course->setStatus(1);
                     $student_course->setAcademicCalendarId($this->getRequestParameter('academic_calendar_id'));
                     $student_course->setClassGroupId($this->getRequestParameter('class_group_id'));
                     $student_course->setGradeComponentId($component->getId());
                     $student_course->save();
                 }
             }
         }
         #}
     }
     return $this->redirect('course_schedule/list');
 }
コード例 #22
0
ファイル: actions.class.php プロジェクト: taryono/school
 public function executeAddEksStu()
 {
     $counseling_id = $this->getRequestParameter('counseling_id');
     $counseling = CounselingPeer::retrieveByPK($counseling_id);
     $this->forward404Unless($counseling);
     $accal_id = $this->getRequestParameter('accal_id');
     $academic_calendar = AcademicCalendarPeer::retrieveByPK($accal_id);
     $this->forward404Unless($academic_calendar);
     $schedule = SchedulePeer::retrieveByPk($this->getRequestParameter('schedule_id'));
     $this->forward404Unless($schedule);
     $schedule_detail = ScheduleDetailPeer::retrieveByPk($this->getRequestParameter('detail_id'));
     $this->forward404Unless($schedule_detail);
     $ct = new Criteria();
     $ct->add(ScheduleDetailPeer::SCHEDULE_ID, $schedule->getId());
     $ct->addJoin(Cur13EkskulPeer::SCHEDULE_DETAIL_ID, ScheduleDetailPeer::ID);
     $ct->addJoin(StudentAccalPeer::ID, Cur13EkskulPeer::STUDENT_ACCAL_ID);
     $ct->add(StudentAccalPeer::CLASS_GROUP_ID, $counseling->getClassGroupId());
     $ct->add(StudentAccalPeer::ACADEMIC_CALENDAR_ID, $academic_calendar->getId());
     $ct->addJoin(StudentPeer::ID, StudentAccalPeer::STUDENT_ID);
     $ct->add(StudentPeer::STATUS, Student::STATUS_ACTIVE, Criteria::EQUAL);
     $students = StudentPeer::doSelect($ct);
     $stu_ids = array();
     foreach ($students as $student) {
         $stu_ids[] = $student->getId();
     }
     $c = new Criteria();
     $c->add(StudentAccalPeer::ACADEMIC_CALENDAR_ID, $academic_calendar->getId());
     $c->add(StudentAccalPeer::CLASS_GROUP_ID, $counseling->getClassGroupId());
     $c->addJoin(StudentPeer::ID, StudentAccalPeer::STUDENT_ID);
     $c->add(StudentPeer::STATUS, Student::STATUS_ACTIVE, Criteria::EQUAL);
     $c->add(StudentPeer::ID, $stu_ids, Criteria::NOT_IN);
     $c->addAscendingOrderByColumn(StudentPeer::CLASS_NAME);
     $rpp = $this->getRequestParameter('max_per_page', $this->getUser()->getAttribute('max_per_page', ParamsPeer::retrieveByCode('row_per_page')->getValue(), 'student'));
     $this->getUser()->setAttribute('max_per_page', $rpp, 'student');
     $pager = new sfPropelPager('Student', $rpp);
     $pager->setCriteria($c);
     $page = $this->getRequestParameter('page', $this->getUser()->getAttribute('page', 1, 'student'));
     $this->getUser()->setAttribute('page', $page, 'student');
     $pager->setPage($page);
     $pager->init();
     $this->pager = $pager;
     $actions = array(array('name' => 'Choose', 'type' => 'submit', 'options' => array('class' => 'save_button', 'onclick' => "action_type.value=this.value")));
     $this->actions = $actions;
     $actions2 = array(array('name' => '<span>Peserta Ekskul</span>', 'url' => 'counseling_sd/listEksStu?id=' . $schedule->getId() . '&detail_id=' . $schedule_detail->getId() . '&accal_id=' . $academic_calendar->getId() . '&counseling_id=' . $counseling->getId(), 'color' => 'sky', 'type' => 'direct'));
     array_unshift($actions2, array('name' => '<span>Detail Jadwal Ekskul</span>', 'url' => 'counseling_sd/listDetail?id=' . $schedule->getId() . '&accal_id=' . $academic_calendar->getId() . '&counseling_id=' . $counseling->getId(), 'color' => 'sun'));
     $this->actions2 = $actions2;
     $this->subtitle = $schedule->getGradeComponent()->toString() . ' - ' . $schedule_detail->getDayString();
     $ct = new Criteria();
     $ct->add(StudentAccalPeer::CLASS_GROUP_ID, $counseling->getClassGroupId());
     $ct->add(StudentAccalPeer::ACADEMIC_CALENDAR_ID, $academic_calendar->getId());
     $stu_accals = StudentAccalPeer::doSelect($ct);
     $stu_accal_ids = array();
     foreach ($stu_accals as $stu_accal) {
         $stu_accal_ids[$stu_accal->getStudentId()] = $stu_accal->getId();
     }
     $this->stu_accal_ids = $stu_accal_ids;
     $cj = new Criteria();
     $cj->add(GradeConversionPeer::DEPARTMENT_ID, $academic_calendar->getDepartmentId());
     $cj->add(GradeConversionPeer::GRADE_CONVERSION_TEMPLATE_ID, 19);
     $cj->add(GradeConversionPeer::TYPE_CONVERSION, ScoreRule::FIVE);
     $cj->addDescendingOrderByColumn(GradeConversionPeer::MAX_VALUE);
     $grade_convs = GradeConversionPeer::doSelect($cj);
     $this->grade_convs = $grade_convs;
     $this->schedule = $schedule;
     $this->schedule_detail = $schedule_detail;
     $this->actions3 = array();
     $this->counseling = $counseling;
     $this->academic_calendar = $academic_calendar;
 }
コード例 #23
0
ファイル: actions.class.php プロジェクト: taryono/school
 public function executeTest()
 {
     $sc = new Criteria();
     $sc->add(StudentPeer::CLASS_GROUP_ID, 70, Criteria::EQUAL);
     $students = StudentPeer::doSelect($sc);
     foreach ($students as $student) {
         echo $student->getName() . '<br />';
         $studentRaport = new StudentRaport();
         $studentRaport->setGradeComponentId(60);
         $studentRaport->setClassGroupId($student->getClassGroupId());
         $studentRaport->setAcademicCalendarId(15);
         $studentRaport->setScheduleId(646);
         $studentRaport->setScheduleDetailId(3477);
         $studentRaport->setStudentId($student->getId());
         $studentRaport->save();
     }
     die;
 }
コード例 #24
0
ファイル: BaseStudentPeer.php プロジェクト: taryono/school
 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(StudentPeer::ID, $pks, Criteria::IN);
         $objs = StudentPeer::doSelect($criteria, $con);
     }
     return $objs;
 }
コード例 #25
0
ファイル: actions.class.php プロジェクト: taryono/school
 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')) {
         $class_course = new ClassCourse();
         $class_course->setClassGroupId($this->getRequestParameter('class_group_id'));
         $class_course->setAcademicCalendarId($this->getRequestParameter('academic_calendar_id'));
         $class_course->setStatus(3);
         $class_course->save();
         $academic_calendar_id = $this->getRequestParameter('academic_calendar_id');
         $academic_calendar = AcademicCalendarPeer::retrieveByPK($academic_calendar_id);
         $this->forward404Unless($academic_calendar);
         $class_group_id = $this->getRequestParameter('class_group_id');
         $class_group = ClassGroupPeer::retrieveByPK($class_group_id);
         $this->forward404Unless($class_group);
         $c = new Criteria();
         $c->add(StudentPeer::CLASS_GROUP_ID, $class_group_id);
         $students = StudentPeer::doSelect($c);
         foreach ($students as $student) {
             $c = new Criteria();
             $c->add(VCourseSchedulePeer::CLASS_GROUP_ID, $class_group_id);
             $c->add(VCourseSchedulePeer::ACADEMIC_CALENDAR_ID, $academic_calendar_id);
             $courses = VCourseSchedulePeer::doSelect($c);
             foreach ($courses as $course) {
                 $student_course = new StudentCourse();
                 $student_course->setStudentId($student->getId());
                 $student_course->setSubjectAccalId($course->getSubjectAccalId());
                 $student_course->setClassGroupId($course->getClassGroupId());
                 $student_course->setStatus(3);
                 $student_course->save();
             }
         }
     } else {
         $class_course = ClassCoursePeer::retrieveByPk($this->getRequestParameter('id'));
         $this->forward404Unless($class_course);
         $class_course->setId($this->getRequestParameter('id'));
         $class_course->setClassGroupId($this->getRequestParameter('class_group_id'));
         $class_course->setAcademicCalendarId($this->getRequestParameter('academic_calendar_id'));
         $class_course->setStatus(3);
         $class_course->save();
         $academic_calendar_id = $this->getRequestParameter('academic_calendar_id');
         $class_group_id = $this->getRequestParameter('class_group_id');
         $c = new Criteria();
         $c->add(StudentPeer::CLASS_GROUP_ID, $class_group_id);
         $students = StudentPeer::doSelect($c);
         foreach ($students as $student) {
             $c = new Criteria();
             $c->add(VCourseSchedulePeer::CLASS_GROUP_ID, $class_group_id);
             $c->add(VCourseSchedulePeer::ACADEMIC_CALENDAR_ID, $academic_calendar_id);
             $courses = VCourseSchedulePeer::doSelect($c);
             foreach ($courses as $course) {
                 $c = new Critaria();
                 $c->add(StudenCoursePeer::STUDENT_ID, $student->getId());
                 $stu_courses = StudentCoursePeer::doSelect($c);
                 foreach ($stu_courses as $stu_courses) {
                     $student_course = StudentCoursePeer::retrieveByPk($stu_courses->getId());
                     $student_course->setStudentId($student->getId());
                     $student_course->setSubjectAccalId($course->getSubjectAccalId());
                     $student_course->setClassGroupId($course->getClassGroupId());
                     $student_course->setStatus(3);
                     $student_course->save();
                 }
             }
         }
     }
     return $this->redirect('subject_plan/list');
 }
コード例 #26
0
 public function getAvailableStudentsForManualExaminationSubject(ExaminationSubject $examination_subject)
 {
     $c = new Criteria();
     $c->add(CourseSubjectPeer::CAREER_SUBJECT_SCHOOL_YEAR_ID, $examination_subject->getCareerSubjectSchoolYearId());
     $c->addJoin(CourseSubjectPeer::ID, CourseSubjectStudentPeer::COURSE_SUBJECT_ID, Criteria::INNER_JOIN);
     $c->add(CourseSubjectStudentPeer::STUDENT_APPROVED_COURSE_SUBJECT_ID, null, Criteria::ISNULL);
     $c->addJoin(CourseSubjectStudentPeer::STUDENT_ID, StudentPeer::ID, Criteria::INNER_JOIN);
     $c->addJoin(CourseSubjectStudentPeer::ID, StudentDisapprovedCourseSubjectPeer::COURSE_SUBJECT_STUDENT_ID, Criteria::INNER_JOIN);
     $c->add(StudentDisapprovedCourseSubjectPeer::EXAMINATION_NUMBER, $examination_subject->getExamination()->getExaminationNumber());
     return StudentPeer::doSelect($c);
 }
コード例 #27
0
ファイル: actions.class.php プロジェクト: taryono/school
 public function executeListTryout()
 {
     $employee_id = sfContext::getInstance()->getUser()->getAttribute('user_id', null, 'bo');
     $employee = EmployeePeer::retrieveByPK($employee_id);
     $this->forward404Unless($employee);
     $this->employee_id = $employee_id;
     $course_schedule = CourseSchedulePeer::retrieveByPk($this->getRequestParameter('course_id'));
     $this->forward404Unless($course_schedule);
     $academic_calendar = AcademicCalendarPeer::retrieveByPk($course_schedule->getAcademicCalendarId());
     $this->forward404Unless($academic_calendar);
     $c = new Criteria();
     $c->add(StudentAccalPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId());
     $c->add(StudentAccalPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId());
     $c->addJoin(VStudentActivePeer::ID, StudentAccalPeer::STUDENT_ID);
     $c->addJoin(StudentPeer::ID, VStudentActivePeer::ID);
     $c->addAscendingOrderByColumn(StudentPeer::CLASS_NAME);
     $this->students = StudentPeer::doSelect($c);
     $this->student_count = StudentPeer::doCount($c);
     $cr = new Criteria();
     $cr->add(GradeSpecPeer::PARENT, 45);
     $this->grade1 = GradeSpecPeer::doSelect($cr);
     $this->count1 = GradeSpecPeer::doCount($cr);
     $this->course_schedule = $course_schedule;
     $this->academic_calendar = $academic_calendar;
     $rpp = $this->getRequestParameter('max_per_page', 999);
     $pager = new sfPropelPager('Student', $rpp);
     $pager->setCriteria($c);
     $pager->setPage($this->getRequestParameter('page', 1));
     $pager->init();
     $this->pager = $pager;
     $cd = new Criteria();
     $cd->add(StudentTryoutPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId());
     $cd->add(StudentTryoutPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId());
     $cd->add(StudentTryoutPeer::ACADEMIC_CALENDAR_ID, $academic_calendar->getId());
     $stugrades = StudentTryoutPeer::doSelect($cd);
     $grades = array();
     $grade_avg = array();
     foreach ($stugrades as $stugrade) {
         $grades[$stugrade->getStudentId() . '#' . $stugrade->getGradeSpecId()] = $stugrade->getGrade();
         $grade_avg[$stugrade->getStudentId() . '#' . $stugrade->getGradeSpecId()] = (array_key_exists($stugrade->getStudentId() . '#' . $stugrade->getGradeSpecId(), $grade_avg) ? $grade_avg[$stugrade->getStudentId() . '#' . $stugrade->getGradeSpecId()] : 0) + $stugrade->getGrade();
     }
     $this->grades = $grades;
     $this->grade_avg = $grade_avg;
     $actions = array(array('name' => 'save', 'type' => 'submit', 'options' => array('class' => 'save_button', 'onclick' => "action_type.value=this.value")));
     array_unshift($actions, array('name' => 'Print Excel', 'url' => "course_detail/listTryoutAsCSV?course_id=" . $course_schedule->getId() . "&accal_id=" . $course_schedule->getAcademicCalendarId(), 'color' => 'black', 'type' => 'direct'));
     array_unshift($actions, array('name' => 'Print PDF', 'url' => "course_detail/listTryoutAsPDF?course_id=" . $course_schedule->getId() . "&accal_id=" . $course_schedule->getAcademicCalendarId(), 'color' => 'black', 'type' => 'direct'));
     $this->actions = $actions;
     $subtitle = $course_schedule->getSubjectCurr()->getSubject()->getName() . ' - ' . $course_schedule->getClassGroup()->toString();
     $type = 'edit';
     $this->subtitle = $subtitle;
     $this->type = $type;
     $actions2 = array(array('name' => '<span>' . $course_schedule->getAcademicCalendar()->getName() . '</span>', 'url' => 'course_score_new/list', 'color' => 'sky'));
     array_push($actions2, array('name' => '<span>Penilaian Tryout</span>', 'url' => 'course_score_new/listTryout?course_id=' . $course_schedule->getId(), 'color' => 'sun', 'type' => 'direct'));
     $this->actions2 = $actions2;
 }
コード例 #28
0
ファイル: Division.php プロジェクト: nvidela/kimkelen
 public function createStudentsForNextYear(PropelPDO $con = null, CareerSchoolYear $last_career_school_year)
 {
     //$old_division = DivisionPeer::retrieveByDivisionTitleAndYearAndSchoolYear($this->getDivisionTitle(), $this->getYear() - 1, $last_career_school_year);
     //$students = $old_division->getStudents();
     $c = new Criteria();
     $c->addJoin(StudentPeer::ID, DivisionStudentPeer::STUDENT_ID, Criteria::INNER_JOIN);
     $c->addJoin(DivisionStudentPeer::DIVISION_ID, DivisionPeer::ID, Criteria::INNER_JOIN);
     $c->addAnd(DivisionPeer::YEAR, $this->getYear() - 1);
     $c->addAnd(DivisionPeer::DIVISION_TITLE_ID, $this->getDivisionTitleId());
     $c->addAnd(DivisionPeer::CAREER_SCHOOL_YEAR_ID, $last_career_school_year->getId());
     $c->addAnd(StudentPeer::ID, SchoolYearStudentPeer::retrieveStudentIdsForSchoolYear($last_career_school_year->getSchoolYear()), Criteria::IN);
     $students = StudentPeer::doSelect($c);
     foreach ($students as $student) {
         $student_career_school_year = StudentCareerSchoolYearPeer::getCurrentForStudentAndCareerSchoolYear($student, $this->getCareerSchoolYear());
         StudentCareerSchoolYearPeer::clearInstancePool();
         //If the student has not repeated last year.
         if (!is_null($student_career_school_year) && !$student_career_school_year->getIsRepproved()) {
             $division_student = new DivisionStudent();
             $division_student->setStudent($student);
             $division_student->setDivision($this);
             $division_student->save($con);
             $division_student->clearAllReferences(true);
             unset($division_student);
             $student_career_school_year->clearAllReferences(true);
             unset($student_career_school_year);
         }
         $student->clearAllReferences(true);
         unset($student);
     }
     StudentPeer::clearInstancePool();
     unset($students);
 }
コード例 #29
0
ファイル: actions.class.php プロジェクト: taryono/school
 public function executeListCounselingScore()
 {
     $employee_id = sfContext::getInstance()->getUser()->getAttribute('user_id', null, 'bo');
     $employee = EmployeePeer::retrieveByPK($employee_id);
     $this->forward404Unless($employee);
     $dept = $this->getContext()->getUser()->getAttribute('department_id', null, 'bo');
     $counseling_id = $this->getRequestParameter('counseling_id');
     $counseling = CounselingPeer::retrieveByPK($counseling_id);
     $this->forward404Unless($counseling);
     $accal_id = $this->getRequestParameter('accal_id');
     $academic_calendar = AcademicCalendarPeer::retrieveByPK($accal_id);
     $this->forward404Unless($academic_calendar);
     $student_options = array();
     $c = new Criteria();
     $c->add(StudentAccalPeer::ACADEMIC_CALENDAR_ID, $academic_calendar->getId(), Criteria::IN);
     $c->addJoin(StudentAccalPeer::STUDENT_ID, StudentPeer::ID);
     $c->add(StudentPeer::CLASS_GROUP_ID, $counseling->getClassGroupId(), Criteria::IN);
     $c->addAscendingOrderByColumn(StudentPeer::NAME);
     $students = StudentPeer::doSelect($c);
     foreach ($students as $student) {
         $student_options[$student->getId()] = $student->getName();
     }
     $this->student_options = $student_options;
     $actions = array();
     $this->actions = $actions;
     $this->subtitle = $academic_calendar->toString() . ' # ' . $counseling->getClassGroup()->toString();
     $this->employee_id = $employee_id;
     $this->employee = $employee;
     $this->counseling = $counseling;
     $this->academic_calendar = $academic_calendar;
     $actions2 = array(array('name' => '<span>Penilaian Konseling</span>', 'url' => 'counseling_raport/list', 'color' => 'sky'));
     array_push($actions2, array('name' => '<span>Penilaian</span>', 'url' => 'counseling_raport/listCounselingScore?accal_id=' . $academic_calendar->getId() . '&counseling_id=' . $counseling->getId(), 'color' => 'sun', 'type' => 'direct'));
     $this->actions2 = $actions2;
 }
コード例 #30
0
ファイル: smsContact.php プロジェクト: taryono/school
 public function getStudentClassAvailable($idArray, $departmentAvailable = false)
 {
     if ($departmentAvailable) {
         $classAvailable = $this->getClassAvailable($departmentAvailable, $idArray);
     }
     if (!$classAvailable) {
         return false;
     }
     $accalId = array();
     foreach ($departmentAvailable as $d) {
         $accalId[] = $this->getAccal($d)->getId();
     }
     $criteria = new Criteria();
     if ($departmentAvailable) {
         $criteria->add(StudentPeer::CLASS_GROUP_ID, $classAvailable, Criteria::IN);
     } else {
         $criteria->add(StudentPeer::CLASS_GROUP_ID, $idArray, Criteria::IN);
     }
     $criteria->add(StudentPeer::STUDENT_DETAIL_ID, 0, Criteria::NOT_EQUAL);
     $criteria->add(StudentPeer::ACADEMIC_CALENDAR_ID, $accalId, Criteria::IN);
     $criteria->add(StudentPeer::STATUS, 1, Criteria::EQUAL);
     $result = StudentPeer::doSelect($criteria);
     return $result;
 }