load->database(); } public function getSum($field, $table) { $this->db->select_sum($field); $query = $this->db->get($table); return $query->result(); } public function activity_log($data){ $this->db->insert('audit_log', $data); // die; } public function get_menu($user_id){ $this->db->select('a.name'); $this->db->from('groups a'); $this->db->join('users_groups b', 'b.group_id = a.id', 'left'); $this->db->where('b.user_id', $user_id); $data = $this->db->get()->row(); $group =$data->name; //print_r($group);die; if($group=='Caregiver') { $accessMatrix = $this->__caregiverAccessMatrix($group,$user_id); } else if($group=='Physician') { //echo "phy"; $accessMatrix = $this->__physicianAccessMatrix($group,$user_id); //echo '
'; print_r($accessMatrix); echo '';die; // die; } else { $accessMatrix = $this->__codinatorAccessMatrix($group,$user_id); } return $accessMatrix; } private function __codinatorAccessMatrix($group,$user_id) { $accessableMenu = array(); $mainCounter = 0; $this->db->order_by('menu_order', 'asc'); $mainmenu = $this->db->get_where('permissions', array('parent_id' => 0,'status'=>'1'))->result(); foreach ($mainmenu as $menu) { $accessableChildren = array(); $childrenCount = 0; $this->db->order_by('menu_order', 'asc'); $children = $this->db->get_where('permissions', array('parent_id' => $menu->id,'status'=>'1'))->result(); foreach($children as $child) { $accessableChildren[$childrenCount]['ID'] = $child->id; $accessableChildren[$childrenCount]['TEXT'] = $child->name; $accessableChildren[$childrenCount]['URL'] = $child->url; $this->db->order_by('menu_order', 'asc'); $child2=$this->db->get_where('permissions', array('parent_id' => $child->id,'status'=>'1'))->result(); $accessableChildren2 = array(); $childrenCount2 = 0; foreach($child2 as $c2){ $accessableChildren2[$childrenCount2]['ID'] = $c2->id; $accessableChildren2[$childrenCount2]['TEXT'] = $c2->name; $accessableChildren2[$childrenCount2]['URL'] = $c2->url; $childrenCount2++; } $accessableChildren[$childrenCount]['CHILDREN'] = $accessableChildren2; $childrenCount++; } $accessableMenu['MAIN'][$mainCounter]['ID'] = $menu->id; $accessableMenu['MAIN'][$mainCounter]['TEXT'] = $menu->name; $accessableMenu['MAIN'][$mainCounter]['URL'] = $menu->url; $accessableMenu['MAIN'][$mainCounter]['Menu_Icon'] = $menu->menu_icon; $accessableMenu['MAIN'][$mainCounter]['CHILDREN'] = $accessableChildren; $mainCounter++; } $accessMenu = array(); foreach($accessableMenu['MAIN'] as $mainId=>$main) { //echo '
';
// print_r($accessMenu);
return $accessMenu;
}
private function __caregiverAccessMatrix($group,$user_id)
{
//echo $user_id;
$this->db->where('ion_user_id', $user_id);
$caregiver_dtl = $this->db->get('caregiver')->row();
$caregiver_menu = $this->db->order_by("menu_order", "asc")->get_where('caregiver_menu',array('parent_id' => '0','status'=>'1'))->result();
//echo ''; print_r($caregiver_menu); echo '
';die;
$accessMenu=array();
$i=0;
foreach($caregiver_menu as $menu){
$caregiver_child_menu = $this->db->order_by("menu_order", "asc")->get_where('caregiver_menu',array('parent_id' => $menu->id,'status'=>'1'))->result();
$Children = array();
$childrenCount = 0;
foreach($caregiver_child_menu as $child){
if($caregiver_dtl->verification_status=='unverified' && $child->menu_for=='unverified'){
$accessMenu['MAIN'][$i]['CHILDREN'][$childrenCount]['NAME'] = $child->name;
$accessMenu['MAIN'][$i]['CHILDREN'][$childrenCount]['URL'] = $child->url;
$accessMenu['MAIN'][$i]['CHILDREN'][$childrenCount]['Menu_Icon'] = $child->menu_icon;
$childrenCount++;
}else if($caregiver_dtl->verification_status=='verified' && $child->menu_for=='verified'){
$accessMenu['MAIN'][$i]['CHILDREN'][$childrenCount]['NAME'] = $child->name;
$accessMenu['MAIN'][$i]['CHILDREN'][$childrenCount]['URL'] = $child->url;
$accessMenu['MAIN'][$i]['CHILDREN'][$childrenCount]['Menu_Icon'] = $child->menu_icon;
$childrenCount++;
}else if($child->menu_for=='all'){
$accessMenu['MAIN'][$i]['CHILDREN'][$childrenCount]['NAME'] = $child->name;
$accessMenu['MAIN'][$i]['CHILDREN'][$childrenCount]['URL'] = $child->url;
$accessMenu['MAIN'][$i]['CHILDREN'][$childrenCount]['Menu_Icon'] = $child->menu_icon;
$childrenCount++;
}
}
if($caregiver_dtl->verification_status=='unverified' && $menu->menu_for=='unverified'&& $caregiver_dtl->submited_for_verification == 'no'){
$accessMenu['MAIN'][$i]['NAME'] = $menu->name;
$accessMenu['MAIN'][$i]['URL'] = $menu->url;
$accessMenu['MAIN'][$i]['Menu_Icon'] = $menu->menu_icon;
$i++;
}else if($caregiver_dtl->verification_status=='verified' && $menu->menu_for=='verified'){
$accessMenu['MAIN'][$i]['NAME'] = $menu->name;
$accessMenu['MAIN'][$i]['URL'] = $menu->url;
$accessMenu['MAIN'][$i]['Menu_Icon'] = $menu->menu_icon;
$i++;
}else if($menu->menu_for=='all'){
$accessMenu['MAIN'][$i]['NAME'] = $menu->name;
$accessMenu['MAIN'][$i]['URL'] = $menu->url;
$accessMenu['MAIN'][$i]['Menu_Icon'] = $menu->menu_icon;
$i++;
}
}
return $accessMenu;
}
private function __physicianAccessMatrix($group,$user_id)
{
//echo $user_id;die;
$this->db->where('ion_user_id', $user_id);
$physician_dtl = $this->db->get('physician')->row();
$physician_menu = $this->db->order_by("menu_order", "asc")->get_where('physician_menu',array('parent_id' => '0'))->result();
//echo ''; print_r($physician_menu); echo '
';die;
$accessMenu=array();
$i=0;
foreach($physician_menu as $menu){
$physician_child_menu = $this->db->order_by("menu_order", "asc")->get_where('physician_menu',array('parent_id' => $menu->id))->result();
//echo ''; print_r($physician_dtl); echo '
';die;
$Children = array();
$childrenCount = 0;
foreach($physician_child_menu as $child){
if($physician_dtl->verification_status=='unverified' && $child->menu_for=='unverified'){
$accessMenu['MAIN'][$i]['CHILDREN'][$childrenCount]['NAME'] = $child->name;
$accessMenu['MAIN'][$i]['CHILDREN'][$childrenCount]['URL'] = $child->url;
$accessMenu['MAIN'][$i]['CHILDREN'][$childrenCount]['Menu_Icon'] = $child->menu_icon;
$childrenCount++;
}else if($physician_dtl->verification_status=='verified' && $child->menu_for=='verified'){
$accessMenu['MAIN'][$i]['CHILDREN'][$childrenCount]['NAME'] = $child->name;
$accessMenu['MAIN'][$i]['CHILDREN'][$childrenCount]['URL'] = $child->url;
$accessMenu['MAIN'][$i]['CHILDREN'][$childrenCount]['Menu_Icon'] = $child->menu_icon;
$childrenCount++;
}else if($child->menu_for=='all'){
$accessMenu['MAIN'][$i]['CHILDREN'][$childrenCount]['NAME'] = $child->name;
$accessMenu['MAIN'][$i]['CHILDREN'][$childrenCount]['URL'] = $child->url;
$accessMenu['MAIN'][$i]['CHILDREN'][$childrenCount]['Menu_Icon'] = $child->menu_icon;
$childrenCount++;
}
}
if($physician_dtl->verification_status=='unverified' && $menu->menu_for=='unverified'){
$accessMenu['MAIN'][$i]['NAME'] = $menu->name;
$accessMenu['MAIN'][$i]['URL'] = $menu->url;
$accessMenu['MAIN'][$i]['Menu_Icon'] = $menu->menu_icon;
$i++;
}else if($physician_dtl->verification_status=='verified' && $menu->menu_for=='verified'){
$accessMenu['MAIN'][$i]['NAME'] = $menu->name;
$accessMenu['MAIN'][$i]['URL'] = $menu->url;
$accessMenu['MAIN'][$i]['Menu_Icon'] = $menu->menu_icon;
$i++;
}else if($menu->menu_for=='all'){
$accessMenu['MAIN'][$i]['NAME'] = $menu->name;
$accessMenu['MAIN'][$i]['URL'] = $menu->url;
$accessMenu['MAIN'][$i]['Menu_Icon'] = $menu->menu_icon;
$i++;
}
}
//echo ''; print_r($accessMenu); echo '
';die;
return $accessMenu;
}
public function getCargiverInfo($id){
$this->db->where('id', $id);
$query = $this->db->get('caregiver')->row();
$query->full_name=$query->fname.' '.$query->lname;
//return json_encode($query);
$this->db->where('id', $query->qualification_type);
$this->db->where('status', '1');
$qualification = $this->db->get('master_cg_skills')->row();
$query->qualification_name=$qualification->name;
return $query;
}
function getSchedule($patientId='',$caregiverId='',$start='',$end=''){
$this->db->where('status','1');
if($patientId!='')
$this->db->where('patient_id',$patientId);
if($caregiverId!='')
$this->db->where('caregiver_id',$caregiverId);
if($start!='' && $end!='')
$this->db->where("start >= '".$start."' AND end <= '".$end."'");
$query = $this->db->get('caregiver_schedule')->result();
$i=0;
foreach($query as $q){
//$id = $q->id;
$sed[$i]['id']=$q->id;
$sed[$i]['patientId']=$q->patient_id;
$sed[$i]['caregiverId']=$q->caregiver_id;
$sed[$i]['start']=$q->start;
$sed[$i]['end']=$q->end;
$sed[$i]['title']=$q->title;
$sed[$i]['color']='#e83e8c';
$i++;
}
$availability=$this->db->get_where('caregiver_availability',array('caregiver_id'=>$caregiverId,'status'=>1))->result();
foreach($availability as $avl){
$sed[$i]['id']=$avl->id;
//$sed[$i]['patientId']=$q->patient_id;
$sed[$i]['caregiverId']=$avl->caregiver_id;
$sed[$i]['start']=$avl->start;
$sed[$i]['end']=$avl->end;
//$sed[$i]['title']=$q->title;
$sed[$i]['rendering']='background';
$sed[$i]['color']='#a2f0ba';
$i++;
}
$ret = array();
foreach($sed as $q){
$ret[] = $q;
}
return $ret;
}
}