/** * */ public function notifyClassExpired() { $dbAdapter = Zend_Db_Table_Abstract::getDefaultAdapter(); $dbAdapter->beginTransaction(); try { // Search all the expired classes $studentClassMapper = new StudentClass_Model_Mapper_StudentClass(); $selectClass = $studentClassMapper->getSelectClass(); $selectClass->where('sc.active = ?', 1)->where('sc.schedule_finish_date < ?', Zend_Date::now()->toString('yyyy-MM-dd')); $dbStudentClass = App_Model_DbTable_Factory::get('FEFPStudentClass'); $rows = $dbStudentClass->fetchAll($selectClass); // Search the user who must receive notes when class are expired $noteTypeMapper = new Admin_Model_Mapper_NoteType(); $users = $noteTypeMapper->getUsersByNoteType(Admin_Model_Mapper_NoteType::CLASS_EXPIRED); $noteModelMapper = new Default_Model_Mapper_NoteModel(); $noteMapper = new Default_Model_Mapper_Note(); foreach ($rows as $row) { $dataNote = array('title' => 'KLASE LORON REMATA LIU TIHA ONA', 'level' => 0, 'message' => $noteModelMapper->getClassExpired($row->id_fefpstudentclass), 'users' => $users); $noteMapper->setData($dataNote)->saveNote(); } $dbAdapter->commit(); return true; } catch (Exception $e) { $dbAdapter->rollBack(); echo "Error sending class expired notifications: " . $e->getMessage() . "\n"; return false; } }
/** * * @return Zend_Db_Table_Rowset */ public function listStudentClassContract() { $mapperStudentClasss = new StudentClass_Model_Mapper_StudentClass(); $select = $mapperStudentClasss->getSelectClass(); $dbPCEContract = App_Model_DbTable_Factory::get('PCEContract'); $select->join(array('pcc' => $dbPCEContract), 'pcc.fk_id_fefpstudentclass = sc.id_fefpstudentclass', array())->group(array('id_fefpstudentclass')); return $dbPCEContract->fetchAll($select); }
/** * * @param int $barrier * @return Zend_Db_Table_Rowset */ public function listClassIntervention($intervention, $case) { $mapperStudentClass = new StudentClass_Model_Mapper_StudentClass(); $selectStudentClass = $mapperStudentClass->getSelectClass(); $dbActionPlanBarrier = App_Model_DbTable_Factory::get('Action_Plan_Barrier'); $dbActionPlanReferences = App_Model_DbTable_Factory::get('Action_Plan_References'); $dbActionpPlanHasGroup = App_Model_DbTable_Factory::get('Action_Plan_has_Group'); $selectStudentClass->join(array('apr' => $dbActionPlanReferences), 'apr.fk_id_fefpstudentclass = sc.id_fefpstudentclass', array())->join(array('apb' => $dbActionPlanBarrier), 'apb.id_action_barrier = apr.fk_id_action_barrier', array())->join(array('apg' => $dbActionpPlanHasGroup), 'apg.fk_id_action_plan = apb.fk_id_action_plan', array())->where('apg.fk_id_action_plan_group = ?', $case)->where('apb.fk_id_barrier_intervention = ?', $intervention)->group(array('id_fefpstudentclass')); return $dbActionPlanReferences->fetchAll($selectStudentClass); }
/** * * @param int $id * @return Zend_Db_Table_Rowset */ public function listClassBarriers($id) { $mapperStudentClass = new StudentClass_Model_Mapper_StudentClass(); $selectStudentClass = $mapperStudentClass->getSelectClass(); $dbActionPlanReferences = App_Model_DbTable_Factory::get('Action_Plan_References'); $dbStudentClassPerData = App_Model_DbTable_Factory::get('FEFEPStudentClass_has_PerData'); $selectStudentClass->join(array('apr' => $dbActionPlanReferences), 'apr.fk_id_fefpstudentclass = sc.id_fefpstudentclass', array())->joinLeft(array('scp' => $dbStudentClassPerData), 'scp.fk_id_fefpstudentclass = sc.id_fefpstudentclass AND scp.fk_id_perdata = apr.fk_id_perdata', array('in_class' => 'id_relationship'))->where('apr.fk_id_action_barrier = ?', $id); return $dbActionPlanReferences->fetchAll($selectStudentClass); }