File manager - Edit - /home/wwwroot/camplus.hk/master.camplus.hk/public_html/application/modules/event_booking/models/Circular_model.php
Back
<?php Class Circular_Model extends CI_Model{ function addCircular($data,$file=""){ if($file!="") { $insertData['attachment'] = $file['attachment']['name']; } $insertData['event_id'] = $data['event_id'];unset($data['event_id']); $event_info = $this->db->get_where('events',array('id'=>$insertData['event_id']))->row_array(); $insertData['teacher_in_charge'] = $event_info['teacher_in_charge']; $insertData['section_id'] = $data['event_series'];unset( $data['event_series']); $insertData['circular_body'] = $data['circular_body'];unset($data['circular_body']); $insertData['circular_templates'] = $data['circular_templates'];unset($data['circular_templates']); $date = date('Y-m-d',strtotime(str_replace('/','-',$data['distribute_date']))); if ($data['type'] == 0) $insertData['status'] = "SUBMITTED"; elseif ($data['type'] == 1) $insertData['status'] = "DRAFT"; unset($data['type']); $insertData['distribute_date'] = $date; $this->db->insert('circulars',$insertData); return $this->db->insert_id(); } function editCircular($data, $id, $file=""){ // if($file!="") { // $insertData['attachment'] = $file['attachment']['name']; // } $insertData['event_id'] = $data['event_id']; unset($data['event_id']); $insertData['event_series'] = $data['event_series']; unset($data['event_series']); $event_info = $this->db->get_where('events',array('id'=>$insertData['event_id']))->row_array(); $insertData['teacher_in_charge'] = $event_info['teacher_in_charge']; unset($data['teacher_in_charge']); if(!empty($insertData['section_id'])) {$insertData['section_id'] = $data['event_series']; unset($data['event_series']);}; $insertData['circular_body'] = $data['circular_body']; unset($data['circular_body']); $insertData['circular_templates'] = $data['circular_templates']; unset($data['circular_templates']); $date = date('Y-m-d',strtotime(str_replace('/','-',$data['distribute_date']))); unset($data['distribute_date']); if ($data['type'] == 0) { $insertData['status'] = "SUBMITTED"; $userlist = array(); // Notify approver $roles = $this->db->query('SELECT * FROM role_acl WHERE permission LIKE "%APPROVE_CIRCULAR%"')->result_array(); foreach($roles as $role) { $users = $this->db->get_where('users_roles',array('role_id'=>$role['role_id']))->result_array(); foreach($users as $user) { if(!in_array($user['user_id'],$userlist)) $userlist[] = $user['user_id']; } } $message = 'Please check out the circular for to approve'; $url = base_url() . 'event_booking/circular/edit/' . $id; foreach($userlist as $uid) { email($uid, allUsers($insertData['teacher_in_charge']) . ' submiteed a circular', $message, $url,'EB'); } } elseif ($data['type'] == 1) $insertData['status'] = "DRAFT"; unset($data['status']); $insertData['distribute_date'] = $date; unset($data['distribute_date']); //$insertData['serialized_data']=serialize($data); return $this->db->update('circulars',$insertData,"id=".$id); } function deleteCircular($id){ if($this->db->delete('circulars', array('id' => $id))){ return true; } else return false; } function getCircularsByUser($id=1){ $circulars = $this->db->get_where('circulars',array('teacher_in_charge' => $id))->result_array(); foreach ($circulars as $key => $circular){ $event_info = $this->db->get_where('events',array('id'=>$circular['event_id']))->row_array(); $circulars[$key]['event'] = $event_info['event_title']; $circulars[$key]['section'] = $circular['section_id']; $circulars[$key]['template_id'] = $circular['circular_templates']; } return $circulars; } function getCircularsByEvent($id=0){ $circulars = $this->db->get_where('circulars',array('event_id' => $id))->result_array(); foreach ($circulars as $key => $circular){ $event_info = $this->db->get_where('events',array('id'=>$circular['event_id']))->row_array(); $circulars[$key]['event'] = $event_info['event_title']; $circulars[$key]['section'] = $circular['section_id']; $circulars[$key]['template_id'] = $circular['circular_templates']; } return $circulars; } function getCircular($num = 0){ $circular = $this->db->get_where('circulars',array('id' => $num))->row_array(); $event_info = $this->db->get_where('events',array('id'=>$circular['event_id']))->row_array(); $circular['event'] = $event_info['event_title']; $circular['section'] = $circular['section_id']; $circular['template_id'] = $circular['circular_templates']; return $circular; } function getCirculars(){ $this->db->select('circulars.*,events.event_title'); $this->db->join('events','circulars.event_id=events.id'); $circular = $this->db->get('circulars')->result_array(); return $circular; } function getPendingCirculars(){ $circulars = $this->db->get_where('circulars',array('status' => "SUBMITTED"))->result_array(); foreach ($circulars as $key => $circular){ $event_info = $this->db->get_where('events',array('id'=>$circular['event_id']))->row_array(); $circulars[$key]['event'] = $event_info['event_title']; $circulars[$key]['section'] = $circular['section_id']; $circulars[$key]['circular_number'] = $circular['circular_number']; $circulars[$key]['template_id'] = $circular['circular_templates']; } return $circulars; } function getMyEvents($id=1){ return $this->db->get_where('events',array('teacher_in_charge' => $id))->result_array(); } function getEventToken($id,$section=1) { $query = $this->db->get_where('events',array('id'=>$id))->row_array(); $data = unserialize($query['serializeData']); $returnData['event_name'] = $data['event_title']; $returnData['event_date']=''; $returnData['start_time']=''; $returnData['end_time']=''; $returnData['event_venue']=''; $returnData['event_participant']=''; $returnData['event_date'] = $data['startDate'][$section]; $returnData['event_teacher'] = allUsers($query['teacher_in_charge'],1); foreach ($data['from_time'][$section] as $start_time) { $returnData['start_time'] .= $start_time . ' '; } foreach ($data['to_time'][$section] as $end_time) { $returnData['end_time'] .= $end_time . ' '; } if(isSet($data['venues'])) { if(isSet($data['venues'][$section])) { foreach ($data['venues'][$section] as $venue) { if($venue!=0) { $vname = $this->db->get_where('venues',array('id'=>$venue))->row_array(); $returnData['event_venue'] .= $vname['title'] . ' '; } $returnData['event_venue'] .= $data['venueOther'][$section]; } } } if(isSet($data['participants'])) { if(isSet($data['participants'][$section])) { foreach ($data['participants'][$section] as $participant) { if($participant!=0) { $pid = explode('-',$participant)[1]; $pname = $this->db->get_where('participants',array('id'=>$pid))->result_array(); $returnData['event_participant'] .= $pname[0]['title'] . ' '; } $returnData['event_participant'] .= $data['participantOther'][$section]; } } } return $returnData; } function getAnswerToken ($id=0) { $this->db->select('forms.id'); $this->db->join('forms','forms.id = event_has_forms.form_id'); $where_array=array('forms.is_enabled'=>1, 'event_has_forms.status'=>'SUBMITTED'); if($id!=0) $where_array['event_has_forms.event_id']=$id; $data = $this->db->get_where('event_has_forms',$where_array)->result_array(); //echo $this->db->last_query(); foreach ($data as $key => $value) { $this->db->order_by('rank'); $this->db->select('form_has_questions.id as id, form_has_questions.form_id as form_id'); $this->db->join('form_question_has_token','form_has_questions.id=form_question_has_token.question_id'); $data[$key]['questions'] = $this->db->get_where('form_has_questions',array('form_id' => $value['id']))->result_array(); foreach ($data[$key]['questions'] as $qkey => $question) { $this->db->select('form_question_has_token.token,form_answers.answer'); $this->db->join('form_question_has_token','form_answers.question_id=form_question_has_token.question_id'); $data[$key]['questions'][$qkey]['answers'] = $this->db->get_where('form_answers',array('event_id' => $id,'form_id' => $value['id'],'form_answers.question_id' => $question['id']))->row_array(); } } //echo $this->db->last_query(); return $data; } function getSeries ($id=0) { $this->db->select('event_has_sections.section_group'); $this->db->group_by(array('section_group')); $returnData = $this->db->get_where('event_has_sections',array('event_id'=>$id))->result_array(); return $returnData; } function approveCircular($num = 0){ if($num != 0){ $history=array( 'status' => "APPROVED", 'circular_id'=> $num, 'user_id'=> $this->session->userdata('user_id') ); //pr($history);exit; $this->db->select('distribute_date'); $result = $this->db->get_where('circulars',array('id'=>$num))->row_array(); $distribute_date = $result['distribute_date']; //echo date('Ymd',strtotime($distribute_date));exit; $this->db->select('count(*) as count'); $this->db->group_by(array('distribute_date')); $result = $this->db->get_where('circulars',array('distribute_date'=>$distribute_date,'status'=>'APPROVED'))->row_array(); $distribute_date_count = $result['count']; $distribute_date_count+=1; if($distribute_date_count<10) $distribute_date_count = '0' . $distribute_date_count; $this->db->insert('circular_history', $history,"circular_id = $num"); $data=array( 'circular_number' => date('Ymd',strtotime($distribute_date)).$distribute_date_count, 'status' => "APPROVED" ); return ($this->db->update('circulars', $data,"id = $num")); }else return false; } function rejectCircular($num = 0,$reason){ if($num != 0){ $history=array( 'status' => "REJECTED", 'circular_id'=> $num, 'user_id'=> $this->session->userdata('user_id'), 'remarks'=>$reason['reject_reason'] ); //pr($history);exit; $this->db->insert('circular_history', $history,"circular_id = $num"); $data=array( 'status' => "REJECTED" ); return ($this->db->update('circulars', $data, "id = $num")); }else return false; } } ?>
| ver. 1.4 |
Github
|
.
| PHP 7.2.34 | Generation time: 0.43 |
proxy
|
phpinfo
|
Settings