Ejemplo n.º 1
2
 public function executeSaveParalel()
 {
     $counseling = CounselingPeer::retrieveByPK($this->getRequestParameter('counseling_id'));
     $this->forward404Unless($counseling);
     $academic_calendar = AcademicCalendarPeer::retrieveByPK($this->getRequestParameter('accal_id'));
     $this->forward404Unless($academic_calendar);
     $ranks = $this->getRequestParameter('rank');
     foreach ($ranks as $student_id => $rank) {
         $c = new Criteria();
         $c->add(StudentAccalPeer::ACADEMIC_CALENDAR_ID, $academic_calendar->getId());
         $c->add(StudentAccalPeer::STUDENT_ID, $student_id);
         $sa = StudentAccalPeer::doSelectOne($c);
         if ($sa == null) {
             $sa = new StudentAccal();
         }
         $sa->setStudentId($student_id);
         $sa->setAcademicCalendarId($academic_calendar->getId());
         $sa->setSchoolRank($rank);
         $sa->save();
     }
     return $this->redirect('counseling_hist/listParalel?accal_id=' . $academic_calendar->getId() . '&counseling_id=' . $counseling->getId());
 }
Ejemplo n.º 2
2
 public function executeUploadFinish()
 {
     $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();
     $actions = array();
     $this->actions = $actions;
     $this->subtitle = $course_schedule->getSubjectCurr()->getSubject()->getName() . ' - (' . $course_schedule->getClassGroup()->toString() . ' # ' . $course_schedule->getAcademicCalendar()->getName() . ')';
     $this->type = 'edit';
     $this->course_schedule = $course_schedule;
     $cr = new Criteria();
     $cr->add(GradeSpecPeer::PARENT, 1);
     $cr->addAscendingOrderByColumn(GradeSpecPeer::ID);
     $this->grade1 = GradeSpecPeer::doSelect($cr);
     $this->count1 = GradeSpecPeer::doCount($cr);
     $cw = new Criteria();
     $cw->add(GradeSpecPeer::PARENT, 7);
     $cw->addAscendingOrderByColumn(GradeSpecPeer::ID);
     $this->grade2 = GradeSpecPeer::doSelect($cw);
     $this->count2 = GradeSpecPeer::doCount($cw);
     $cm = new Criteria();
     $cm->addJoin(StudentAccalPeer::STUDENT_ID, VStudentActivePeer::ID);
     $cm->add(StudentAccalPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId());
     $cm->add(StudentAccalPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId());
     $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);
     $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->student_count = StudentAccalPeer::doCount($cm);
 }
Ejemplo n.º 3
0
 /**
  * getStudentClassCount function
  * function to get count of student accal of the class
  * @param int $academicCalendarId
  * @param int $studentId
  * @return object
  */
 public static function getStudentByAccal($academicCalendarId, $studentId)
 {
     $c = new Criteria();
     $c->add(StudentAccalPeer::ACADEMIC_CALENDAR_ID, $academicCalendarId);
     $c->add(StudentAccalPeer::STUDENT_ID, $studentId);
     return StudentAccalPeer::doSelectOne($c);
 }
Ejemplo n.º 4
0
 public function executeUploadFinish()
 {
     $this->counseling = CounselingPeer::retrieveByPK($this->getRequestParameter('counseling_id'));
     $this->forward404Unless($this->counseling);
     $c = new Criteria();
     #$c->add(StudentAccalPeer::ACADEMIC_CALENDAR_ID, $this->counseling->getAcademicCalendar()->getChildB()->getId());
     #$c->add(StudentAccalPeer::CLASS_GROUP_ID, $this->counseling->getClassGroupId());
     #$c->addJoin(StudentPeer::ID, StudentAccalPeer::STUDENT_ID);
     $c->add(StudentPeer::ACADEMIC_CALENDAR_ID, $this->counseling->getAcademicCalendarId());
     $c->add(StudentPeer::CLASS_GROUP_ID, $this->counseling->getClassGroupId());
     $c->addAscendingOrderByColumn(StudentPeer::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;
     $cl = new Criteria();
     $cl->add(AcademicCalendarPeer::PARENT, $this->counseling->getAcademicCalendarId());
     $cl->add(StudentAccalPeer::ACADEMIC_CALENDAR_ID, AcademicCalendarPeer::ID);
     $cl->add(StudentAccalPeer::CLASS_GROUP_ID, $this->counseling->getClassGroupId());
     $stu_accals = StudentAccalPeer::doSelect($cl);
     $stu_status = array();
     foreach ($stu_accals as $stu_accal) {
         $stu_status[$stu_accal->getAcademicCalendarId() . '#' . $stu_accal->getStudentId()] == $stu_accal->getStatus();
     }
     $this->stu_status = $stu_status;
     $actions = array(array('name' => 'Simpan', 'type' => 'submit', 'options' => array('class' => 'save_button', 'onclick' => "action_type.value=this.value")));
     $this->subtitle = $this->counseling->getAcademicCalendar()->toString() . ' - ' . $this->counseling->getClassGroup()->toString() . ' - id:' . $this->counseling->getId();
     $this->type = 'edit';
     $this->title = 'Daftar Peserta Kelas';
     $this->actions = $actions;
 }
Ejemplo n.º 5
0
 public function executeListLedgerAll()
 {
     $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);
     ## Daftar Mata Pelajaran di Jadwal Pelajaran
     $cw = new Criteria();
     $cw->add(VCoursePeer::CLASS_GROUP_ID, $counseling->getClassGroupId());
     $cw->add(VCoursePeer::ACADEMIC_CALENDAR_ID, $academic_calendar->getId());
     $subjects = VCoursePeer::doSelect($cw);
     $subject_ids = array();
     foreach ($subjects as $subject) {
         $subject_ids[] = $subject->getSubjectCurrId();
     }
     $this->subjects = $subjects;
     ## Mengelompokkan Penilaian Anak berdasarkan Tahun Ajaran dan Kelas
     $cr = new Criteria();
     $cr->add(StudentRaportPeer::CLASS_GROUP_ID, $counseling->getClassGroupId());
     #$cr->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $academic_calendar->getId());
     $stugrades = StudentRaportPeer::doSelect($cr);
     $this->stugrades = $stugrades;
     $cblek = new Criteria();
     $cblek->add(StudentAccalPeer::CLASS_GROUP_ID, $counseling->getClassGroupId());
     $s_accal = StudentAccalPeer::doSelect($cblek);
     $this->s_accal = $s_accal;
     $cmiw = new Criteria();
     $cmiw->add(AcademicCalendarPeer::PARENT, $academic_calendar->getParent());
     $accals = AcademicCalendarPeer::doSelect($cmiw);
     $this->accals = $accals;
     $cq = new Criteria();
     $cq->add(AcademicCalendarPeer::COURSE_MODEL, 'A');
     $cq->add(AcademicCalendarPeer::PARENT, $academic_calendar->getParent());
     $accal1 = AcademicCalendarPeer::doSelectOne($cq);
     $this->accal1 = $accal1;
     $cb = new Criteria();
     $cb->add(AcademicCalendarPeer::COURSE_MODEL, 'B');
     $cb->add(AcademicCalendarPeer::PARENT, $academic_calendar->getParent());
     $accal2 = AcademicCalendarPeer::doSelectOne($cb);
     $this->accal2 = $accal2;
     $cmi = new Criteria();
     $cmi->add(StudentHabitPeer::CLASS_GROUP_ID, $counseling->getClassGroupId());
     $cmi->add(StudentHabitPeer::ACADEMIC_CALENDAR_ID, $academic_calendar->getId());
     $student_habits = StudentHabitPeer::doSelect($cmi);
     $this->student_habits = $student_habits;
     $cwi = new Criteria();
     $cwi->add(CourseRegulationPeer::ACADEMIC_CALENDAR_ID, $academic_calendar->getId());
     $cwi->add(CourseRegulationPeer::CLASS_GROUP_ID, $counseling->getClassGroupId());
     $c_regulations = CourseRegulationPeer::doSelect($cwi);
     $this->c_regulations = $c_regulations;
     ## Menentukan Aturan Penilaian
     $cd = new Criteria();
     #$cd->add(ScoreRulePeer::ACADEMIC_CALENDAR_ID, $counseling->getAcademicCalendarId());
     $cd->add(ClassGroupPeer::DEPARTMENT_ID, $counseling->getAcademicCalendar()->getDepartmentId());
     $cd->addJoin(ScoreRulePeer::CLASS_GROUP_ID, ClassGroupPeer::ID);
     $cd->add(ScoreRulePeer::TYPE, 4);
     $score_rule = ScoreRulePeer::doSelectOne($cd);
     $this->score_rule = $score_rule;
     ## Menentukan Aturan Penilaian Yang digunakan
     $cm = new Criteria();
     $cm->add(ScoreRuleSubjectPeer::SCORE_RULE_ID, $score_rule->getId(), Criteria::IN);
     $cm->add(ScoreRuleSubjectPeer::PUBLISHED, 1, Criteria::IN);
     $cm->add(ScoreRuleSubjectPeer::SUBJECT_CURR_ID, $subject_ids, Criteria::IN);
     $cm->addAscendingOrderByColumn(ScoreRuleSubjectPeer::SEQUENCE);
     $list_subs = ScoreRuleSubjectPeer::doSelect($cm);
     $subject_count = ScoreRuleSubjectPeer::doCount($cm);
     $this->list_subs = $list_subs;
     $this->subject_count = $subject_count;
     $cwe = new Criteria();
     $cwe->add(GradeComponentPeer::DEPARTMENT_ID, $counseling->getAcademicCalendar()->getDepartmentId(), Criteria::IN);
     $cton1 = $cwe->getNewCriterion(GradeComponentPeer::GRADE_SPEC_ID, 20, Criteria::IN);
     $cton2 = $cwe->getNewCriterion(GradeComponentPeer::PUBLISHED, 1, Criteria::IN);
     $cton1->addAnd($cton2);
     $cwe->add($cton1);
     $this->grade_components = GradeComponentPeer::doSelect($cwe);
     $this->grade_count = GradeComponentPeer::doCount($cwe);
     $cmot = new Criteria();
     $cmot->add(StudentAccalPeer::ACADEMIC_CALENDAR_ID, $academic_calendar->getId());
     $cmot->add(StudentAccalPeer::CLASS_GROUP_ID, $counseling->getClassGroupId());
     $cmot->addJoin(StudentPeer::ID, StudentAccalPeer::STUDENT_ID);
     $cmot->add(StudentPeer::STATUS, 2, Criteria::NOT_EQUAL);
     $cmot->add(StudentPeer::STATUS, 3, Criteria::NOT_EQUAL);
     $this->student_count = StudentPeer::doCount($cmot);
     $c = new Criteria();
     $c->addJoin(StudentAccalPeer::STUDENT_ID, StudentPeer::ID);
     $c->add(StudentAccalPeer::ACADEMIC_CALENDAR_ID, $academic_calendar->getId());
     $c->add(StudentAccalPeer::CLASS_GROUP_ID, $counseling->getClassGroupId());
     $this->sortStudentAccal($c);
     $rpp = $this->getRequestParameter('max_per_page', $this->getUser()->getAttribute('max_per_page', ParamsPeer::retrieveByCode('row_per_page')->getValue(), 'student_accal'));
     $this->getUser()->setAttribute('max_per_page', $rpp, 'student_accal');
     $pager = new sfPropelPager('StudentAccal', $rpp);
     $pager->setCriteria($c);
     $page = $this->getRequestParameter('page', $this->getUser()->getAttribute('page', 1, 'student_accal'));
     $this->getUser()->setAttribute('page', $page, 'student_accal');
     $pager->setPage($page);
     $pager->init();
     $this->pager = $pager;
     $actions = array();
     array_unshift($actions, array('name' => 'Print PDF', 'url' => "counseling/listLedgerAllAsPDF?accal_id=" . $academic_calendar->getId() . "&counseling_id=" . $counseling->getId(), 'color' => 'black', 'type' => 'direct'));
     array_unshift($actions, array('name' => 'Print Excel', 'url' => "counseling/listLedgerAllAsCSV?accal_id=" . $academic_calendar->getId() . "&counseling_id=" . $counseling->getId(), 'color' => 'black', 'type' => 'direct'));
     $this->actions = $actions;
     $actions2 = array(array('name' => '<span>' . $academic_calendar->toString() . '</span>', 'url' => 'rpt_counseling/list', 'color' => 'volcadot'));
     array_push($actions2, array('name' => '<span>Ledger Nilai Raport</span>', 'url' => 'rpt_counseling/listLedger?accal_id=' . $academic_calendar->getId() . '&counseling_id=' . $counseling->getId(), 'color' => 'sun'));
     array_push($actions2, array('name' => '<span>Ledger Pembiasaan</span>', 'url' => 'rpt_counseling/listLedgerHabit?accal_id=' . $academic_calendar->getId() . '&counseling_id=' . $counseling->getId(), 'color' => 'sun'));
     array_push($actions2, array('name' => '<span>Ledger Gabungan</span>', 'url' => 'rpt_counseling/listLedgerAll?accal_id=' . $academic_calendar->getId() . '&counseling_id=' . $counseling->getId(), 'color' => 'sky', 'type' => 'direct'));
     array_push($actions2, array('name' => '<span>Ranking Paralel</span>', 'url' => 'rpt_counseling/listParalel?accal_id=' . $academic_calendar->getId() . '&counseling_id=' . $counseling->getId(), 'color' => 'sun'));
     $this->actions2 = $actions2;
     $this->counseling = $counseling;
     $this->subtitle = $academic_calendar->getName() . ' # Kelas : ' . $counseling->getClassGroup()->toString();
     $this->academic_calendar = $academic_calendar;
 }
Ejemplo n.º 6
0
                        			<td style="font-weight: bold;"><?php 
        if (VClassGroupPeer::retrieveByPK($payment_status->getClassGroup()->getParent())->getParent() != 34) {
            echo $payment_status->getClassGroup() ? $payment_status->getClassGroup()->toString() . ' - ' . VClassGroupPeer::retrieveByPK($payment_status->getClassGroup()->getParent())->getParentName() : '-';
        } else {
            echo $payment_status->getClassGroup() ? $payment_status->getClassGroup()->toString() . ' - ' . $payment_status->getClassGroup()->getParentName() : '-';
        }
        ?>
						</td>
                        
                        			<td style="text-align: center;"><?php 
        $cw = new Criteria();
        $cw->add(AcademicCalendarPeer::COURSE_MODEL, 'A');
        $cw->add(AcademicCalendarPeer::PARENT, $payment_status->getAcademicCalendarId());
        $cw->addJoin(StudentAccalPeer::ACADEMIC_CALENDAR_ID, AcademicCalendarPeer::ID);
        $cw->add(StudentAccalPeer::CLASS_GROUP_ID, $payment_status->getClassGroupId());
        $total_student = StudentAccalPeer::doCount($cw);
        echo $total_student ? link_to_remote($total_student, array('url' => 'history_spp/listStudent?class_group_id=' . $payment_status->getClassGroupId() . '&accal_id=' . $payment_status->getAcademicCalendarId() . '&user_id=' . $payment_status->getUserId() . '&month=' . $payment_status->getMonth(), 'update' => 'content', 'script' => 'true', 'before' => "this.blur();showIndicator('content', 'snakebig_black');", 'complete' => "hideIndicator()"), array('class' => 'white')) : '-';
        ?>
</td>                      
                                                
						<td style="text-align:right;"><?php 
        $y = $payment_status->getAmount() * $total_student;
        echo format_number($y);
        ?>
</td>
                        
                        			<td style="text-align:center;">
						<?php 
        echo $payment_status->getStudentCount() ? link_to_remote($payment_status->getStudentCount(), array('url' => 'history_spp/listPaid?class_group_id=' . $payment_status->getClassGroupId() . '&accal_id=' . $payment_status->getAcademicCalendarId() . '&user_id=' . $payment_status->getUserId() . '&month=' . $payment_status->getMonth(), 'update' => 'content', 'script' => 'true', 'before' => "this.blur();showIndicator('content', 'snakebig_black');", 'complete' => "hideIndicator()"), array('class' => 'white')) : '-';
        ?>
</td>
Ejemplo n.º 7
0
 public function executePrintFinal()
 {
     $counseling_id = $this->getRequestParameter('counseling_id');
     $counseling = CounselingPeer::retrieveByPK($counseling_id);
     $this->forward404Unless($counseling);
     $academic_calendar = AcademicCalendarPeer::retrieveByPK($this->getRequestParameter('accal_id'));
     $this->forward404Unless($academic_calendar);
     $time = $this->getRequestParameter('time');
     $time2 = $this->getRequestParameter('time2');
     $tgl = $this->getRequestParameter('tgl_cetak');
     $term = $this->getRequestParameter('term');
     $c = new Criteria();
     $c->add(TempTablePeer::COUNSELING_ID, $counseling->getId());
     $c->add(TempTablePeer::TIME, $time);
     $c->addJoin(VStudentActivePeer::ID, TempTablePeer::STUDENT_ID);
     $c->addAscendingOrderByColumn(VStudentActivePeer::CLASS_NAME);
     $students = VStudentActivePeer::doSelect($c);
     $this->forward404Unless($students);
     ## Mengelompokkan Penilaian Anak berdasarkan Tahun Ajaran dan Kelas
     $cri = new Criteria();
     $cri->add(StudentNotePeer::CLASS_GROUP_ID, $counseling->getClassGroupId());
     $cri->add(StudentNotePeer::ACADEMIC_CALENDAR_ID, $academic_calendar->getId());
     $stunotes = StudentNotePeer::doSelect($cri);
     $notes = array();
     foreach ($stunotes as $stunote) {
         $notes[$stunote->getStudentId() . '#' . $stunote->getRanking()] = $stunote->getNote();
     }
     $this->notes = $notes;
     $this->stunotes = $stunotes;
     ## Daftar Mata Pelajaran di Jadwal Pelajaran
     $cw = new Criteria();
     $cw->add(VCoursePeer::CLASS_GROUP_ID, $counseling->getClassGroupId());
     $cw->add(VCoursePeer::ACADEMIC_CALENDAR_ID, $academic_calendar->getId());
     $subjects = VCoursePeer::doSelect($cw);
     $subject_ids = array();
     foreach ($subjects as $subject) {
         $subject_ids[] = $subject->getSubjectCurrId();
     }
     $this->subjects = $subjects;
     ## Mengelompokkan Penilaian Anak berdasarkan Tahun Ajaran dan Kelas
     $cr = new Criteria();
     $cr->add(StudentRaportPeer::CLASS_GROUP_ID, $counseling->getClassGroupId());
     $cr->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $academic_calendar->getId());
     $stugrades = StudentRaportPeer::doSelect($cr);
     $this->stugrades = $stugrades;
     ## Menentukan Aturan Penilaian
     $cd = new Criteria();
     #$cd->add(ScoreRulePeer::ACADEMIC_CALENDAR_ID, $counseling->getAcademicCalendarId());
     $cd->add(ClassGroupPeer::DEPARTMENT_ID, $counseling->getAcademicCalendar()->getDepartmentId());
     $cd->addJoin(ScoreRulePeer::CLASS_GROUP_ID, ClassGroupPeer::ID);
     $cd->add(ScoreRulePeer::TYPE, 6);
     $score_rule = ScoreRulePeer::doSelectOne($cd);
     $this->score_rule = $score_rule;
     ## Menentukan Aturan Penilaian Yang digunakan
     $cm = new Criteria();
     $cm->add(ScoreRuleSubjectPeer::SCORE_RULE_ID, $score_rule->getId(), Criteria::IN);
     $cm->add(ScoreRuleSubjectPeer::PUBLISHED, 1, Criteria::IN);
     $cm->add(ScoreRuleSubjectPeer::SUBJECT_CURR_ID, $subject_ids, Criteria::IN);
     $cm->addAscendingOrderByColumn(ScoreRuleSubjectPeer::SEQUENCE);
     $list_subs = ScoreRuleSubjectPeer::doSelect($cm);
     $subject_count = ScoreRuleSubjectPeer::doCount($cm);
     $this->list_subs = $list_subs;
     $this->subject_count = $subject_count;
     ## Kelompokkan Mata Pelajaran Muatan Nasional
     $cmi = new Criteria();
     $cmi->add(ScoreRuleSubjectPeer::SCORE_RULE_ID, $score_rule->getId(), Criteria::IN);
     $cmi->add(ScoreRuleSubjectPeer::PUBLISHED, 1, Criteria::IN);
     $cmi->add(ScoreRuleSubjectPeer::SUBJECT_TYPE, 1, Criteria::IN);
     $cmi->add(ScoreRuleSubjectPeer::SUBJECT_CURR_ID, $subject_ids, Criteria::IN);
     $cmi->addAscendingOrderByColumn(ScoreRuleSubjectPeer::SEQUENCE);
     $subs1 = ScoreRuleSubjectPeer::doSelect($cmi);
     $subs1_count = ScoreRuleSubjectPeer::doCount($cmi);
     $this->subs1 = $subs1;
     $this->subs1_count = $subs1_count;
     ## Kelompokkan Mata Pelajaran Muatan Lokal
     $ciw = new Criteria();
     $ciw->add(ScoreRuleSubjectPeer::SCORE_RULE_ID, $score_rule->getId(), Criteria::IN);
     $ciw->add(ScoreRuleSubjectPeer::PUBLISHED, 1, Criteria::IN);
     $ciw->add(ScoreRuleSubjectPeer::SUBJECT_TYPE, 2, Criteria::IN);
     $ciw->add(ScoreRuleSubjectPeer::SUBJECT_CURR_ID, $subject_ids, Criteria::IN);
     $ciw->addAscendingOrderByColumn(ScoreRuleSubjectPeer::SEQUENCE);
     $subs2 = ScoreRuleSubjectPeer::doSelect($ciw);
     $subs2_count = ScoreRuleSubjectPeer::doCount($ciw);
     $this->subs2 = $subs2;
     $this->subs2_count = $subs2_count;
     ## Kelompokkan Mata Pelajaran IPA
     $ci = new Criteria();
     $ci->add(ScoreRuleSubjectPeer::SCORE_RULE_ID, $score_rule->getId(), Criteria::IN);
     $ci->add(ScoreRuleSubjectPeer::PUBLISHED, 1, Criteria::IN);
     $ci->add(ScoreRuleSubjectPeer::SUBJECT_TYPE, 3, Criteria::IN);
     $ci->add(ScoreRuleSubjectPeer::SUBJECT_CURR_ID, $subject_ids, Criteria::IN);
     $ci->addAscendingOrderByColumn(ScoreRuleSubjectPeer::SEQUENCE);
     $ipas = ScoreRuleSubjectPeer::doSelect($ci);
     $ipas_count = ScoreRuleSubjectPeer::doCount($ci);
     $this->ipas = $ipas;
     $this->ipas_count = $ipas_count;
     ## Kelompokkan Mata Pelajaran IPS
     $cit = new Criteria();
     $cit->add(ScoreRuleSubjectPeer::SCORE_RULE_ID, $score_rule->getId(), Criteria::IN);
     $cit->add(ScoreRuleSubjectPeer::PUBLISHED, 1, Criteria::IN);
     $cit->add(ScoreRuleSubjectPeer::SUBJECT_TYPE, 4, Criteria::IN);
     $cit->add(ScoreRuleSubjectPeer::SUBJECT_CURR_ID, $subject_ids, Criteria::IN);
     $cit->addAscendingOrderByColumn(ScoreRuleSubjectPeer::SEQUENCE);
     $ips = ScoreRuleSubjectPeer::doSelect($cit);
     $ips_count = ScoreRuleSubjectPeer::doCount($cit);
     $this->ips = $ips;
     $this->ips_count = $ips_count;
     ## Kelompokkan Mata Pelajaran Setelah IPS
     $cet = new Criteria();
     $cet->add(ScoreRuleSubjectPeer::SCORE_RULE_ID, $score_rule->getId(), Criteria::IN);
     $cet->add(ScoreRuleSubjectPeer::PUBLISHED, 1, Criteria::IN);
     $cet->add(ScoreRuleSubjectPeer::SUBJECT_TYPE, 5, Criteria::IN);
     $cet->add(ScoreRuleSubjectPeer::SUBJECT_CURR_ID, $subject_ids, Criteria::IN);
     $cet->addAscendingOrderByColumn(ScoreRuleSubjectPeer::SEQUENCE);
     $subs3 = ScoreRuleSubjectPeer::doSelect($cet);
     $subs3_count = ScoreRuleSubjectPeer::doCount($cet);
     $this->subs3 = $subs3;
     $this->subs3_count = $subs3_count;
     ## Kelompokkan Mata Pelajaran Pilihan
     $cetr = new Criteria();
     $cetr->add(ScoreRuleSubjectPeer::SCORE_RULE_ID, $score_rule->getId(), Criteria::IN);
     $cetr->add(ScoreRuleSubjectPeer::PUBLISHED, 1, Criteria::IN);
     $cetr->add(ScoreRuleSubjectPeer::SUBJECT_TYPE, 6, Criteria::IN);
     #$cet->add(ScoreRuleSubjectPeer::SUBJECT_CURR_ID, $subject_ids, Criteria::IN);
     $cetr->addAscendingOrderByColumn(ScoreRuleSubjectPeer::SEQUENCE);
     $subs4 = ScoreRuleSubjectPeer::doSelect($cetr);
     $subs4_count = ScoreRuleSubjectPeer::doCount($cetr);
     $this->subs4 = $subs4;
     $this->subs4_count = $subs4_count;
     ## Mengelompokkan Penilaian Anak berdasarkan Tahun Ajaran dan Kelas
     $cem = new Criteria();
     $cem->add(StudentAccalPeer::ACADEMIC_CALENDAR_ID, $academic_calendar->getId());
     $cem->add(StudentAccalPeer::CLASS_GROUP_ID, $counseling->getClassGroupId());
     $cem->add(StudentAccalPeer::STATUS, 1);
     $stu_accs = StudentAccalPeer::doSelect($cem);
     $this->stu_accs = $stu_accs;
     $cw = new Criteria();
     $cw->add(CourseRegulationPeer::ACADEMIC_CALENDAR_ID, $academic_calendar->getId());
     $cw->add(CourseRegulationPeer::CLASS_GROUP_ID, $counseling->getClassGroupId());
     $c_regulations = CourseRegulationPeer::doSelect($cw);
     $this->c_regulations = $c_regulations;
     $crd = new Criteria();
     $crd->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $academic_calendar->getId());
     $crd->add(StudentRaportPeer::CLASS_GROUP_ID, $counseling->getClassGroupId());
     $stud_raports = StudentRaportPeer::doSelect($crd);
     $sub_grade_spec = array();
     foreach ($stud_raports as $stu_raport) {
         $sub_grade_spec[$stu_raport->getGradeSpecId() . '#' . $stu_raport->getStudentId()] = $stu_raport;
     }
     $this->sub_grade_spec = $sub_grade_spec;
     $specs = array();
     foreach ($stu_accs as $stu_acc) {
         $specs[$stu_acc->getStudentId()] = $stu_acc->getId();
     }
     $this->specs = $specs;
     $grades = array();
     $grade_avg = array();
     foreach ($stugrades as $stugrade) {
         $grades[$stugrade->getSubjectCurrId() . '#' . $stugrade->getStudentId() . '#' . $stugrade->getGradeSpecId()] = $stugrade->getGrade();
         $grade_avg[$stugrade->getSubjectCurrId() . '#' . $stugrade->getGradeSpecId()] = (array_key_exists($stugrade->getsubjectCurrId() . '#' . $stugrade->getGradeSpecId(), $grade_avg) ? $grade_avg[$stugrade->getSubjectCurrId() . '#' . $stugrade->getGradeSpecId()] : 0) + $stugrade->getGrade();
     }
     $this->grades = $grades;
     $this->grade_avg = $grade_avg;
     $course_reg = array();
     foreach ($c_regulations as $cr) {
         $course_reg[$cr->getSubjectCurrId()] = $cr->getKkm();
     }
     $this->course_reg = $course_reg;
     $ce = new Criteria();
     $ce->add(DepartmentDetailPeer::DEPARTMENT_ID, $counseling->getAcademicCalendar()->getDepartmentId());
     $this->department_detail = DepartmentDetailPeer::doSelectOne($ce);
     $cwe = new Criteria();
     $cwe->add(GradeComponentPeer::DEPARTMENT_ID, $academic_calendar->getDepartmentId(), Criteria::IN);
     $cton1 = $cwe->getNewCriterion(GradeComponentPeer::GRADE_SPEC_ID, 20, Criteria::IN);
     $cton2 = $cwe->getNewCriterion(GradeComponentPeer::PUBLISHED, 1, Criteria::IN);
     $cton1->addAnd($cton2);
     $cwe->add($cton1);
     $this->grade_components = GradeComponentPeer::doSelect($cwe);
     $cmot = new Criteria();
     $cmot->add(StudentAccalPeer::CLASS_GROUP_ID, $counseling->getClassGroupId());
     $cmot->add(StudentAccalPeer::ACADEMIC_CALENDAR_ID, $academic_calendar->getId());
     $cmot->addJoin(StudentPeer::ID, StudentAccalPeer::STUDENT_ID);
     $this->student_count = StudentPeer::doCount($cmot);
     $this->students = $students;
     $this->subtitle = '';
     $this->counseling = $counseling;
     $this->tanggal = $time;
     $this->tgl_cetak = $tgl;
     $this->time2 = $time2;
     $this->term = $term;
     $this->academic_calendar = $academic_calendar;
     $ctn = new Criteria();
     $ctn->add(GradeConversionPeer::DEPARTMENT_ID, $academic_calendar->getDepartmentId());
     $grade_conversions = GradeConversionPeer::doSelect($ctn);
     $name_select = array();
     foreach ($grade_conversions as $grade_conversion) {
         $name_select[$grade_conversion->getTypeConversion() . '#' . $grade_conversion->getGrade()] = $grade_conversion;
     }
     $this->name_select = $name_select;
     ## Spesialisasi Untuk MI
     if ($academic_calendar->getDepartmentId() == 6) {
         $this->orientation = 'landscape';
         $this->papersize = 'legal';
         $this->setTemplate('printFinal');
         ## Spesialisasi Untuk SMPIA 9
     } elseif ($academic_calendar->getDepartmentId() == 11) {
         $this->orientation = 'portrait';
         $this->papersize = 'a4';
         $this->setTemplate('printFinalSMP9');
     } else {
         $this->orientation = 'portrait';
         $this->papersize = 'a4';
         $this->setTemplate('printFinal');
     }
     $this->setViewClass('sfDomPDF');
 }
Ejemplo n.º 8
0
 /**
  * prepareStudents function
  * function to get student accal and set to $this->students
  * Have to set Academic Calendar and Class Group before call this function
  * @return array
  */
 public function prepareStudents()
 {
     $this->studentsCount = StudentAccalPeer::getStudentClassCount($this->getAcademicCalendar()->getId(), $this->getClassGroup()->getId());
     if ($this->studentsCount > 0) {
         $this->students = StudentAccalPeer::getStudentClass($this->getAcademicCalendar()->getId(), $this->getClassGroup()->getId());
         return true;
     } else {
         $this->students = false;
         return false;
     }
 }
Ejemplo n.º 9
0
 public static function doSelectJoinAllExceptScheduleDetail(Criteria $c, $con = null)
 {
     $c = clone $c;
     if ($c->getDbName() == Propel::getDefaultDB()) {
         $c->setDbName(self::DATABASE_NAME);
     }
     VStudentRaportPeer::addSelectColumns($c);
     $startcol2 = VStudentRaportPeer::NUM_COLUMNS - VStudentRaportPeer::NUM_LAZY_LOAD_COLUMNS + 1;
     StudentPeer::addSelectColumns($c);
     $startcol3 = $startcol2 + StudentPeer::NUM_COLUMNS;
     StudentAccalPeer::addSelectColumns($c);
     $startcol4 = $startcol3 + StudentAccalPeer::NUM_COLUMNS;
     StudentCoursePeer::addSelectColumns($c);
     $startcol5 = $startcol4 + StudentCoursePeer::NUM_COLUMNS;
     GradeComponentPeer::addSelectColumns($c);
     $startcol6 = $startcol5 + GradeComponentPeer::NUM_COLUMNS;
     GradeSpecPeer::addSelectColumns($c);
     $startcol7 = $startcol6 + GradeSpecPeer::NUM_COLUMNS;
     CitationPeer::addSelectColumns($c);
     $startcol8 = $startcol7 + CitationPeer::NUM_COLUMNS;
     SubjectCurrPeer::addSelectColumns($c);
     $startcol9 = $startcol8 + SubjectCurrPeer::NUM_COLUMNS;
     ClassGroupPeer::addSelectColumns($c);
     $startcol10 = $startcol9 + ClassGroupPeer::NUM_COLUMNS;
     AcademicCalendarPeer::addSelectColumns($c);
     $startcol11 = $startcol10 + AcademicCalendarPeer::NUM_COLUMNS;
     SchedulePeer::addSelectColumns($c);
     $startcol12 = $startcol11 + SchedulePeer::NUM_COLUMNS;
     $c->addJoin(VStudentRaportPeer::STUDENT_ID, StudentPeer::ID);
     $c->addJoin(VStudentRaportPeer::STUDENT_ACCAL_ID, StudentAccalPeer::ID);
     $c->addJoin(VStudentRaportPeer::STUDENT_COURSE_ID, StudentCoursePeer::ID);
     $c->addJoin(VStudentRaportPeer::GRADE_COMPONENT_ID, GradeComponentPeer::ID);
     $c->addJoin(VStudentRaportPeer::GRADE_SPEC_ID, GradeSpecPeer::ID);
     $c->addJoin(VStudentRaportPeer::CITATION_ID, CitationPeer::ID);
     $c->addJoin(VStudentRaportPeer::SUBJECT_CURR_ID, SubjectCurrPeer::ID);
     $c->addJoin(VStudentRaportPeer::CLASS_GROUP_ID, ClassGroupPeer::ID);
     $c->addJoin(VStudentRaportPeer::ACADEMIC_CALENDAR_ID, AcademicCalendarPeer::ID);
     $c->addJoin(VStudentRaportPeer::SCHEDULE_ID, SchedulePeer::ID);
     $rs = BasePeer::doSelect($c, $con);
     $results = array();
     while ($rs->next()) {
         $omClass = VStudentRaportPeer::getOMClass();
         $cls = Propel::import($omClass);
         $obj1 = new $cls();
         $obj1->hydrate($rs);
         $omClass = StudentPeer::getOMClass();
         $cls = Propel::import($omClass);
         $obj2 = new $cls();
         $obj2->hydrate($rs, $startcol2);
         $newObject = true;
         for ($j = 0, $resCount = count($results); $j < $resCount; $j++) {
             $temp_obj1 = $results[$j];
             $temp_obj2 = $temp_obj1->getStudent();
             if ($temp_obj2->getPrimaryKey() === $obj2->getPrimaryKey()) {
                 $newObject = false;
                 $temp_obj2->addVStudentRaport($obj1);
                 break;
             }
         }
         if ($newObject) {
             $obj2->initVStudentRaports();
             $obj2->addVStudentRaport($obj1);
         }
         $omClass = StudentAccalPeer::getOMClass();
         $cls = Propel::import($omClass);
         $obj3 = new $cls();
         $obj3->hydrate($rs, $startcol3);
         $newObject = true;
         for ($j = 0, $resCount = count($results); $j < $resCount; $j++) {
             $temp_obj1 = $results[$j];
             $temp_obj3 = $temp_obj1->getStudentAccal();
             if ($temp_obj3->getPrimaryKey() === $obj3->getPrimaryKey()) {
                 $newObject = false;
                 $temp_obj3->addVStudentRaport($obj1);
                 break;
             }
         }
         if ($newObject) {
             $obj3->initVStudentRaports();
             $obj3->addVStudentRaport($obj1);
         }
         $omClass = StudentCoursePeer::getOMClass();
         $cls = Propel::import($omClass);
         $obj4 = new $cls();
         $obj4->hydrate($rs, $startcol4);
         $newObject = true;
         for ($j = 0, $resCount = count($results); $j < $resCount; $j++) {
             $temp_obj1 = $results[$j];
             $temp_obj4 = $temp_obj1->getStudentCourse();
             if ($temp_obj4->getPrimaryKey() === $obj4->getPrimaryKey()) {
                 $newObject = false;
                 $temp_obj4->addVStudentRaport($obj1);
                 break;
             }
         }
         if ($newObject) {
             $obj4->initVStudentRaports();
             $obj4->addVStudentRaport($obj1);
         }
         $omClass = GradeComponentPeer::getOMClass();
         $cls = Propel::import($omClass);
         $obj5 = new $cls();
         $obj5->hydrate($rs, $startcol5);
         $newObject = true;
         for ($j = 0, $resCount = count($results); $j < $resCount; $j++) {
             $temp_obj1 = $results[$j];
             $temp_obj5 = $temp_obj1->getGradeComponent();
             if ($temp_obj5->getPrimaryKey() === $obj5->getPrimaryKey()) {
                 $newObject = false;
                 $temp_obj5->addVStudentRaport($obj1);
                 break;
             }
         }
         if ($newObject) {
             $obj5->initVStudentRaports();
             $obj5->addVStudentRaport($obj1);
         }
         $omClass = GradeSpecPeer::getOMClass();
         $cls = Propel::import($omClass);
         $obj6 = new $cls();
         $obj6->hydrate($rs, $startcol6);
         $newObject = true;
         for ($j = 0, $resCount = count($results); $j < $resCount; $j++) {
             $temp_obj1 = $results[$j];
             $temp_obj6 = $temp_obj1->getGradeSpec();
             if ($temp_obj6->getPrimaryKey() === $obj6->getPrimaryKey()) {
                 $newObject = false;
                 $temp_obj6->addVStudentRaport($obj1);
                 break;
             }
         }
         if ($newObject) {
             $obj6->initVStudentRaports();
             $obj6->addVStudentRaport($obj1);
         }
         $omClass = CitationPeer::getOMClass();
         $cls = Propel::import($omClass);
         $obj7 = new $cls();
         $obj7->hydrate($rs, $startcol7);
         $newObject = true;
         for ($j = 0, $resCount = count($results); $j < $resCount; $j++) {
             $temp_obj1 = $results[$j];
             $temp_obj7 = $temp_obj1->getCitation();
             if ($temp_obj7->getPrimaryKey() === $obj7->getPrimaryKey()) {
                 $newObject = false;
                 $temp_obj7->addVStudentRaport($obj1);
                 break;
             }
         }
         if ($newObject) {
             $obj7->initVStudentRaports();
             $obj7->addVStudentRaport($obj1);
         }
         $omClass = SubjectCurrPeer::getOMClass();
         $cls = Propel::import($omClass);
         $obj8 = new $cls();
         $obj8->hydrate($rs, $startcol8);
         $newObject = true;
         for ($j = 0, $resCount = count($results); $j < $resCount; $j++) {
             $temp_obj1 = $results[$j];
             $temp_obj8 = $temp_obj1->getSubjectCurr();
             if ($temp_obj8->getPrimaryKey() === $obj8->getPrimaryKey()) {
                 $newObject = false;
                 $temp_obj8->addVStudentRaport($obj1);
                 break;
             }
         }
         if ($newObject) {
             $obj8->initVStudentRaports();
             $obj8->addVStudentRaport($obj1);
         }
         $omClass = ClassGroupPeer::getOMClass();
         $cls = Propel::import($omClass);
         $obj9 = new $cls();
         $obj9->hydrate($rs, $startcol9);
         $newObject = true;
         for ($j = 0, $resCount = count($results); $j < $resCount; $j++) {
             $temp_obj1 = $results[$j];
             $temp_obj9 = $temp_obj1->getClassGroup();
             if ($temp_obj9->getPrimaryKey() === $obj9->getPrimaryKey()) {
                 $newObject = false;
                 $temp_obj9->addVStudentRaport($obj1);
                 break;
             }
         }
         if ($newObject) {
             $obj9->initVStudentRaports();
             $obj9->addVStudentRaport($obj1);
         }
         $omClass = AcademicCalendarPeer::getOMClass();
         $cls = Propel::import($omClass);
         $obj10 = new $cls();
         $obj10->hydrate($rs, $startcol10);
         $newObject = true;
         for ($j = 0, $resCount = count($results); $j < $resCount; $j++) {
             $temp_obj1 = $results[$j];
             $temp_obj10 = $temp_obj1->getAcademicCalendar();
             if ($temp_obj10->getPrimaryKey() === $obj10->getPrimaryKey()) {
                 $newObject = false;
                 $temp_obj10->addVStudentRaport($obj1);
                 break;
             }
         }
         if ($newObject) {
             $obj10->initVStudentRaports();
             $obj10->addVStudentRaport($obj1);
         }
         $omClass = SchedulePeer::getOMClass();
         $cls = Propel::import($omClass);
         $obj11 = new $cls();
         $obj11->hydrate($rs, $startcol11);
         $newObject = true;
         for ($j = 0, $resCount = count($results); $j < $resCount; $j++) {
             $temp_obj1 = $results[$j];
             $temp_obj11 = $temp_obj1->getSchedule();
             if ($temp_obj11->getPrimaryKey() === $obj11->getPrimaryKey()) {
                 $newObject = false;
                 $temp_obj11->addVStudentRaport($obj1);
                 break;
             }
         }
         if ($newObject) {
             $obj11->initVStudentRaports();
             $obj11->addVStudentRaport($obj1);
         }
         $results[] = $obj1;
     }
     return $results;
 }
Ejemplo n.º 10
0
 public function executeGetListEkskul()
 {
     $academic_calendar_id = $this->getRequestParameter('academic_calendar_id');
     $academic_calendar = AcademicCalendarPeer::retrieveByPK($academic_calendar_id);
     $this->academic_calendar = $academic_calendar;
     $this->accal = $academic_calendar->getId();
     $student_id = $this->getRequestParameter('student_id');
     $student = StudentPeer::retrieveByPK($student_id);
     $this->forward404Unless($student);
     $this->student = $student;
     $c = new Criteria();
     $c->add(StudentAccalPeer::STUDENT_ID, $student_id, Criteria::IN);
     $c->add(StudentAccalPeer::ACADEMIC_CALENDAR_ID, $academic_calendar_id, Criteria::IN);
     $stu_accal = StudentAccalPeer::doSelectOne($c);
     $this->stu_accal = $stu_accal;
     $cw = new Criteria();
     $cw->add(CounselingPeer::CLASS_GROUP_ID, $stu_accal->getClassGroupId());
     $cw->add(CounselingPeer::ACADEMIC_CALENDAR_ID, $academic_calendar->getParent());
     $counseling = CounselingPeer::doSelectOne($cw);
     $this->counseling = $counseling;
     $c = new Criteria();
     $c->add(StudentRaportPeer::STUDENT_ID, $student->getId());
     $c->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $academic_calendar->getId());
     $c->addJoin(GradeComponentPeer::ID, StudentRaportPeer::GRADE_COMPONENT_ID);
     $c->add(GradeComponentPeer::GRADE_SPEC_ID, 21);
     $c->addAscendingOrderByColumn(GradeComponentPeer::NAME);
     $this->sort($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->filter($c, $this->getRequestParameter('filters'));
             }
         }
     }
     $rpp = $this->getRequestParameter('max_per_page', $this->getUser()->getAttribute('max_per_page', ParamsPeer::retrieveByCode('row_per_page')->getValue(), 'grade_component'));
     $this->getUser()->setAttribute('max_per_page', $rpp, 'grade_component');
     $pager = new sfPropelPager('GradeComponent', $rpp);
     $pager->setCriteria($c);
     $page = $this->getRequestParameter('page', $this->getUser()->getAttribute('page', 1, 'grade_component'));
     $this->getUser()->setAttribute('page', $page, 'grade_component');
     $pager->setPage($page);
     $pager->init();
     $this->pager = $pager;
     $actions = array();
     array_unshift($actions, array('name' => '_AS_CSV_', 'url' => "student_ekskul/listEkskulAsCSV?academic_calendar_id=" . $academic_calendar->getId() . "&student_id=" . $student->getId(), 'color' => 'black', 'type' => 'direct'));
     array_unshift($actions, array('name' => '_AS_PDF_', 'url' => "student_ekskul/listEkskulAsPDF?academic_calendar_id=" . $academic_calendar->getId() . "&student_id=" . $student->getId(), 'color' => 'black', 'type' => 'direct'));
     $this->actions = $actions;
     $this->subtitle = $academic_calendar->getName();
 }
Ejemplo n.º 11
0
 public function getStudentAccalsJoinAcademicCalendar($criteria = null, $con = null)
 {
     include_once 'lib/model/om/BaseStudentAccalPeer.php';
     if ($criteria === null) {
         $criteria = new Criteria();
     } elseif ($criteria instanceof Criteria) {
         $criteria = clone $criteria;
     }
     if ($this->collStudentAccals === null) {
         if ($this->isNew()) {
             $this->collStudentAccals = array();
         } else {
             $criteria->add(StudentAccalPeer::STUDENT_ID, $this->getId());
             $this->collStudentAccals = StudentAccalPeer::doSelectJoinAcademicCalendar($criteria, $con);
         }
     } else {
         $criteria->add(StudentAccalPeer::STUDENT_ID, $this->getId());
         if (!isset($this->lastStudentAccalCriteria) || !$this->lastStudentAccalCriteria->equals($criteria)) {
             $this->collStudentAccals = StudentAccalPeer::doSelectJoinAcademicCalendar($criteria, $con);
         }
     }
     $this->lastStudentAccalCriteria = $criteria;
     return $this->collStudentAccals;
 }
Ejemplo n.º 12
0
 public function filterStudentAccal($c, $filters)
 {
     $filters_key = array_keys($filters);
     foreach ($filters_key as $key) {
         $value = $filters[$key];
         if ($value == '' || $value == null) {
             continue;
         }
         if ($key == 'DEPARTMENT_ID') {
             $c->addJoin(AcademicCalendarPeer::ID, StudentAccalPeer::ACADEMIC_CALENDAR_ID);
             $c->addJoin(DepartmentPeer::ID, AcademicCalendarPeer::DEPARTMENT_ID);
             $column = DepartmentPeer::getTableMap()->getColumn('ID');
         } elseif ($key == 'CODE') {
             $c->addJoin(StudentPeer::ID, StudentAccalPeer::STUDENT_ID);
             $column = StudentPeer::getTableMap()->getColumn('CODE');
         } elseif ($key == 'CODE2') {
             $c->addJoin(StudentPeer::ID, StudentAccalPeer::STUDENT_ID);
             $column = StudentPeer::getTableMap()->getColumn('CODE2');
         } elseif ($key == 'NAME') {
             $c->addJoin(StudentPeer::ID, StudentAccalPeer::STUDENT_ID);
             $column = StudentPeer::getTableMap()->getColumn('NAME');
         } elseif ($key == 'ACADEMIC_CALENDAR_ID') {
             $c->addJoin(StudentPeer::ID, StudentAccalPeer::STUDENT_ID);
             $column = StudentPeer::getTableMap()->getColumn('ACADEMIC_CALENDAR_ID');
         } else {
             $column = StudentAccalPeer::getTableMap()->getColumn($key);
         }
         $name = $column->getFullyQualifiedName();
         $creoleType = $column->getCreoleType();
         if ($creoleType == CreoleTypes::TIMESTAMP) {
             $from = $value['from'];
             $to = $value['to'];
             if ($from != '' && $from != null) {
                 $c->add($name, $from, Criteria::GREATER_EQUAL);
             }
             if ($to != '' && $to != null) {
                 $c->add($name, $to, Criteria::LESS_EQUAL);
             }
         } else {
             if ($creoleType == CreoleTypes::INTEGER) {
                 if ($name == VStudentActivePeer::CLASS_GROUP_ID) {
                     $cg = ClassGroupPeer::retrieveByPK($value);
                     $c->add($name, $cg->getChildRecurs(), Criteria::IN);
                 } elseif ($name == PayerTypePeer::ID) {
                     $pt = PayerTypePeer::retrieveByPK($value);
                     $c->add($name, $pt->getChildRecurs(), Criteria::IN);
                 } else {
                     $c->add($name, $value, Criteria::EQUAL);
                 }
             } else {
                 if ($creoleType == CreoleTypes::VARCHAR || $creoleType == CreoleTypes::CHAR) {
                     $c->add($name, "%{$value}%", Criteria::LIKE);
                 }
             }
         }
     }
 }
Ejemplo n.º 13
0
 public function executePrintFinal2()
 {
     $counseling_id = $this->getRequestParameter('counseling_id');
     $counseling = CounselingPeer::retrieveByPK($counseling_id);
     $this->forward404Unless($counseling);
     $academic_calendar = AcademicCalendarPeer::retrieveByPK($this->getRequestParameter('accal_id'));
     $this->forward404Unless($academic_calendar);
     $time = $this->getRequestParameter('time');
     $time2 = $this->getRequestParameter('time2');
     $tgl = $this->getRequestParameter('tgl_cetak');
     $c = new Criteria();
     $c->add(TempTablePeer::COUNSELING_ID, $counseling->getId());
     $c->add(TempTablePeer::TIME, $time);
     $c->addJoin(VStudentActivePeer::ID, TempTablePeer::STUDENT_ID);
     $c->addAscendingOrderByColumn(VStudentActivePeer::CLASS_NAME);
     $students = VStudentActivePeer::doSelect($c);
     $this->forward404Unless($students);
     ## Daftar Mata Pelajaran di Jadwal Pelajaran
     $cw = new Criteria();
     $cw->add(VCoursePeer::CLASS_GROUP_ID, $counseling->getClassGroupId());
     $cw->add(VCoursePeer::ACADEMIC_CALENDAR_ID, $academic_calendar->getId());
     $subjects = VCoursePeer::doSelect($cw);
     $course_ids = array();
     $subject_ids = array();
     foreach ($subjects as $subject) {
         $subject_ids[] = $subject->getSubjectCurrId();
         $course_ids[$subject->getSubjectCurrId()] = $subject->getId();
     }
     $this->subjects = $subjects;
     $this->course_ids = $course_ids;
     ## Menentukan Aturan Penilaian (Akhir Semester)
     $cd = new Criteria();
     $cd->add(ScoreRulePeer::CLASS_GROUP_ID, $counseling->getClassGroup()->getParent());
     $cd->add(ScoreRulePeer::ACADEMIC_CALENDAR_ID, $counseling->getAcademicCalendarId());
     $cd->add(ScoreRulePeer::TYPE, ScoreRule::TYPE_TWO);
     $score_rule = ScoreRulePeer::doSelectOne($cd);
     $this->score_rule = $score_rule;
     ## Menentukan Aturan Penilaian (Tengah Semester)
     $cd = new Criteria();
     $cd->add(ScoreRulePeer::CLASS_GROUP_ID, $counseling->getClassGroup()->getParent());
     $cd->add(ScoreRulePeer::ACADEMIC_CALENDAR_ID, $counseling->getAcademicCalendarId());
     $cd->add(ScoreRulePeer::TYPE, ScoreRule::TYPE_ONE);
     $cd->add(ScoreRulePeer::CLASS_TYPE_ID, $counseling->getClassTypeId());
     $score_rule = ScoreRulePeer::doSelectOne($cd);
     $this->score_rule = $score_rule;
     ## Memunculkan semua mata pelajaran yang ada di aturan penilaian
     ## Mengelompokannya untuk kelompok A
     $cm = new Criteria();
     $cm->add(ScoreRuleSubjectPeer::SCORE_RULE_ID, $score_rule->getId(), Criteria::IN);
     $cm->add(ScoreRuleSubjectPeer::PUBLISHED, ScoreRule::ONE, Criteria::IN);
     #$cm->add(ScoreRuleSubjectPeer::SUBJECT_CURR_ID, $subject_ids, Criteria::IN);
     $cton1 = $cm->getNewCriterion(ScoreRuleSubjectPeer::SUBJECT_TYPE, ScoreRuleSubject::SUBJECT_ONE, Criteria::IN);
     $cton2 = $cm->getNewCriterion(ScoreRuleSubjectPeer::SUBJECT_TYPE, ScoreRuleSubject::SUBJECT_THREE, Criteria::IN);
     $cton1->addOr($cton2);
     $cm->add($cton1);
     $cm->addAscendingOrderByColumn(ScoreRuleSubjectPeer::SEQUENCE);
     $list_subs = ScoreRuleSubjectPeer::doSelect($cm);
     $subject_count = ScoreRuleSubjectPeer::doCount($cm);
     $this->list_subs = $list_subs;
     $this->subject_count = $subject_count;
     ## Memunculkan semua mata pelajaran yang ada di aturan penilaian
     ## Mengelompokannya untuk kelompok B
     $cmt = new Criteria();
     $cmt->add(ScoreRuleSubjectPeer::SCORE_RULE_ID, $score_rule->getId(), Criteria::IN);
     $cmt->add(ScoreRuleSubjectPeer::PUBLISHED, ScoreRule::ONE, Criteria::IN);
     $cmt->add(ScoreRuleSubjectPeer::SUBJECT_TYPE, ScoreRuleSubject::SUBJECT_TWO, Criteria::IN);
     $cmt->addAscendingOrderByColumn(ScoreRuleSubjectPeer::SEQUENCE);
     $list_subject = ScoreRuleSubjectPeer::doSelect($cmt);
     $subj_count = ScoreRuleSubjectPeer::doCount($cmt);
     $this->list_subject = $list_subject;
     $this->subj_count = $subj_count;
     $cmti = new Criteria();
     $cmti->add(ScoreRuleSubjectPeer::SCORE_RULE_ID, $score_rule->getId(), Criteria::IN);
     $cmti->add(ScoreRuleSubjectPeer::PUBLISHED, ScoreRule::ONE, Criteria::IN);
     $cmti->add(ScoreRuleSubjectPeer::SUBJECT_TYPE, 5, Criteria::IN);
     $cmti->addAscendingOrderByColumn(ScoreRuleSubjectPeer::SEQUENCE);
     $group_b = ScoreRuleSubjectPeer::doSelectOne($cmti);
     $this->group_b = $group_b;
     $cte = new Criteria();
     $cte->add(StudentAccalPeer::CLASS_GROUP_ID, $counseling->getClassGroupId());
     $cte->add(StudentAccalPeer::ACADEMIC_CALENDAR_ID, $academic_calendar->getId());
     $stuaccals = StudentAccalPeer::doSelect($cte);
     $this->stuaccals = $stuaccals;
     $stuaccal_id = array();
     foreach ($stuaccals as $stuaccal) {
         $stuaccal_id[$stuaccal->getStudentId()] = $stuaccal->getId();
     }
     $this->stuaccal_id = $stuaccal_id;
     ## Mengelompokkan Penilaian Pengetahuan berdasarkan Tahun Ajaran dan Kelas
     $cr = new Criteria();
     $stugrades = StudentGradeRaportPeer::doSelect($cr);
     $this->stugrades = $stugrades;
     $grades = array();
     $grades_value = array();
     $remarks = array();
     $grade_avg = array();
     foreach ($stugrades as $stugrade) {
         $grades[$stugrade->getStudentAccalId() . '#' . $stugrade->getCourseScheduleId() . '#' . $stugrade->getGradeSpecId()] = $stugrade->getGrade();
         $grades_value[$stugrade->getStudentAccalId() . '#' . $stugrade->getCourseScheduleId() . '#' . $stugrade->getGradeSpecId()] = $stugrade->getGradeValue();
         $remarks[$stugrade->getStudentAccalId() . '#' . $stugrade->getCourseScheduleId() . '#' . $stugrade->getGradeSpecId()] = $stugrade->getRemark();
         $grade_avg[$stugrade->getCourseScheduleId() . '#' . $stugrade->getGradeSpecId()] = (array_key_exists($stugrade->getCourseScheduleId() . '#' . $stugrade->getGradeSpecId(), $grade_avg) ? $grade_avg[$stugrade->getCourseScheduleId() . '#' . $stugrade->getGradeSpecId()] : 0) + $stugrade->getGradeValue();
     }
     $this->grades = $grades;
     $this->grade_avg = $grade_avg;
     $this->grades_value = $grades_value;
     $this->remarks = $remarks;
     $cmi = new Criteria();
     $cmi->add(GradeConversionPeer::DEPARTMENT_ID, $academic_calendar->getDepartmentId());
     $cmi->add(GradeConversionPeer::TYPE_CONVERSION, GradeConversion::TYPE_ALL);
     $grade_conversions = GradeConversionPeer::doSelect($cmi);
     $grade_select = array();
     $detail_select = array();
     foreach ($grade_conversions as $grade_conv) {
         $grade_select[$grade_conv->getName()] = $grade_conv->getDescription();
         $detail_select[$grade_conv->getName()] = $grade_conv->getDetail();
     }
     $this->detail_select = $detail_select;
     $this->grade_select = $grade_select;
     $this->grade_conversions = $grade_conversions;
     $cmit = new Criteria();
     $cmit->add(GradeConversionPeer::DEPARTMENT_ID, $academic_calendar->getDepartmentId());
     $grade_convs = GradeConversionPeer::doSelect($cmit);
     $remark_select = array();
     $name_select = array();
     $descript_select = array();
     foreach ($grade_convs as $grade_conve) {
         $remark_select[$grade_conve->getName() . '#' . $grade_conve->getTypeConversion()] = $grade_conve->getDescription();
         $name_select[$grade_conve->getGrade() . '#' . $grade_conve->getTypeConversion()] = $grade_conve->getName();
         $descript_select[$grade_conve->getGrade() . '#' . $grade_conve->getTypeConversion()] = $grade_conve->getDetail();
     }
     $cbt = new Criteria();
     $cbt->add(GradeConversionPeer::DEPARTMENT_ID, $academic_calendar->getDepartmentId());
     $cbt->add(GradeConversionPeer::TYPE_CONVERSION, GradeConversion::TYPE_KNOWLEDGE);
     $know_convs = GradeConversionPeer::doSelect($cbt);
     $this->know_convs = $know_convs;
     $cbti = new Criteria();
     $cbti->add(GradeConversionPeer::DEPARTMENT_ID, $academic_calendar->getDepartmentId());
     $cbti->add(GradeConversionPeer::TYPE_CONVERSION, GradeConversion::TYPE_SKILL);
     $skill_convs = GradeConversionPeer::doSelect($cbti);
     $this->skill_convs = $skill_convs;
     $this->name_select = $name_select;
     $this->remark_select = $remark_select;
     $this->grade_conversions = $grade_conversions;
     ## Penilaian Habit
     $cmi = new Criteria();
     $cmi->add(StudentHabitPeer::CLASS_GROUP_ID, $counseling->getClassGroupId());
     $cmi->add(StudentHabitPeer::ACADEMIC_CALENDAR_ID, $academic_calendar->getId());
     $student_habits = StudentHabitPeer::doSelect($cmi);
     $habit = array();
     foreach ($student_habits as $student_habit) {
         $habit[$student_habit->getGradeComponentId() . '#' . $student_habit->getStudentId()] = $student_habit;
     }
     $this->student_habits = $student_habits;
     $this->habit = $habit;
     $cwi = new Criteria();
     $cwi->add(CourseRegulationPeer::ACADEMIC_CALENDAR_ID, $academic_calendar->getId());
     $cwi->add(CourseRegulationPeer::CLASS_GROUP_ID, $counseling->getClassGroupId());
     $c_regulations = CourseRegulationPeer::doSelect($cwi);
     $course_reg = array();
     foreach ($c_regulations as $cr) {
         $course_reg[$cr->getAcademicCalendarId() . '#' . $cr->getSubjectCurrId() . '#' . $cr->getClassGroupId()] = $cr->getKkm();
     }
     $this->c_regulations = $c_regulations;
     $this->course_reg = $course_reg;
     ## Ekskul
     $cwe = new Criteria();
     $cwe->add(GradeComponentPeer::DEPARTMENT_ID, $counseling->getAcademicCalendar()->getDepartmentId(), Criteria::IN);
     $cton1 = $cwe->getNewCriterion(GradeComponentPeer::GRADE_SPEC_ID, 20, Criteria::IN);
     $cton2 = $cwe->getNewCriterion(GradeComponentPeer::PUBLISHED, 1, Criteria::IN);
     $cton1->addAnd($cton2);
     $cwe->add($cton1);
     $this->grade_components = GradeComponentPeer::doSelect($cwe);
     $this->grade_count = GradeComponentPeer::doCount($cwe);
     $this->course_reg = $course_reg;
     $ce = new Criteria();
     $ce->add(DepartmentDetailPeer::DEPARTMENT_ID, $counseling->getAcademicCalendar()->getDepartmentId());
     $this->department_detail = DepartmentDetailPeer::doSelectOne($ce);
     $cb = new Criteria();
     $cb->add(StudentAbsencePeer::ACADEMIC_CALENDAR_ID, $academic_calendar->getId());
     $cb->addGroupByColumn(StudentAbsencePeer::STUDENT_ID);
     $cb->addGroupByColumn(StudentAbsencePeer::START);
     $cb->addGroupByColumn(StudentAbsencePeer::ACADEMIC_CALENDAR_ID);
     $cb->addGroupByColumn(StudentAbsencePeer::CLASS_GROUP_ID);
     $sas = StudentabsencePeer::doSelect($cb);
     $absence = array();
     if (count($sas)) {
         foreach ($sas as $sa) {
             $absence[$sa->getStatus() . '#' . $sa->getStudentId()] = (array_key_exists($sa->getStatus() . '#' . $sa->getStudentId(), $absence) ? $absence[$sa->getStatus() . '#' . $sa->getStudentId()] : 0) + 1;
         }
     }
     $this->absence = $absence;
     $cmot = new Criteria();
     $cmot->add(StudentAccalPeer::CLASS_GROUP_ID, $counseling->getClassGroupId());
     $cmot->add(StudentAccalPeer::ACADEMIC_CALENDAR_ID, $academic_calendar->getId());
     $cmot->addJoin(StudentPeer::ID, StudentAccalPeer::STUDENT_ID);
     $this->student_count = StudentPeer::doCount($cmot);
     $this->students = $students;
     $this->subtitle = '';
     $this->counseling = $counseling;
     $this->tanggal = $time;
     $this->tgl_cetak = $tgl;
     $this->time2 = $time2;
     $this->academic_calendar = $academic_calendar;
     $this->orientation = 'portrait';
     $this->papersize = 'a4';
     $this->setViewClass('sfDomPDF');
 }
Ejemplo n.º 14
0
                    
                    			<?php 
        $c = new Criteria();
        $c->add(AcademicCalendarPeer::COURSE_MODEL, 'A');
        $c->add(AcademicCalendarPeer::PARENT, $counseling->getAcademicCalendarId());
        $accal1 = AcademicCalendarPeer::doSelectOne($c);
        $cw = new Criteria();
        $cw->add(AcademicCalendarPeer::COURSE_MODEL, 'B');
        $cw->add(AcademicCalendarPeer::PARENT, $counseling->getAcademicCalendarId());
        $accal2 = AcademicCalendarPeer::doSelectOne($cw);
        $bln1 = substr($accal1->getStart(), 5, 2);
        $bln2 = substr($accal2->getStart(), 5, 2);
        $cm = new Criteria();
        $cm->add(StudentAccalPeer::ACADEMIC_CALENDAR_ID, $accal1->getId());
        $cm->add(StudentAccalPeer::CLASS_GROUP_ID, $counseling->getClassGroupId());
        $stu_count = StudentAccalPeer::doCount($cm);
        ?>
                    
					<td><?php 
        echo $stu_count . ' Siswa';
        ?>
</td>                            

                    			<td style="text-align: center;">
					<?php 
        echo link_to_remote(image_tag('agenda.png', 'title=Administrasi Absen'), array('url' => 'counseling_menu/listAbsenceByEmployee?accal_id=' . $accal1->getId() . '&counseling_id=' . $counseling->getId() . '&employee_id=' . $employee_id . '&month_id=' . $bln1, 'update' => 'content', 'script' => 'true', 'before' => "this.blur();showIndicator('content', 'snakebig_black');", 'complete' => "hideIndicator()"));
        ?>
</td>
                    
                    			<td style="text-align: center;">
					<?php 
Ejemplo n.º 15
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');
     $counseling = CounselingPeer::retrieveByPk($this->getRequestParameter('id'));
     $this->forward404Unless($counseling);
     $counseling->setId($this->getRequestParameter('id'));
     $counseling->setAcademicCalendarId($this->getRequestParameter('academic_calendar_id'));
     $counseling->setClassGroupId($this->getRequestParameter('class_group_id'));
     $counseling->setEmployeeId($this->getRequestParameter('employee_id'));
     $counseling->setClassTypeId($this->getRequestParameter('class_type_id'));
     $counseling->save();
     $c = new Criteria();
     $c->add(CounselingTutorPeer::COUNSELING_ID, $counseling->getId());
     CounselingTutorPeer::doDelete($c);
     $tutors = $this->getRequestParameter('isSelected');
     if ($tutors) {
         foreach ($tutors as $id) {
             $cr = new CounselingTutor();
             $cr->setCounseling($counseling);
             $cr->setEmployeeId($id);
             $cr->save();
         }
     }
     $params = array();
     foreach (explode('&', $this->getRequestParameter('student_list_ser')) as $p) {
         $p = explode('=', $p);
         $params[rawurldecode($p[0])][] = rawurldecode($p[1]);
     }
     $accal = AcademicCalendarPeer::retrieveByPk($this->getRequestParameter('academic_calendar_id'));
     if (array_key_exists('students', $params)) {
         foreach ($params['students'] as $stu_id) {
             $stu = StudentPeer::retrieveByPk($stu_id);
             $stu->setAcademicCalendarId($counseling->getAcademicCalendarId());
             $stu->setClassGroupId($counseling->getClassGroupId());
             $stu->save();
             $ct = new Criteria();
             $ct->add(AcademicCalendarPeer::PARENT, $counseling->getAcademicCalendarId());
             $academics = AcademicCalendarPeer::doSelect($ct);
             if ($academics) {
                 foreach ($academics as $academic) {
                     $cr = new Criteria();
                     $cr->add(StudentAccalPeer::STUDENT_ID, $stu_id);
                     $cr->add(StudentAccalPeer::ACADEMIC_CALENDAR_ID, $academic->getId());
                     $stu_accal = StudentAccalPeer::doSelectOne($cr);
                     if ($stu_accal == null) {
                         $stu_accal = new StudentAccal();
                     }
                     $stu_accal->setStudentId($stu_id);
                     $stu_accal->setAcademicCalendarId($academic->getId());
                     $stu_accal->setClassGroupId($counseling->getClassGroupId());
                     $stu_accal->setClassName($stu->getClassName());
                     $stu_accal->setStatus($stu->getStatus());
                     $stu_accal->save();
                 }
             }
         }
     }
     return $this->redirect('counselor/showPreview?id=' . $counseling->getId());
 }
Ejemplo n.º 16
0
 public function executeUpdateStatus()
 {
     $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');
     $student = StudentPeer::retrieveByPk($this->getRequestParameter('id'));
     $this->forward404Unless($student);
     $student->setStatus($this->getRequestParameter('status'));
     $student->save();
     $c = new Criteria();
     $c->add(StudentLeavePeer::STUDENT_ID, $student->getId());
     $student_leave = StudentLeavePeer::doSelectOne($c);
     if ($student_leave == null) {
         $student_leave = new StudentLeave();
     }
     $student_leave->setAcademicCalendarId($this->getRequestParameter('academic_calendar_id'));
     $student_leave->setStatus($this->getRequestParameter('status'));
     $student_leave->setYear($this->getRequestParameter('year'));
     $student_leave->setEndDate($this->getRequestParameter('end_date'));
     $student_leave->setDetail($this->getRequestParameter('detail'));
     $student_leave->setNextSchool($this->getRequestParameter('next_school'));
     $student_leave->setNextLevel($this->getRequestParameter('next_level'));
     $student_leave->save();
     if ($student->getStatus() == Student::STATUS_OVERDUE) {
         $c = new Criteria();
         $c->add(StudentAccalPeer::STUDENT_ID, $student->getId());
         $c->add(StudentAccalPeer::CLASS_GROUP_ID, $student->getClassGroupId());
         $c->add(StudentAccalPeer::ACADEMIC_CALENDAR_ID, $student_leave->getAcademicCalendarId());
         $student_accal = StudentAccalPeer::doSelectOne($c);
         if ($student_accal) {
             $student_accal->setStatus(Student::STATUS_OVERDUE);
             $student_accal->save();
             /**
             				$student_accal->delete();
             				**/
         }
     }
     return $this->redirect('scholar/list');
 }
Ejemplo n.º 17
0
 public function executeListRecapt()
 {
     $employee_id = sfContext::getInstance()->getUser()->getAttribute('user_id', null, 'bo');
     $employee = EmployeePeer::retrieveByPK($employee_id);
     $this->forward404Unless($employee);
     $course_schedule = CourseSchedulePeer::retrieveByPk($this->getRequestParameter('course_id'));
     $this->forward404Unless($course_schedule);
     $this->course_schedule = $course_schedule;
     $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_sd/listRecaptAsCSV?course_id=".$course_schedule->getId(), 'color'=>'black', 'type'=>'direct'));
     #array_unshift($actions, array('name'=>'Print PDF','url'=>"course_sd/listRecaptAsPDF?course_id=".$course_schedule->getId(), 'color'=>'black', 'type'=>'direct'));
     $this->actions = $actions;
     ## Mengambil Kompetensi Dasar Untuk KI.3
     $cur13_ki = ScoreRule::THREE;
     $ct = new Criteria();
     $ct->add(Cur13TermPeer::CUR13_KI_ID, $cur13_ki);
     $ct->add(Cur13TermPeer::COURSE_SCHEDULE_ID, $course_schedule->getId());
     $cur13_terms = Cur13TermPeer::doSelect($ct);
     $cur13_term_count = Cur13TermPeer::doCount($ct);
     $this->cur13_terms = $cur13_terms;
     $this->cur13_term_count = $cur13_term_count;
     $actions2 = array(array('name' => '<span>Penilaian 2013</span>', 'url' => 'course_sd/list?accal_id=' . $course_schedule->getAcademicCalendarId() . '&class_id=' . $course_schedule->getClassGroupId(), 'color' => 'sky'));
     array_push($actions2, array('name' => '<span>Proses Nilai KI.3 (Pengetahuan)</span>', 'url' => 'course_sd/listRecapt?course_id=' . $course_schedule->getId(), 'color' => 'sun', 'type' => 'direct'));
     array_push($actions2, array('name' => '<span>Proses Nilai KI.4 (Keterampilan)</span>', 'url' => 'course_sd/listRecaptKi4?course_id=' . $course_schedule->getId(), 'color' => 'sky'));
     $this->actions2 = $actions2;
     $this->subtitle = $course_schedule->getAcademicCalendar()->getName() . ' # ' . $course_schedule->getSubjectCurr()->getSubject()->getName() . ' - id:' . $course_schedule->getId();
     $this->type = 'edit';
     $this->cur13_ki = $cur13_ki;
     $this->title = 'Proses Nilai Raport KI.3 (Pengetahuan)';
     $c = new Criteria();
     $c->add(StudentAccalPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId());
     $c->add(StudentAccalPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId());
     $c->addJoin(StudentPeer::ID, StudentAccalPeer::STUDENT_ID);
     $c->add(StudentPeer::STATUS, Student::STATUS_ACTIVE);
     $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;
     ## Mengambil Student Accal Id
     $cm = new Criteria();
     $cm->add(StudentAccalPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId());
     $cm->add(StudentAccalPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId());
     $stu_accals = StudentAccalPeer::doSelect($cm);
     $student_accal_id = array();
     foreach ($stu_accals as $stu_accal) {
         $student_accal_id[$stu_accal->getStudentId()] = $stu_accal->getId();
     }
     $this->student_accal_id = $student_accal_id;
     $cri = new Criteria();
     $stuterms = Cur13GradeTermPeer::doSelect($cri);
     $this->stuterms = $stuterms;
     $grade_scale = array();
     $grade_value = array();
     $remark = array();
     foreach ($stuterms as $stuterm) {
         $grade_scale[$stuterm->getStudentAccalId() . '#' . $stuterm->getCur13TermId()] = $stuterm->getGradeScale();
         $grade_value[$stuterm->getStudentAccalId() . '#' . $stuterm->getCur13TermId()] = $stuterm->getGrade();
         $remark[$stuterm->getStudentAccalId() . '#' . $stuterm->getCur13TermId()] = $stuterm->getRemark();
     }
     $this->grade_scale = $grade_scale;
     $this->grade_value = $grade_value;
     $this->remark = $remark;
     $ct = new Criteria();
     $ct->add(GradeConversionPeer::GRADE_CONVERSION_TEMPLATE_ID, 17);
     $grade_convs = GradeConversionPeer::doSelect($ct);
     $descript_select = array();
     foreach ($grade_convs as $grade_conv) {
         $descript_select[$grade_conv->getName()] = $grade_conv->getDescription();
     }
     $this->descript_select = $descript_select;
 }
Ejemplo n.º 18
0
 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(StudentAccalPeer::ID, $pks, Criteria::IN);
         $objs = StudentAccalPeer::doSelect($criteria, $con);
     }
     return $objs;
 }
Ejemplo n.º 19
0
 public function executeListHistoryScore()
 {
     $student_id = sfContext::getInstance()->getUser()->getAttribute('user_id', null, 'bo');
     $student = StudentPeer::retrieveByPK($student_id);
     $this->forward404Unless($student);
     $course_schedule = CourseSchedulePeer::retrieveByPk($this->getRequestParameter('course_id'));
     $this->forward404Unless($course_schedule);
     $course_schedule_id = $course_schedule->getId();
     $c = new Criteria();
     $c->addJoin(StudentAccalPeer::STUDENT_ID, VStudentActivePeer::ID);
     $c->add(StudentAccalPeer::STUDENT_ID, $student->getId());
     $c->add(StudentAccalPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId());
     $c->add(StudentAccalPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId());
     $student_accal = StudentAccalPeer::doSelectOne($c);
     $this->forward404Unless($student_accal);
     $this->student_accal = $student_accal;
     $cr = new Criteria();
     $cr->add(GradeSpecPeer::PARENT, 1);
     $this->grade1 = GradeSpecPeer::doSelect($cr);
     $this->count1 = GradeSpecPeer::doCount($cr);
     $crew = new Criteria();
     $crew->add(GradeSpecPeer::PARENT, 7);
     $this->grade2 = GradeSpecPeer::doSelect($crew);
     $this->count2 = GradeSpecPeer::doCount($crew);
     $actions = array();
     $this->actions = $actions;
     $this->subtitle = $course_schedule->getSubjectCurr()->getSubject()->getName() . ' - ' . $course_schedule->getClassGroup()->toString();
     $this->type = 'list';
     $this->course_schedule = $course_schedule;
     $this->course_schedule_id = $course_schedule_id;
     $this->student = $student;
     $actions2 = array(array('name' => '<span>' . $course_schedule->getAcademicCalendar()->getName() . '</span>', 'url' => 'student_agenda/listHistory', 'color' => 'sun'));
     array_push($actions2, array('name' => '<span>Agenda Kelas</span>', 'url' => 'student_agenda/listHistoryAgenda?course_id=' . $course_schedule->getId(), 'color' => 'sun'));
     array_push($actions2, array('name' => '<span>Absensi</span>', 'url' => 'student_agenda/listHistoryAbsence?course_id=' . $course_schedule->getId(), 'color' => 'sun'));
     array_push($actions2, array('name' => '<span>Jadwal Tugas/Ulangan/PR</span>', 'url' => 'student_agenda/listHistoryTest?course_id=' . $course_schedule->getId(), 'color' => 'sun'));
     array_push($actions2, array('name' => '<span>Penilaian</span>', 'url' => 'student_agenda/listHistoryScore?course_id=' . $course_schedule->getId(), 'color' => 'sun', 'type' => 'direct'));
     $this->actions2 = $actions2;
 }
Ejemplo n.º 20
0
 public function executeSaveUploadKnowledge()
 {
     $scores = $this->getRequestParameter('score');
     $id_course = 0;
     foreach ($scores as $k => $score) {
         if ($score != null) {
             if ($score != '-') {
                 $ids = split('_', $k);
                 #$ids [0] == Id Student
                 #$ids [1] == Id Course Schedule
                 #$ids [2] == Id Grade Spec
                 $course_schedule = CourseSchedulePeer::retrieveByPK($ids[1]);
                 $id_course = $course_schedule->getId();
                 $cw = new Criteria();
                 $cw->add(CourseRegulationPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId());
                 $cw->add(CourseRegulationPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId());
                 $cw->add(CourseRegulationPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId());
                 $c_regulation = CourseRegulationPeer::doSelectOne($cw);
                 $cd = new Criteria();
                 $cd->add(StudentAccalPeer::STUDENT_ID, $ids[0]);
                 $cd->add(StudentAccalPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId());
                 $cd->add(StudentAccalPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId());
                 $stu_accal = StudentAccalPeer::doSelectOne($cd);
                 if ($ids[2] == 92) {
                     $cm = new Criteria();
                     $cm->add(CourseRegulationPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId());
                     $cm->add(CourseRegulationPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId());
                     $cm->add(CourseRegulationPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId());
                     $c_regulation = CourseRegulationPeer::doSelectOne($cm);
                     $c = new Criteria();
                     $c->add(StudentRaportPeer::STUDENT_ID, $ids[0]);
                     $c->add(StudentRaportPeer::GRADE_SPEC_ID, $ids[2]);
                     $c->add(StudentRaportPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId());
                     $c->add(StudentRaportPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId());
                     $c->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId());
                     $g = StudentRaportPeer::doSelectOne($c);
                     if ($g == null) {
                         $g = new StudentRaport();
                     }
                     $g->setStudentId($ids[0]);
                     $g->setGradeSpecId($ids[2]);
                     $g->setGrade($score);
                     $g->setSubjectCurrId($course_schedule->getSubjectCurrId());
                     $g->setClassGroupId($course_schedule->getClassGroupId());
                     $g->setAcademicCalendarId($course_schedule->getAcademicCalendarId());
                     $g->setCitationId($stu_accal->getId());
                     $g->save();
                     if ($c_regulation) {
                         $cg = new Criteria();
                         $cg->add(StudentRaportPeer::STUDENT_ID, $ids[0]);
                         $cg->add(StudentRaportPeer::GRADE_SPEC_ID, $ids[2]);
                         $cg->add(StudentRaportPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId());
                         $cg->add(StudentRaportPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId());
                         $cg->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId());
                         $nr = StudentRaportPeer::doSelectOne($cg);
                         $f = new Criteria();
                         $f->add(StudentRaportPeer::STUDENT_ID, $ids[0]);
                         $f->add(StudentRaportPeer::GRADE_SPEC_ID, 14);
                         $f->add(StudentRaportPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId());
                         $f->add(StudentRaportPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId());
                         $f->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId());
                         $uh = StudentRaportPeer::doSelectOne($f);
                         if ($nr->getGrade() >= $c_regulation->getKkm()) {
                             if ($uh == null) {
                                 $uh = new StudentRaport();
                             }
                             $uh->setStudentId($ids[0]);
                             $uh->setGradeSpecId(14);
                             $uh->setGrade($c_regulation->getKkm());
                             $uh->setSubjectCurrId($course_schedule->getSubjectCurrId());
                             $uh->setClassGroupId($course_schedule->getClassGroupId());
                             $uh->setAcademicCalendarId($course_schedule->getAcademicCalendarId());
                             $uh->setCitationId($stu_accal->getId());
                             $uh->save();
                         } elseif ($nr->getGrade() < $c_regulation->getKkm()) {
                             if ($uh == null) {
                                 $uh = new StudentRaport();
                                 $uh->setStudentId($ids[0]);
                                 $uh->setGradeSpecId(14);
                                 $uh->setGrade($nr->getGrade());
                                 $uh->setSubjectCurrId($course_schedule->getSubjectCurrId());
                                 $uh->setClassGroupId($course_schedule->getClassGroupId());
                                 $uh->setAcademicCalendarId($course_schedule->getAcademicCalendarId());
                                 $uh->setCitationId($stu_accal->getId());
                                 $uh->save();
                             } else {
                                 if ($nr->getGrade() > $uh->getGrade()) {
                                     $uh->setStudentId($ids[0]);
                                     $uh->setGradeSpecId(14);
                                     $uh->setGrade($nr->getGrade());
                                     $uh->setSubjectCurrId($course_schedule->getSubjectCurrId());
                                     $uh->setClassGroupId($course_schedule->getClassGroupId());
                                     $uh->setAcademicCalendarId($course_schedule->getAcademicCalendarId());
                                     $uh->setCitationId($stu_accal->getId());
                                     $uh->save();
                                 }
                             }
                         }
                     }
                 } else {
                     $c = new Criteria();
                     $c->add(StudentRaportPeer::STUDENT_ID, $ids[0]);
                     $c->add(StudentRaportPeer::GRADE_SPEC_ID, $ids[2]);
                     $c->add(StudentRaportPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId());
                     $c->add(StudentRaportPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId());
                     $c->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId());
                     $g = StudentRaportPeer::doSelectOne($c);
                     if ($g == null) {
                         $g = new StudentRaport();
                     }
                     $g->setStudentId($ids[0]);
                     $g->setGradeSpecId($ids[2]);
                     $g->setGrade($score);
                     $g->setSubjectCurrId($course_schedule->getSubjectCurrId());
                     $g->setClassGroupId($course_schedule->getClassGroupId());
                     $g->setAcademicCalendarId($course_schedule->getAcademicCalendarId());
                     $g->setCitationId($stu_accal->getId());
                     $g->save();
                     $cg = new Criteria();
                     $cg->add(StudentRaportPeer::STUDENT_ID, $ids[0]);
                     $cg->add(StudentRaportPeer::GRADE_SPEC_ID, 22);
                     $cg->add(StudentRaportPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId());
                     $cg->add(StudentRaportPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId());
                     $cg->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId());
                     $cg->add(StudentRaportPeer::CITATION_ID, $stu_accal->getId());
                     $praktek_uts = StudentRaportPeer::doSelectOne($cg);
                     $cf = new Criteria();
                     $cf->add(StudentRaportPeer::STUDENT_ID, $ids[0]);
                     $cf->add(StudentRaportPeer::GRADE_SPEC_ID, 23);
                     $cf->add(StudentRaportPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId());
                     $cf->add(StudentRaportPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId());
                     $cf->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId());
                     $cf->add(StudentRaportPeer::CITATION_ID, $stu_accal->getId());
                     $teori_uts = StudentRaportPeer::doSelectOne($cf);
                     if ($praktek_uts != null && $teori_uts != null) {
                         $score_uts = round(($praktek_uts->getGrade() + $teori_uts->getGrade()) / 2);
                         $f = new Criteria();
                         $f->add(StudentRaportPeer::STUDENT_ID, $ids[0]);
                         $f->add(StudentRaportPeer::GRADE_SPEC_ID, 14);
                         $f->add(StudentRaportPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId());
                         $f->add(StudentRaportPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId());
                         $f->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId());
                         $f->add(StudentRaportPeer::CITATION_ID, $stu_accal->getId());
                         $uts = StudentRaportPeer::doSelectOne($f);
                         if ($uts == null) {
                             $uts = new StudentRaport();
                         }
                         $uts->setStudentId($ids[0]);
                         $uts->setGradeSpecId(14);
                         $uts->setGrade($score_uts);
                         $uts->setSubjectCurrId($course_schedule->getSubjectCurrId());
                         $uts->setClassGroupId($course_schedule->getClassGroupId());
                         $uts->setAcademicCalendarId($course_schedule->getAcademicCalendarId());
                         $uts->setCitationId($stu_accal->getId());
                         $uts->save();
                     } elseif ($praktek_uts != null && $teori_uts == null) {
                         $score_uts = $praktek_uts->getGrade();
                         $f = new Criteria();
                         $f->add(StudentRaportPeer::STUDENT_ID, $ids[0]);
                         $f->add(StudentRaportPeer::GRADE_SPEC_ID, 14);
                         $f->add(StudentRaportPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId());
                         $f->add(StudentRaportPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId());
                         $f->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId());
                         $f->add(StudentRaportPeer::CITATION_ID, $stu_accal->getId());
                         $uts = StudentRaportPeer::doSelectOne($f);
                         if ($uts == null) {
                             $uts = new StudentRaport();
                         }
                         $uts->setStudentId($ids[0]);
                         $uts->setGradeSpecId(14);
                         $uts->setGrade($score_uts);
                         $uts->setSubjectCurrId($course_schedule->getSubjectCurrId());
                         $uts->setClassGroupId($course_schedule->getClassGroupId());
                         $uts->setAcademicCalendarId($course_schedule->getAcademicCalendarId());
                         $uts->setCitationId($stu_accal->getId());
                         $uts->save();
                     } elseif ($praktek_uts == null && $teori_uts != null) {
                         $score_uts = $teori_uts->getGrade();
                         $f = new Criteria();
                         $f->add(StudentRaportPeer::STUDENT_ID, $ids[0]);
                         $f->add(StudentRaportPeer::GRADE_SPEC_ID, 14);
                         $f->add(StudentRaportPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId());
                         $f->add(StudentRaportPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId());
                         $f->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId());
                         $f->add(StudentRaportPeer::CITATION_ID, $stu_accal->getId());
                         $uts = StudentRaportPeer::doSelectOne($f);
                         if ($uts == null) {
                             $uts = new StudentRaport();
                         }
                         $uts->setStudentId($ids[0]);
                         $uts->setGradeSpecId(14);
                         $uts->setGrade($score_uts);
                         $uts->setSubjectCurrId($course_schedule->getSubjectCurrId());
                         $uts->setClassGroupId($course_schedule->getClassGroupId());
                         $uts->setAcademicCalendarId($course_schedule->getAcademicCalendarId());
                         $uts->setCitationId($stu_accal->getId());
                         $uts->save();
                     }
                     # Praktek UAS dan Teori UAS
                     $ct = new Criteria();
                     $ct->add(StudentRaportPeer::STUDENT_ID, $ids[0]);
                     $ct->add(StudentRaportPeer::GRADE_SPEC_ID, 27);
                     $ct->add(StudentRaportPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId());
                     $ct->add(StudentRaportPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId());
                     $ct->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId());
                     $praktek_uas = StudentRaportPeer::doSelectOne($ct);
                     $ch = new Criteria();
                     $ch->add(StudentRaportPeer::STUDENT_ID, $ids[0]);
                     $ch->add(StudentRaportPeer::GRADE_SPEC_ID, 28);
                     $ch->add(StudentRaportPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId());
                     $ch->add(StudentRaportPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId());
                     $ch->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId());
                     $teori_uas = StudentRaportPeer::doSelectOne($ch);
                     if ($praktek_uas != null && $teori_uas != null) {
                         $score_uas = round(($praktek_uas->getGrade() + $teori_uas->getGrade()) / 2);
                         $fg = new Criteria();
                         $fg->add(StudentRaportPeer::STUDENT_ID, $ids[0]);
                         $fg->add(StudentRaportPeer::GRADE_SPEC_ID, 15);
                         $fg->add(StudentRaportPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId());
                         $fg->add(StudentRaportPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId());
                         $fg->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId());
                         $fg->add(StudentRaportPeer::CITATION_ID, $stu_accal->getId());
                         $uas = StudentRaportPeer::doSelectOne($fg);
                         if ($uas == null) {
                             $uas = new StudentRaport();
                         }
                         $uas->setStudentId($ids[0]);
                         $uas->setGradeSpecId(15);
                         $uas->setGrade($score_uas);
                         $uas->setSubjectCurrId($course_schedule->getSubjectCurrId());
                         $uas->setClassGroupId($course_schedule->getClassGroupId());
                         $uas->setAcademicCalendarId($course_schedule->getAcademicCalendarId());
                         $uas->setCitationId($stu_accal->getId());
                         $uas->save();
                     } elseif ($praktek_uas != null && $teori_uas == null) {
                         $score_uas = $praktek_uas->getGrade();
                         $fg = new Criteria();
                         $fg->add(StudentRaportPeer::STUDENT_ID, $ids[0]);
                         $fg->add(StudentRaportPeer::GRADE_SPEC_ID, 15);
                         $fg->add(StudentRaportPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId());
                         $fg->add(StudentRaportPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId());
                         $fg->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId());
                         $fg->add(StudentRaportPeer::CITATION_ID, $stu_accal->getId());
                         $uas = StudentRaportPeer::doSelectOne($fg);
                         if ($uas == null) {
                             $uas = new StudentRaport();
                         }
                         $uas->setStudentId($ids[0]);
                         $uas->setGradeSpecId(15);
                         $uas->setGrade($score_uas);
                         $uas->setSubjectCurrId($course_schedule->getSubjectCurrId());
                         $uas->setClassGroupId($course_schedule->getClassGroupId());
                         $uas->setAcademicCalendarId($course_schedule->getAcademicCalendarId());
                         $uas->setCitationId($stu_accal->getId());
                         $uas->save();
                     } elseif ($praktek_uas == null && $teori_uas != null) {
                         $score_uas = $teori_uas->getGrade();
                         $fg = new Criteria();
                         $fg->add(StudentRaportPeer::STUDENT_ID, $ids[0]);
                         $fg->add(StudentRaportPeer::GRADE_SPEC_ID, 15);
                         $fg->add(StudentRaportPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId());
                         $fg->add(StudentRaportPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId());
                         $fg->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId());
                         $fg->add(StudentRaportPeer::CITATION_ID, $stu_accal->getId());
                         $uas = StudentRaportPeer::doSelectOne($fg);
                         if ($uas == null) {
                             $uas = new StudentRaport();
                         }
                         $uas->setStudentId($ids[0]);
                         $uas->setGradeSpecId(15);
                         $uas->setGrade($score_uas);
                         $uas->setSubjectCurrId($course_schedule->getSubjectCurrId());
                         $uas->setClassGroupId($course_schedule->getClassGroupId());
                         $uas->setAcademicCalendarId($course_schedule->getAcademicCalendarId());
                         $uas->setCitationId($stu_accal->getId());
                         $uas->save();
                     }
                 }
             } else {
                 $ids = split('_', $k);
                 $c = new Criteria();
                 $c->add(StudentRaportPeer::STUDENT_ID, $ids[0]);
                 $c->add(StudentRaportPeer::GRADE_SPEC_ID, $ids[1]);
                 $c->add(StudentRaportPeer::SUBJECT_CURR_ID, $course_schedule->getSubjectCurrId());
                 $c->add(StudentRaportPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId());
                 $c->add(StudentRaportPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId());
                 $g = StudentRaportPeer::doSelectOne($c);
                 if ($g != null) {
                     $g->delete();
                 }
             }
         }
     }
     return $this->redirect('course_score_new/uploadKnowledgeFinish?course_id=' . $id_course);
 }
Ejemplo n.º 21
0
 public function executeSaveScore()
 {
     $student_id = $this->getRequestParameter('student_id');
     $student = StudentPeer::retrieveByPK($student_id);
     $this->forward404Unless($student);
     $academic_calendar_id = $this->getRequestParameter('academic_calendar_id');
     $academic_calendar = AcademicCalendarPeer::retrieveByPK($academic_calendar_id);
     $this->forward404Unless($academic_calendar);
     $counseling_id = $this->getRequestParameter('counseling_id');
     $counseling = CounselingPeer::retrieveByPK($counseling_id);
     $this->forward404Unless($counseling);
     $student_accal_id = $this->getRequestParameter('student_accal_id');
     $student_accal = StudentAccalPeer::retrieveByPK($student_accal_id);
     $this->forward404Unless($student_accal);
     $scores = $this->getRequestParameter('score');
     foreach ($scores as $k => $score) {
         if ($score != null) {
             $cb = new Criteria();
             $cb->add(CounselingRaportPeer::STUDENT_ACCAL_ID, $student_accal->getId());
             $cb->add(CounselingRaportPeer::COUNSELING_SPEC_ID, $k);
             $raport = CounselingRaportPeer::doSelectOne($cb);
             if ($raport == null) {
                 $raport = new CounselingRaport();
             }
             $raport->setStudentAccalId($student_accal->getId());
             $raport->setCounselingSpecId($k);
             $raport->setGrade($score);
             $raport->save();
         } else {
             $cb = new Criteria();
             $cb->add(CounselingRaportPeer::STUDENT_ACCAL_ID, $student_accal->getId());
             $cb->add(CounselingRaportPeer::COUNSELING_SPEC_ID, $k);
             $raport = CounselingRaportPeer::doSelectOne($cb);
             if ($raport != null) {
                 $raport->delete();
             }
         }
     }
     return $this->redirect('counseling_raport/listCounselingScore?accal_id=' . $academic_calendar->getId() . '&counseling_id=' . $counseling->getId());
 }
Ejemplo n.º 22
0
 public function executePrintFinal()
 {
     $this->tanggalCetak = $this->getRequestParameter('time');
     $counseling_id = $this->getRequestParameter('counseling_id');
     $counseling = CounselingPeer::retrieveByPK($counseling_id);
     if (!$counseling) {
         if (SF_ENVIRONMENT == 'dev') {
             echo 'Counseling Not Found';
         }
         die;
     }
     $this->counseling = $counseling;
     $this->waliKelas = $counseling->toStringEmployee();
     $this->academic_calendar = AcademicCalendarPeer::retrieveByPK($this->getRequestParameter('accal_id'));
     if (!$this->academic_calendar) {
         if (SF_ENVIRONMENT == 'dev') {
             echo 'Academic Calendar Not Found';
         }
         die;
     }
     $this->department = $this->academic_calendar->getDepartment();
     $this->departmentDetail = $this->department->getThisDepartmentDetail();
     $time = $this->getRequestParameter('time');
     $time2 = $this->getRequestParameter('time2');
     $tgl = $this->getRequestParameter('tgl_cetak');
     /* Get Student */
     $student_id = $this->getRequestParameter('student_id');
     $this->student = StudentPeer::retrieveByPK($student_id);
     if (!$this->student) {
         if (SF_ENVIRONMENT == 'dev') {
             echo 'Student Not Found';
         }
         die;
     }
     /* Get StudentAccal */
     $this->studentAccal = StudentAccalPeer::getStudentByAccal($this->academic_calendar->getId(), $this->student->getId());
     if (!$this->studentAccal) {
         if (SF_ENVIRONMENT == 'dev') {
             echo 'Student Accal Not Found';
         }
         die;
     }
     /* Get Score Rule */
     $this->scoreRule = nilaiRapor::getScoreRuleAkhir($this->academic_calendar->getId(), $counseling->getClassGroup()->getClassTypeId());
     if (!$this->scoreRule) {
         if (SF_ENVIRONMENT == 'dev') {
             echo 'AccalId => ' . $this->academic_calendar->getId() . '<br />';
             echo 'getClassTypeId => ' . $counseling->getClassGroup()->getClassTypeId() . '<br />';
             echo 'Score Rule Not Found';
         }
         die;
     }
     $this->scoreRuleSubject = nilaiRapor::getScoreRuleSubject($this->scoreRule->getId());
     $this->orientation = 'portrait';
     $this->papersize = 'a4';
     if (SF_ENVIRONMENT != 'dev') {
         $this->setViewClass('sfDomPDF');
     }
 }
Ejemplo n.º 23
0
 public static function doSelectJoinAllExceptGradeSpec(Criteria $c, $con = null)
 {
     $c = clone $c;
     if ($c->getDbName() == Propel::getDefaultDB()) {
         $c->setDbName(self::DATABASE_NAME);
     }
     StudentGradeRaportPeer::addSelectColumns($c);
     $startcol2 = StudentGradeRaportPeer::NUM_COLUMNS - StudentGradeRaportPeer::NUM_LAZY_LOAD_COLUMNS + 1;
     StudentAccalPeer::addSelectColumns($c);
     $startcol3 = $startcol2 + StudentAccalPeer::NUM_COLUMNS;
     CourseSchedulePeer::addSelectColumns($c);
     $startcol4 = $startcol3 + CourseSchedulePeer::NUM_COLUMNS;
     SubjectCurrPeer::addSelectColumns($c);
     $startcol5 = $startcol4 + SubjectCurrPeer::NUM_COLUMNS;
     $c->addJoin(StudentGradeRaportPeer::STUDENT_ACCAL_ID, StudentAccalPeer::ID);
     $c->addJoin(StudentGradeRaportPeer::COURSE_SCHEDULE_ID, CourseSchedulePeer::ID);
     $c->addJoin(StudentGradeRaportPeer::SUBJECT_CURR_ID, SubjectCurrPeer::ID);
     $rs = BasePeer::doSelect($c, $con);
     $results = array();
     while ($rs->next()) {
         $omClass = StudentGradeRaportPeer::getOMClass();
         $cls = Propel::import($omClass);
         $obj1 = new $cls();
         $obj1->hydrate($rs);
         $omClass = StudentAccalPeer::getOMClass();
         $cls = Propel::import($omClass);
         $obj2 = new $cls();
         $obj2->hydrate($rs, $startcol2);
         $newObject = true;
         for ($j = 0, $resCount = count($results); $j < $resCount; $j++) {
             $temp_obj1 = $results[$j];
             $temp_obj2 = $temp_obj1->getStudentAccal();
             if ($temp_obj2->getPrimaryKey() === $obj2->getPrimaryKey()) {
                 $newObject = false;
                 $temp_obj2->addStudentGradeRaport($obj1);
                 break;
             }
         }
         if ($newObject) {
             $obj2->initStudentGradeRaports();
             $obj2->addStudentGradeRaport($obj1);
         }
         $omClass = CourseSchedulePeer::getOMClass();
         $cls = Propel::import($omClass);
         $obj3 = new $cls();
         $obj3->hydrate($rs, $startcol3);
         $newObject = true;
         for ($j = 0, $resCount = count($results); $j < $resCount; $j++) {
             $temp_obj1 = $results[$j];
             $temp_obj3 = $temp_obj1->getCourseSchedule();
             if ($temp_obj3->getPrimaryKey() === $obj3->getPrimaryKey()) {
                 $newObject = false;
                 $temp_obj3->addStudentGradeRaport($obj1);
                 break;
             }
         }
         if ($newObject) {
             $obj3->initStudentGradeRaports();
             $obj3->addStudentGradeRaport($obj1);
         }
         $omClass = SubjectCurrPeer::getOMClass();
         $cls = Propel::import($omClass);
         $obj4 = new $cls();
         $obj4->hydrate($rs, $startcol4);
         $newObject = true;
         for ($j = 0, $resCount = count($results); $j < $resCount; $j++) {
             $temp_obj1 = $results[$j];
             $temp_obj4 = $temp_obj1->getSubjectCurr();
             if ($temp_obj4->getPrimaryKey() === $obj4->getPrimaryKey()) {
                 $newObject = false;
                 $temp_obj4->addStudentGradeRaport($obj1);
                 break;
             }
         }
         if ($newObject) {
             $obj4->initStudentGradeRaports();
             $obj4->addStudentGradeRaport($obj1);
         }
         $results[] = $obj1;
     }
     return $results;
 }
Ejemplo n.º 24
0
 public function executeListScoreAsCSV()
 {
     $course_schedule = CourseSchedulePeer::retrieveByPk($this->getRequestParameter('course_id'));
     $this->forward404Unless($course_schedule);
     $course_schedule_id = $course_schedule->getId();
     $cr = new Criteria();
     $cr->add(GradeSpecPeer::PARENT, 1);
     $cr->addAscendingOrderByColumn(GradeSpecPeer::CODE);
     $this->grade1 = GradeSpecPeer::doSelect($cr);
     $this->count1 = GradeSpecPeer::doCount($cr);
     $cw = new Criteria();
     $cw->add(GradeSpecPeer::PARENT, 7);
     $cw->addAscendingOrderByColumn(GradeSpecPeer::CODE);
     $this->grade2 = GradeSpecPeer::doSelect($cw);
     $this->count2 = GradeSpecPeer::doCount($cw);
     $cm = new Criteria();
     $cm->addJoin(StudentAccalPeer::STUDENT_ID, VStudentActivePeer::ID);
     $cm->add(StudentAccalPeer::ACADEMIC_CALENDAR_ID, $course_schedule->getAcademicCalendarId());
     $cm->add(StudentAccalPeer::CLASS_GROUP_ID, $course_schedule->getClassGroupId());
     $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);
     $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->student_count = StudentAccalPeer::doCount($cm);
     $this->subtitle = $course_schedule->getSubjectCurr()->getSubject()->getName() . ' - ' . $course_schedule->getClassGroup()->toString();
     $this->course_schedule = $course_schedule;
     $this->setLayout(false);
     $this->getResponse()->setHttpHeader('Content-Type', 'text/csv');
     $this->getResponse()->setHttpHeader('Content-Disposition', 'attachment; filename="' . $this->getModuleName() . '.csv"');
 }
Ejemplo n.º 25
0
 public static function doSelectJoinAllExceptCur13TermSpec(Criteria $c, $con = null)
 {
     $c = clone $c;
     if ($c->getDbName() == Propel::getDefaultDB()) {
         $c->setDbName(self::DATABASE_NAME);
     }
     Cur13GradePeer::addSelectColumns($c);
     $startcol2 = Cur13GradePeer::NUM_COLUMNS - Cur13GradePeer::NUM_LAZY_LOAD_COLUMNS + 1;
     StudentAccalPeer::addSelectColumns($c);
     $startcol3 = $startcol2 + StudentAccalPeer::NUM_COLUMNS;
     $c->addJoin(Cur13GradePeer::STUDENT_ACCAL_ID, StudentAccalPeer::ID);
     $rs = BasePeer::doSelect($c, $con);
     $results = array();
     while ($rs->next()) {
         $omClass = Cur13GradePeer::getOMClass();
         $cls = Propel::import($omClass);
         $obj1 = new $cls();
         $obj1->hydrate($rs);
         $omClass = StudentAccalPeer::getOMClass();
         $cls = Propel::import($omClass);
         $obj2 = new $cls();
         $obj2->hydrate($rs, $startcol2);
         $newObject = true;
         for ($j = 0, $resCount = count($results); $j < $resCount; $j++) {
             $temp_obj1 = $results[$j];
             $temp_obj2 = $temp_obj1->getStudentAccal();
             if ($temp_obj2->getPrimaryKey() === $obj2->getPrimaryKey()) {
                 $newObject = false;
                 $temp_obj2->addCur13Grade($obj1);
                 break;
             }
         }
         if ($newObject) {
             $obj2->initCur13Grades();
             $obj2->addCur13Grade($obj1);
         }
         $results[] = $obj1;
     }
     return $results;
 }
Ejemplo n.º 26
0
                                <td>
                                    <?php 
        $counselings = CounselingPeer::retrieveByPK($counseling->getId());
        $tutors = array();
        foreach ($counselings->getCounselingTutors() as $cr) {
            $tutors[] = $cr->getEmployee() ? '&middot; ' . $cr->getEmployee()->getName() : '-';
        }
        echo join("<br>", $tutors);
        ?>
                                </td>
                                <td style="text-align: center;">
                                    <?php 
        $c = new Criteria();
        $c->add(StudentAccalPeer::CLASS_GROUP_ID, $counseling->getClassGroupId());
        $c->add(StudentAccalPeer::ACADEMIC_CALENDAR_ID, $counseling->getAcademicCalendar()->getChildB()->getId());
        $total_count = StudentAccalPeer::doCount($c);
        echo link_to_remote($total_count, array('url' => 'counselor_new/show?id=' . $counseling->getId(), 'update' => 'content', 'script' => 'true', 'before' => "this.blur();showIndicator('content', 'snakebig_black');", 'complete' => "hideIndicator()"), array('class' => 'white'));
        ?>
                                </td>
                            </tr>
    <?php 
    }
}
?>
                </tbody>
            </table>
<?php 
if ($pager->getNbResults() > 1) {
    echo include_partial('global/pager', array('position' => 'bottom', 'pager' => $pager, 'module' => 'Counseling'));
}
?>
Ejemplo n.º 27
0
 public function executeGetListFinalAll()
 {
     $academic_calendar_id = $this->getRequestParameter('academic_calendar_id');
     $academic_calendar = AcademicCalendarPeer::retrieveByPK($academic_calendar_id);
     $this->academic_calendar = $academic_calendar;
     $student_id = $this->getRequestParameter('student_id');
     $student = StudentPeer::retrieveByPK($student_id);
     $this->forward404Unless($student);
     $this->student = $student;
     $c = new Criteria();
     $c->add(StudentAccalPeer::STUDENT_ID, $student_id, Criteria::IN);
     $c->add(StudentAccalPeer::ACADEMIC_CALENDAR_ID, $academic_calendar_id, Criteria::IN);
     $stu_accal = StudentAccalPeer::doSelectOne($c);
     $this->stu_accal = $stu_accal;
     $cw = new Criteria();
     $cw->add(CounselingPeer::CLASS_GROUP_ID, $stu_accal->getClassGroupId());
     $cw->add(CounselingPeer::ACADEMIC_CALENDAR_ID, $academic_calendar->getParent());
     $counseling = CounselingPeer::doSelectOne($cw);
     $this->counseling = $counseling;
     $cr = new Criteria();
     $cr->add(GradeSpecPeer::PARENT, 1);
     $this->grade1 = GradeSpecPeer::doSelect($cr);
     $this->count1 = GradeSpecPeer::doCount($cr);
     $crew = new Criteria();
     $crew->add(GradeSpecPeer::PARENT, 7);
     $this->grade2 = GradeSpecPeer::doSelect($crew);
     $this->count2 = GradeSpecPeer::doCount($crew);
     #SMP
     if ($academic_calendar->getDepartmentId() == 2) {
         $cb = new Criteria();
         $cb->add(VCoursePeer::CLASS_GROUP_ID, $stu_accal->getClassGroupId(), Criteria::IN);
         $cb->add(VCoursePeer::ACADEMIC_CALENDAR_ID, $academic_calendar->getId(), Criteria::IN);
         $cb->add(VCoursePeer::SUBJECT_CURR_ID, 316, Criteria::NOT_IN);
         $cb->addAscendingOrderByColumn(VCoursePeer::CODE);
         $this->subjects = VCoursePeer::doSelect($cb);
         $this->subject_count = VCoursePeer::doCount($cb);
         #SD
     } elseif ($academic_calendar->getDepartmentId() == 3) {
         $cb = new Criteria();
         $cb->add(VCoursePeer::CLASS_GROUP_ID, $stu_accal->getClassGroupId(), Criteria::IN);
         $cb->add(VCoursePeer::ACADEMIC_CALENDAR_ID, $academic_calendar->getId(), Criteria::IN);
         $cb->add(VCoursePeer::SUBJECT_GROUP_ID, 7, Criteria::IN);
         $cb->add(VCoursePeer::SUBJECT_CURR_ID, 319, Criteria::NOT_IN);
         $cb->add(VCoursePeer::SUBJECT_CURR_ID, 333, Criteria::NOT_IN);
         $cb->addAscendingOrderByColumn(VCoursePeer::CODE);
         $this->subjects7 = VCoursePeer::doSelect($cb);
         $subject_count7 = VCoursePeer::doCount($cb);
         $this->subject_count7 = $subject_count7;
         $cm = new Criteria();
         $cm->add(VCoursePeer::CLASS_GROUP_ID, $stu_accal->getClassGroupId(), Criteria::IN);
         $cm->add(VCoursePeer::ACADEMIC_CALENDAR_ID, $academic_calendar->getId(), Criteria::IN);
         $cm->add(VCoursePeer::SUBJECT_GROUP_ID, 8, Criteria::IN);
         $cm->addAscendingOrderByColumn(VCoursePeer::CODE);
         $this->subjects8 = VCoursePeer::doSelect($cm);
         $subject_count8 = VCoursePeer::doCount($cm);
         $this->subject_count8 = $subject_count8;
     }
     $rpp = $this->getRequestParameter('max_per_page', 999);
     $pager = new sfPropelPager('VCourse', $rpp);
     $pager->setCriteria($c);
     $pager->setPage($this->getRequestParameter('page', 1));
     $pager->init();
     $this->pager = $pager;
     $actions = array(array());
     $this->actions = $actions;
 }
Ejemplo n.º 28
0
 public function getStudentAccal($con = null)
 {
     include_once 'lib/model/om/BaseStudentAccalPeer.php';
     if ($this->aStudentAccal === null && $this->student_accal_id !== null) {
         $this->aStudentAccal = StudentAccalPeer::retrieveByPK($this->student_accal_id, $con);
     }
     return $this->aStudentAccal;
 }
Ejemplo n.º 29
0
 public function executeListScore()
 {
     $employee_id = sfContext::getInstance()->getUser()->getAttribute('user_id', null, 'bo');
     $employee = EmployeePeer::retrieveByPK($employee_id);
     $this->forward404Unless($employee);
     $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);
     $term = $this->getRequestParameter('term');
     $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);
     $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' => 'save', 'type' => 'submit', 'options' => array('class' => 'save_button', 'onclick' => "action_type.value=this.value")));
     array_unshift($actions, array('name' => 'Print Excel', 'url' => "course_tk/listScoreAsCSV?counseling_id=" . $counseling_id . "&term=" . $term . "&accal_id=" . $academic_calendar->getId(), 'color' => 'black', 'type' => 'direct'));
     array_unshift($actions, array('name' => 'Print PDF', 'url' => "course_tk/listScoreAsPDF?counseling_id=" . $counseling_id . "&term=" . $term . "&accal_id=" . $academic_calendar->getId(), 'color' => 'black', 'type' => 'direct'));
     $this->actions = $actions;
     $actions2 = array(array('name' => '<span>Penilaian</span>', 'url' => 'course_tk/list', 'color' => 'sun'));
     array_push($actions2, array('name' => '<span>' . $academic_calendar->toString() . '</span>', 'url' => 'course_tk/listScore?accal_id=' . $academic_calendar->getId() . '&term=' . $term . '&counseling_id=' . $counseling->getId() . '&employee_id=' . $employee_id, 'color' => 'sun', 'type' => 'direct'));
     $this->actions2 = $actions2;
     $this->counseling = $counseling;
     $this->subtitle = $academic_calendar->toString() . ' # ' . $counseling->getClassGroup()->toString();
     $this->employee_id = $employee_id;
     $this->term = $term;
     $this->type = 'edit';
     $this->academic_calendar = $academic_calendar;
     $cem = new Criteria();
     $cem->add(StudentAccalPeer::ACADEMIC_CALENDAR_ID, $academic_calendar->getId());
     $cem->add(StudentAccalPeer::CLASS_GROUP_ID, $counseling->getClassGroupId());
     $cem->add(StudentAccalPeer::STATUS, 1);
     $stu_accs = StudentAccalPeer::doSelect($cem);
     $this->stu_accs = $stu_accs;
 }
Ejemplo n.º 30
-1
 public function executeScoreEksStu()
 {
     $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_SD) {
         $c = new Criteria();
         $c->add(Cur13EkskulPeer::SCHEDULE_DETAIL_ID, $schedule_detail->getId());
         $c->addJoin(StudentAccalPeer::ID, Cur13EkskulPeer::STUDENT_ACCAL_ID);
         $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);
     } elseif ($academic_calendar->getDepartment()->getCourseModel() == Department::CM_SMA) {
         $this->setTemplate('scoreEksSma');
         $c = new Criteria();
         $c->add(Cur13EkskulPeer::SCHEDULE_DETAIL_ID, $schedule_detail->getId());
         $c->addJoin(StudentAccalPeer::ID, Cur13EkskulPeer::STUDENT_ACCAL_ID);
         $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);
     } elseif ($academic_calendar->getDepartment()->getCourseModel() == Department::CM_SMP) {
         $this->setTemplate('scoreEksSmp');
         $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());
         $stu_raports = StudentRaportPeer::doSelect($cb);
         $ekskul_grade = array();
         foreach ($stu_raports as $stu_raport) {
             $ekskul_grade[$stu_raport->getStudentId()] = $stu_raport->getGrade();
         }
         $this->ekskul_grade = $ekskul_grade;
         $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);
     }
     $this->sortStudent($c);
     $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;
     if ($pager->getNbResults() > 0) {
         $actions = array(array('name' => 'save', 'type' => 'submit', 'options' => array('class' => 'save_button', 'onclick' => "action_type.value=this.value")));
     } else {
         $actions = array();
     }
     $this->actions = $actions;
     $this->subtitle2 = $class_group->toString() . '#' . $schedule->getGradeComponent()->toString() . ' - ' . $schedule_detail->getDayString();
     $ct = new Criteria();
     $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->getClassGroupId()] = $stu_accal->getId();
     }
     $this->stu_accal_ids = $stu_accal_ids;
     $cm = new Criteria();
     $cm->add(GradeAliasPeer::GRADE_SPEC_ID, 21, Criteria::NOT_IN);
     $cm->add(GradeAliasPeer::TYPE, ScoreRule::FIVE, Criteria::IN);
     $grade_alias = GradeAliasPeer::doSelect($cm);
     $alias_count = GradeAliasPeer::doCount($cm);
     $cc = new Criteria();
     $cur13_grades = Cur13GradeEkskulPeer::doSelect($cc);
     $grades = array();
     foreach ($cur13_grades as $cur13_grade) {
         $grades[$cur13_grade->getGradeSpecId() . '#' . $cur13_grade->getCur13EkskulId()] = $cur13_grade->getGrade();
     }
     $this->grades = $grades;
     $cd = new Criteria();
     $cd->add(Cur13EkskulPeer::SCHEDULE_DETAIL_ID, $schedule_detail->getId());
     $cur13_ekskuls = Cur13EkskulPeer::doSelect($cd);
     $remark = array();
     foreach ($cur13_ekskuls as $cur13_ekskul) {
         $remark[$cur13_ekskul->getStudentAccalId()] = $cur13_ekskul;
     }
     $this->remark = $remark;
     $this->grade_alias = $grade_alias;
     $this->alias_count = $alias_count;
     $this->class_group = $class_group;
     $this->schedule = $schedule;
     $this->schedule_detail = $schedule_detail;
     $this->academic_calendar = $academic_calendar;
 }