/** * @about Interface. */ public function indexAction() { $this->_helper->viewRenderer->setNoRender(false); $this->_helper->layout()->enableLayout(); if (Zend_Auth::getInstance()->hasIdentity()) { $authInfo = Zend_Auth::getInstance()->getStorage()->read(); $this->view->assign('department_id', $authInfo['department_id']); $session_startdate = Acad_Model_DbTable_AcademicSession::getSessionStartDate(); $this->view->assign('session_startdate', $session_startdate); } }
public function init() { $session_startdate = Acad_Model_DbTable_AcademicSession::getSessionStartDate(); $this->view->assign('session_startdate', $session_startdate); if (Zend_Auth::getInstance()->hasIdentity()) { $authInfo = Zend_Auth::getInstance()->getStorage()->read(); $this->department_id = $authInfo['department_id']; $this->identity = $authInfo['identity']; $staff_id = $authInfo['identity']; } $this->view->assign('controller', $this->_request->getControllerName()); $this->view->assign('module', $this->_request->getModuleName()); $this->view->assign('staff_id', $this->identity); parent::init(); }
public function attendanceAction() { $department = new Acad_Model_Department(); $request = $this->getRequest(); $department_id = $request->getParam('department_id'); $programme_id = $request->getParam('programme_id', 'BTECH'); $dateFrom = $request->getParam('date_from'); $dateUpto = $request->getParam('date_upto'); $semester = $request->getParam('semester'); $format = $this->_getParam('format', 'html'); $authContent = Zend_Auth::getInstance()->getIdentity(); if ('mgmt' == strtolower($authContent['department_id'])) { $this->view->assign('aboveDepartments', TRUE); } else { $department_id = $authContent['department_id']; } $this->view->assign('programme_id', $programme_id); $this->view->assign('department_id', $department_id); if (isset($department_id) and isset($programme_id)) { $attendance = $department->getStudentAttendance($programme_id, $dateFrom, $dateUpto, $semester); switch (strtolower($format)) { case 'test': $this->_helper->logger($attendance); return; case 'html': $this->_helper->viewRenderer->setNoRender(false); $this->_helper->layout()->enableLayout(); $this->view->assign('department_id', $department_id); $this->view->assign('date_from', $dateFrom); $this->view->assign('date_upto', $dateUpto); $this->view->assign('attendance', $attendance); $session_startdate = Acad_Model_DbTable_AcademicSession::getSessionStartDate(); $this->view->assign('session_startdate', $session_startdate); return; case 'json': echo $this->_helper->json($attendance, false); return; } } }
public function tempAction() { echo '<pre>'; //$obj = new Acad_Model_DbTable_TimeTable(); //$var = Acad_Model_DbTable_TimeTable::currentPeriodStatus('438', TRUE); $var = Acad_Model_DbTable_AcademicSession::getSessionEndDate(); print_r($var); }
public function insert(array $data) { $periodStaus = self::periodStatus($data['period_id'], true); if ('FULL' != $periodStaus['STATUS']) { if ('PARTIAL' == $periodStaus['STATUS']) { if ('ALL' === strtoupper($data['group_id'])) { throw new Zend_Exception('Period status is ' . $periodStaus['STATUS'] . '. ' . $data['group_id'] . ' groups can not be placed.', Zend_Log::WARN); } //TODO More strict check can also be implemented (It is still having some holes but hard to detect, I dont want to correct that because frontend covers that problem.). /* self::getLogger()->log('Future partial period!! Do something.', Zend_Log::DEBUG); $errVar = ''; foreach ($periodStaus['periodStatus'] as $key => $value) { $errVar .= "[$key] ::".var_export($value, true); } self::getLogger()->log('Future partial period. Attempt: '.var_export($data, true).' Actual: '.$errVar, Zend_Log::DEBUG); */ } //TODO Include Block and Rooms $data['block_id'] = 'ADM_B1'; $data['room_id'] = '1'; $periodsCovered = $data['period']; for ($i = 1; $i < $data['period_duration']; ++$i) { $nextPeriod = $data['period'] + $i; $periodsCovered .= ',' . $nextPeriod; } $data['periods_covered'] = $periodsCovered; $date = new Zend_Date(); $date->setDate($data['valid_from'], 'dd/MM/YYYY'); $data['valid_from'] = $date->toString('YYYY-MM-dd'); $data['valid_upto'] = Acad_Model_DbTable_AcademicSession::getSessionEndDate(); $currentPeriodStatus = self::currentPeriodStatus($data['period_id'], TRUE); self::getDefaultAdapter()->beginTransaction(); if ($currentPeriodStatus['STATUS'] != 'EMPTY') { self::updateCurrentValidity($currentPeriodStatus, $data['group_id'], $data['valid_from'], $data['periods_covered']); } unset($data['period']); unset($data['degree_id']); unset($data['semester_id']); unset($data['weekday_number']); self::getLogger()->log('Final data for insert', Zend_Log::INFO); self::getLogger()->log($data, Zend_Log::DEBUG); //Strange but NULL values are being accepted by MySQL(at least my server even in NOT NULL condition) //so im crossing checking null values foreach ($data as $column => $value) { if (!$value) { self::getDefaultAdapter()->rollBack(); throw new Zend_Exception($column . ' should have some value.', Zend_Log::ERR); } } $newID = parent::insert($data); self::getDefaultAdapter()->commit(); return $newID; } else { $errVar = ''; foreach ($periodStaus['periodStatus'] as $key => $value) { $errVar .= "[{$key}] ::" . var_export($value, true); } throw new Zend_Exception('Future period entry confliction. Attempt: ' . var_export($data, true) . ' Actual: ' . $errVar, Zend_Log::WARN); } }
public function attendanceAction() { $department_id = $this->_getParam('department_id'); $subject_code = $this->_getParam('subject_code'); $subject_mode_id = $this->_getParam('subject_mode_id'); $lowerThreshold = $this->_getParam('lower', 65); $upperThreshold = $this->_getParam('upper', 75); $filterBelow = $this->_getParam('filter_below'); $filterAbove = $this->_getParam('filter_above'); $dateFrom = $this->_getParam('date_from'); $dateUpto = $this->_getParam('date_upto'); $status = $this->_getParam('status'); $group = $this->_getParam('group'); $subject_mode_id = $this->_getParam('subject_mode_id'); $format = $this->_getParam('format', 'html'); if (!((string) $lowerThreshold === (string) (int) $lowerThreshold) or !((string) $upperThreshold === (string) (int) $upperThreshold) or !($upperThreshold > $lowerThreshold)) { throw new Exception('Check lower and upper threshold parameters, Hint: "Upper"(i.e. ' . $upperThreshold . ') must be greater then "lower"(i.e. ' . $lowerThreshold . ')', Zend_Log::ERR); } if ($subject_code and $department_id) { $subject = new Acad_Model_Course_Subject(); $subject->setSubject_code($subject_code)->setDepartment_id($department_id)->setSubject_mode_id($subject_mode_id); $attendanceSet = $subject->getStudentAttendance($dateFrom, $dateUpto, $status, $group, $filterBelow, $filterAbove); $attendanceTotal = $subject->getAttendanceTotal(); $facultySet = $subject->getFaculty($dateFrom, $dateUpto); $stat = $subject->getStudentAttendanceStat(); $summary = $subject->attendanceSummary($lowerThreshold, $upperThreshold); $stuModeWiseAtt = $subject->attendanceStuModeWise(); $subject_name = $subject->getSubject_name(); } /* ELSE part is mentioned in view section. * else { throw new Exception('<b>Department Id</b>(department_id) as well as <b>Subject code</b>(subject_code) are <b>required</b>.', Zend_Log::INFO); }*/ switch (strtolower($format)) { case 'test': $this->_helper->logger($summary); $this->_helper->logger($attendanceSet); return; case 'html': $this->_helper->viewRenderer->setNoRender(false); $this->_helper->layout()->enableLayout(); $this->view->assign('department_id', $this->view->escape($department_id)); $this->view->assign('subject_code', $this->view->escape($subject_code)); $this->view->assign('subject_mode_id', $this->view->escape($subject_mode_id)); $this->view->assign('lowerThreshold', $lowerThreshold); $this->view->assign('upperThreshold', $upperThreshold); $this->view->assign('filterBelow', $filterBelow); $this->view->assign('filterAbove', $filterAbove); $this->view->assign('date_from', $dateFrom); $this->view->assign('date_upto', $dateUpto); $this->view->assign('stat', $stat); $this->view->assign('attendanceSet', $attendanceSet); $this->view->assign('subjectModes', array_keys($attendanceSet)); $this->view->assign('subject_name', $subject_name); $this->view->assign('summary', $summary); $this->view->assign('stuModeWiseAtt', $stuModeWiseAtt); $session_startdate = Acad_Model_DbTable_AcademicSession::getSessionStartDate(); $this->view->assign('session_startdate', $session_startdate); return; case 'json': echo $this->_helper->json($this->summary, false); return; } }