/** * getGradeTerms function * function to get gradeTerms from each students * Have to set students and terms before call this function * @return array */ public function getGradeTerms() { $gradeTerms = array(); foreach ($this->getStudents() as $student) { $termId = array(); $gradeTerms[$student->getId()] = array(); foreach ($this->getTerms() as $term) { $termId[] = $term->getId(); $gradeTerms[$student->getId()][$term->getId()] = false; } $c = new Criteria(); $c->add(Cur13GradeTermPeer::CUR13_TERM_ID, $termId, Criteria::IN); $c->add(Cur13GradeTermPeer::STUDENT_ACCAL_ID, $student->getId(), Criteria::EQUAL); $c->addDescendingOrderByColumn(Cur13GradeTermPeer::GRADE); $nilai = Cur13GradeTermPeer::doSelect($c); foreach ($nilai as $n) { $gradeTerms[$student->getId()][$n->getCur13TermId()] = $n; } } $this->gradeTerms = $gradeTerms; return $this->gradeTerms; }
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; }
<td class="first"></td> <td style="text-align: right; font-weight: bold;"><?php echo __('Deskripsi :'); ?> </td> <td colspan="<?php echo $cur13_term_count * 3 + 3; ?> "> <?php $ct = new Criteria(); $ct->add(Cur13TermPeer::CUR13_KI_ID, $cur13_ki); $ct->addJoin(Cur13GradeTermPeer::CUR13_TERM_ID, Cur13TermPeer::ID); $ct->add(Cur13GradeTermPeer::STUDENT_ACCAL_ID, $student_accal_id[$student->getId()]); $ct->addDescendingOrderByColumn(Cur13GradeTermPeer::GRADE_SCALE); $cur13_grade_terms = Cur13GradeTermPeer::doSelect($ct); if ($cur13_grade_terms) { $descript_all = array(); echo '<b>Allhamdulillah Ananda ' . $student->getName() . ' </b>'; foreach ($cur13_grade_terms as $cur13_grade_term) { #echo $cur13_grade_term->getRemark(); $descript_all[] = array_key_exists($cur13_grade_term->getRemark(), $descript_select) ? $descript_select[$cur13_grade_term->getRemark()] . ' ' . $cur13_term->toString() : '-'; } echo join(", ", $descript_all); echo input_hidden_tag('descript[' . $student_accal_id[$student->getId()] . '_' . $cur13_ki . ']', join(", ", $descript_all)); } ?> </td> </tr> <?php }
public function getCur13GradeTermsJoinStudentAccal($criteria = null, $con = null) { include_once 'lib/model/om/BaseCur13GradeTermPeer.php'; if ($criteria === null) { $criteria = new Criteria(); } elseif ($criteria instanceof Criteria) { $criteria = clone $criteria; } if ($this->collCur13GradeTerms === null) { if ($this->isNew()) { $this->collCur13GradeTerms = array(); } else { $criteria->add(Cur13GradeTermPeer::CUR13_TERM_ID, $this->getId()); $this->collCur13GradeTerms = Cur13GradeTermPeer::doSelectJoinStudentAccal($criteria, $con); } } else { $criteria->add(Cur13GradeTermPeer::CUR13_TERM_ID, $this->getId()); if (!isset($this->lastCur13GradeTermCriteria) || !$this->lastCur13GradeTermCriteria->equals($criteria)) { $this->collCur13GradeTerms = Cur13GradeTermPeer::doSelectJoinStudentAccal($criteria, $con); } } $this->lastCur13GradeTermCriteria = $criteria; return $this->collCur13GradeTerms; }
public function fromArray($arr, $keyType = BasePeer::TYPE_PHPNAME) { $keys = Cur13GradeTermPeer::getFieldNames($keyType); if (array_key_exists($keys[0], $arr)) { $this->setId($arr[$keys[0]]); } if (array_key_exists($keys[1], $arr)) { $this->setStudentAccalId($arr[$keys[1]]); } if (array_key_exists($keys[2], $arr)) { $this->setCur13TermId($arr[$keys[2]]); } if (array_key_exists($keys[3], $arr)) { $this->setGrade($arr[$keys[3]]); } if (array_key_exists($keys[4], $arr)) { $this->setRemark($arr[$keys[4]]); } if (array_key_exists($keys[5], $arr)) { $this->setGradeScale($arr[$keys[5]]); } if (array_key_exists($keys[6], $arr)) { $this->setTotalValue($arr[$keys[6]]); } if (array_key_exists($keys[7], $arr)) { $this->setAvgValue($arr[$keys[7]]); } if (array_key_exists($keys[8], $arr)) { $this->setCreatedAt($arr[$keys[8]]); } }
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(Cur13GradeTermPeer::ID, $pks, Criteria::IN); $objs = Cur13GradeTermPeer::doSelect($criteria, $con); } return $objs; }