public function executeListStudentAll() { $employee_id = sfContext::getInstance()->getUser()->getAttribute('user_id', null, 'bo'); $employee = EmployeePeer::retrieveByPK($employee_id); $this->forward404Unless($employee); $schedule = SchedulePeer::retrieveByPk($this->getRequestParameter('schedule_id')); $this->forward404Unless($schedule); $schedule_detail = ScheduleDetailPeer::retrieveByPk($this->getRequestParameter('detail_id')); $this->forward404Unless($schedule_detail); $schedule_id = $schedule->getId(); $tanggal = $this->getRequestParameter('time'); $c = new Criteria(); $c->add(AbsenceEkskulPeer::SCHEDULE_ID, $schedule->getId()); $c->add(AbsenceEkskulPeer::SCHEDULE_DETAIL_ID, $schedule_detail->getId()); $c->add(AbsenceEkskulPeer::TIME, $this->getRequestParameter('time')); $c->addJoin(StudentPeer::ID, AbsenceEkskulPeer::STUDENT_ID); $c->addAscendingOrderByColumn(StudentPeer::NAME); $rpp = $this->getRequestParameter('max_per_page', 999); $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' => 'kembali', 'url' => 'course_ekskul/listAbsence?id=' . $schedule->getId() . '&detail_id=' . $schedule_detail->getId(), 'color' => 'black')); $this->actions = $actions; $actions2 = array(array('name' => '<span>Peserta Ekskul</span>', 'url' => 'course_ekskul/list?id=' . $schedule->getId() . '&detail_id=' . $schedule_detail->getId(), 'color' => 'sun')); array_unshift($actions2, array('name' => '<span>Detail Jadwal Ekskul</span>', 'url' => 'course_ekskul/listDetail?id=' . $schedule->getId(), 'color' => 'sun')); array_push($actions2, array('name' => '<span>Absensi Ekskul</span>', 'url' => 'course_ekskul/listAbsence?id=' . $schedule->getId() . '&detail_id=' . $schedule_detail->getId(), 'color' => 'sun', 'type' => 'direct')); array_push($actions2, array('name' => '<span>Penilaian Ekskul</span>', 'url' => 'course_ekskul/listScore?id=' . $schedule->getId() . '&detail_id=' . $schedule_detail->getId(), 'color' => 'sun')); $this->actions2 = $actions2; $this->subtitle = $schedule->getGradeComponent()->toString() . ' - ' . $schedule_detail->getDayString(); $cw = new Criteria(); $cw->add(AbsenceEkskulPeer::SCHEDULE_ID, $schedule->getId()); $cw->add(AbsenceEkskulPeer::SCHEDULE_DETAIL_ID, $schedule_detail->getId()); $cw->add(AbsenceEkskulPeer::TIME, $tanggal); $absence_course = AbsenceEkskulPeer::doSelectOne($cw); $this->absence_course = $absence_course; $this->schedule = $schedule; $this->schedule_detail = $schedule_detail; $this->schedule_id = $schedule_id; $this->employee = $employee; $this->tanggal = $tanggal; }
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(AbsenceEkskulPeer::ID, $pks, Criteria::IN); $objs = AbsenceEkskulPeer::doSelect($criteria, $con); } return $objs; }
</td> <td style="white-space: nowrap;width: 1%;" align="left"> <?php $c = new Criteria(); $c->add(AbsenceEkskulPeer::SCHEDULE_ID, $absence->getScheduleId()); $c->add(AbsenceEkskulPeer::TIME, $absence->getTime()); $c->add(AbsenceEkskulPeer::STATUS, 1); $present_count = AbsenceEkskulPeer::doCount($c); echo $present_count; ?> </td> <td align="left"> <?php $c = new Criteria(); $c->add(AbsenceEkskulPeer::SCHEDULE_ID, $absence->getScheduleId()); $c->add(AbsenceEkskulPeer::TIME, $absence->getTime()); $c->add(AbsenceEkskulPeer::STATUS, 2); $present_count = AbsenceEkskulPeer::doCount($c); echo $present_count; ?> </td> </tr> <?php } ?> <?php } ?> </tbody> </table>
public function getAbsenceEkskulsJoinEmployee($criteria = null, $con = null) { include_once 'lib/model/om/BaseAbsenceEkskulPeer.php'; if ($criteria === null) { $criteria = new Criteria(); } elseif ($criteria instanceof Criteria) { $criteria = clone $criteria; } if ($this->collAbsenceEkskuls === null) { if ($this->isNew()) { $this->collAbsenceEkskuls = array(); } else { $criteria->add(AbsenceEkskulPeer::SCHEDULE_ID, $this->getId()); $this->collAbsenceEkskuls = AbsenceEkskulPeer::doSelectJoinEmployee($criteria, $con); } } else { $criteria->add(AbsenceEkskulPeer::SCHEDULE_ID, $this->getId()); if (!isset($this->lastAbsenceEkskulCriteria) || !$this->lastAbsenceEkskulCriteria->equals($criteria)) { $this->collAbsenceEkskuls = AbsenceEkskulPeer::doSelectJoinEmployee($criteria, $con); } } $this->lastAbsenceEkskulCriteria = $criteria; return $this->collAbsenceEkskuls; }
<td valign="top"><?php echo $student->getName() ? link_to_remote($student->getName(), array('url' => 'course_ekskul/showStudent?id=' . $student->getId() . '&schedule_id=' . $schedule->getId() . '&detail_id=' . $schedule_detail->getId(), 'update' => 'content', 'script' => 'true', 'before' => "this.blur();showIndicator('content', 'snakebig_black');", 'complete' => "hideIndicator()"), array('class' => 'white')) : '-'; ?> </td> <td style="text-align: center;"> <?php if ($absence_course) { ?> <?php $c = new Criteria(); $c->add(AbsenceEkskulPeer::STUDENT_ID, $student->getId()); $c->add(AbsenceEkskulPeer::SCHEDULE_ID, $schedule->getId()); $c->add(AbsenceEkskulPeer::TIME, $absence_course->getTime()); $absence = AbsenceEkskulPeer::doSelectOne($c); ?> <?php if ($absence) { ?> <?php if ($absence->getStatus() == AbsenceEkskul::STATUS_PRESENT) { echo "<font class='level_green'>" . __('Hadir') . "</font>"; } elseif ($absence->getStatus() == AbsenceEkskul::STATUS_ABSENCE) { echo "<font class='level_red'>" . __('Tidak Hadir') . "</font>"; } ?> <?php } else { echo '-';
public function fromArray($arr, $keyType = BasePeer::TYPE_PHPNAME) { $keys = AbsenceEkskulPeer::getFieldNames($keyType); if (array_key_exists($keys[0], $arr)) { $this->setId($arr[$keys[0]]); } if (array_key_exists($keys[1], $arr)) { $this->setStudentId($arr[$keys[1]]); } if (array_key_exists($keys[2], $arr)) { $this->setAcademicCalendarId($arr[$keys[2]]); } if (array_key_exists($keys[3], $arr)) { $this->setClassGroupId($arr[$keys[3]]); } if (array_key_exists($keys[4], $arr)) { $this->setScheduleId($arr[$keys[4]]); } if (array_key_exists($keys[5], $arr)) { $this->setScheduleDetailId($arr[$keys[5]]); } if (array_key_exists($keys[6], $arr)) { $this->setGradeComponentId($arr[$keys[6]]); } if (array_key_exists($keys[7], $arr)) { $this->setEmployeeId($arr[$keys[7]]); } if (array_key_exists($keys[8], $arr)) { $this->setStatus($arr[$keys[8]]); } if (array_key_exists($keys[9], $arr)) { $this->setDetail($arr[$keys[9]]); } if (array_key_exists($keys[10], $arr)) { $this->setCode($arr[$keys[10]]); } if (array_key_exists($keys[11], $arr)) { $this->setTime($arr[$keys[11]]); } }
public function filterAbsenceEkskul($c, $filters) { $filters_key = array_keys($filters); foreach ($filters_key as $key) { $value = $filters[$key]; if ($value == '' || $value == null) { continue; } $column = AbsenceEkskulPeer::getTableMap()->getColumn($key); $name = $column->getFullyQualifiedName(); $creoleType = $column->getCreoleType(); if ($creoleType == CreoleTypes::TIMESTAMP) { $c->add($name, $value, Criteria::LIKE); } else { if ($creoleType == CreoleTypes::DATE) { $c->add($name, $value, Criteria::LIKE); } else { if ($creoleType == CreoleTypes::INTEGER) { $c->add($name, $value, Criteria::EQUAL); } else { if ($creoleType == CreoleTypes::VARCHAR || $creoleType == CreoleTypes::CHAR) { $c->add($name, "%{$value}%", Criteria::LIKE); } } } } } }