177 lines
7.0 KiB
PHP
Executable File
177 lines
7.0 KiB
PHP
Executable File
<?php
|
|
|
|
if (!defined('BASEPATH'))
|
|
exit('No direct script access allowed');
|
|
|
|
class CaregiversSchedule extends MX_Controller {
|
|
|
|
function __construct() {
|
|
parent::__construct();
|
|
//echo 'test';die;
|
|
$this->load->model('CaregiverSchedule_model');
|
|
if (!$this->ion_auth->in_group(array('admin','Caregiver'))) {
|
|
if(!$this->ion_auth->coordinator_permission('caregiver_menu')){
|
|
redirect('home/permission');
|
|
}
|
|
}
|
|
}
|
|
public function index($id=null) {
|
|
// echo $id;die;
|
|
}
|
|
public function Display($id=null){
|
|
if($id!=null){
|
|
$id = base64_dec($id);
|
|
$data['caregiver_id']=$id;
|
|
$data['caregiver']=$this->CaregiverSchedule_model->getNurseById($data['caregiver_id']);
|
|
$data['patientSchedule']=$this->CaregiverSchedule_model->caregiverScheduleById($data['caregiver_id']);
|
|
$data['AvailableSchedule']=$this->CaregiverSchedule_model->availableScheduleById($data['caregiver_id']);
|
|
$data['previousSchedule']=$this->CaregiverSchedule_model->previousScheduleById($data['caregiver_id']);
|
|
$data['schedulePreference']=$this->CaregiverSchedule_model->schedulePreferenceById($data['caregiver_id']);
|
|
}else{
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
// pre($data);die();
|
|
// echo '<pre>'; print_r($data); echo '</pre>';die;
|
|
$this->load->view('home/dashboard'); // just the header file
|
|
$this->load->view('caregiver_schedule',$data);
|
|
$this->load->view('home/footer');
|
|
}
|
|
public function addSchedule(){
|
|
$data['weekday']=$this->CaregiverSchedule_model->masterScheduleWeekdayList();
|
|
$data['caregiver_id']=$this->input->get('id');
|
|
|
|
$this->load->view('home/dashboard'); // just the header file
|
|
$this->load->view('add_new_schedule',$data);
|
|
$this->load->view('home/footer');
|
|
}
|
|
public function saveCaregiverSchedule(){
|
|
//echo '<pre>'; print_r($schedule); echo '</pre>';
|
|
$post=$this->input->post();
|
|
$created_by=$this->session->userdata('user_id');
|
|
$created_on=date ('Y-m-d H:i:s', now());
|
|
$schedule_id=$post['schedule_id'];
|
|
foreach($schedule_id as $schedule){
|
|
$data=array(
|
|
'caregiver_id'=>$post['caregiver_id'],
|
|
'schedule_master_id'=>$schedule,
|
|
'created_by'=>$created_by,
|
|
'created_on'=>$created_on,
|
|
'status'=>1,
|
|
);
|
|
$this->CaregiverSchedule_model->saveCaregiverSchedule($data);
|
|
}
|
|
redirect('caregivers/caregiverSchedule?id='.$post['caregiver_id'].'');
|
|
}
|
|
|
|
/**********************************************************/
|
|
public function CheckAvailability(){
|
|
//print_r($_GET);die;
|
|
echo $this->CaregiverSchedule_model->CheckAvailability($_GET);
|
|
}
|
|
public function saveAvailability(){
|
|
// print_r($_POST);die;
|
|
unset($_POST['ci_csrf_token']);
|
|
$caregiver_id = $_POST['caregiver_id'];
|
|
$success=$this->CaregiverSchedule_model->saveAvailability($_POST);
|
|
if($success){
|
|
|
|
// ------------Send Push Notification --------------
|
|
$getFcmToken = $this->CaregiverSchedule_model->getFcmToken($caregiver_id);
|
|
$fcm_token = $getFcmToken->fcm_token;
|
|
$post_title='Notification From Admin';
|
|
$post_message='Admin set your availability';
|
|
$type='caregiver';
|
|
sendNotification($fcm_token,$post_title,$post_message,$type);
|
|
// ------------Send Push Notification ---------------
|
|
|
|
$this->session->set_flashdata('feedback_success', 'Availability Added.');
|
|
}else{
|
|
$this->session->set_flashdata('feedback_error', 'Availability Not Added.');
|
|
}
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
function getSchedule(){
|
|
|
|
$requestData = $_REQUEST;
|
|
$caregiverId=$requestData['caregiverID'];
|
|
$start = $requestData['start'];
|
|
$limit = $requestData['length'];
|
|
$search = $this->input->post('search')['value'];
|
|
$orderColumn=$requestData['order'][0]['column'];
|
|
$orderType=$requestData['order'][0]['dir'];
|
|
|
|
if (!empty($search)) {
|
|
$data['schedules'] = $this->CaregiverSchedule_model->getScheduleByLimitBySearch($limit, $start, $search,$orderColumn, $orderType,$caregiverId);
|
|
} else {
|
|
$data['schedules'] = $this->CaregiverSchedule_model->getScheduleByLimit($limit, $start,$orderColumn,$orderType,$caregiverId);
|
|
}
|
|
|
|
// //$sl=1;
|
|
foreach ($data['schedules'] as $schedule) {
|
|
$sdate=explode(' ',$schedule->start);
|
|
$edate=explode(' ',$schedule->end);
|
|
$info[] = array(
|
|
//$sl,
|
|
|
|
$sdate[0],
|
|
$sdate[1],
|
|
$edate[1],
|
|
$schedule->patient_id,
|
|
);
|
|
//$sl++;
|
|
}
|
|
//echo '<pre>'; print_r($date); echo '</pre>';
|
|
//die;
|
|
if (!empty($data['schedules'])) {
|
|
$output = array(
|
|
"draw" => intval($requestData['draw']),
|
|
"recordsTotal" => count($data['schedules']),
|
|
"recordsFiltered" => count($data['schedules']),
|
|
"data" => $info
|
|
);
|
|
} else {
|
|
$output = array(
|
|
// "draw" => 1,
|
|
"recordsTotal" => 0,
|
|
"recordsFiltered" => 0,
|
|
"data" => []
|
|
);
|
|
}
|
|
|
|
echo json_encode($output);
|
|
}
|
|
function deleteAvailability(){
|
|
$data=$this->input->get();
|
|
$output=$this->CaregiverSchedule_model->deleteAvailability($data);
|
|
|
|
// ------------Send Push Notification --------------
|
|
$availabilityId = $data['id'];
|
|
$getFcmToken = $this->CaregiverSchedule_model->getFcmTokenByAvailabilityId($availabilityId);
|
|
$fcm_token = $getFcmToken->fcm_token;
|
|
$post_title='Notification From Admin';
|
|
$post_message='Admin delete your availability';
|
|
$type='caregiver';
|
|
sendNotification($fcm_token,$post_title,$post_message,$type);
|
|
// ------------Send Push Notification ---------------
|
|
echo $output;
|
|
}
|
|
|
|
public function getPreferenceDay(){
|
|
// print_r($_GET);
|
|
// print_r ($this->CaregiverSchedule_model->schedulePreferenceById($_GET));
|
|
if(isset($_GET['caregiver_id'])){
|
|
echo json_encode($this->CaregiverSchedule_model->schedulePreferenceById($_GET['caregiver_id']));
|
|
}
|
|
|
|
}
|
|
public function getCaregiverPreferenceDate(){
|
|
// print_r($_GET);
|
|
// print_r ($this->CaregiverSchedule_model->schedulePreferenceById($_GET));
|
|
echo json_encode($this->CaregiverSchedule_model->getCaregiverPreferenceDate($_GET));
|
|
}
|
|
}
|
|
|
|
/* End of file nurse.php */
|
|
/* Location: ./application/modules/nurse/controllers/nurse.php */
|