Пример #1
0
 /**
  * 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;
 }
Пример #2
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;
 }
Пример #3
0
                                            <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 
    }
Пример #4
0
 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;
 }
Пример #5
0
 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]]);
     }
 }
Пример #6
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(Cur13GradeTermPeer::ID, $pks, Criteria::IN);
         $objs = Cur13GradeTermPeer::doSelect($criteria, $con);
     }
     return $objs;
 }