HEX
Server: Apache/2.4.41 (Amazon) OpenSSL/1.0.2k-fips PHP/5.6.40
System: Linux ip-172-31-40-18 4.14.146-93.123.amzn1.x86_64 #1 SMP Tue Sep 24 00:45:23 UTC 2019 x86_64
User: apache (48)
PHP: 5.6.40
Disabled: NONE
Upload Files
File: /var/www/html/pmw24/driver_settlement/old/applicationold/models/Mapi1.php
<?php
 class Mapi extends CI_Model {
    function __construct(){
        parent::__construct(); 
    }
    public function insert($table,$data){
        $this->db->insert($table,$data);
        return $this->db->insert_id();
    }
	public function batch_insert($table,$data){
        $this->db->insert_batch($table,$data);
        return 1;
    } 
    public function getDetails($table,$condition){
        $this->db->where($condition);
        $query=$this->db->get($table);
        return $query->result_array(); 
    }
    public function getBrandList($category_id=''){
        $this->db->select('brand_id,brand_name,brand_description,category_id,concat("'.base_url("uploads/brand/").'",brand_image) as file_path'); 
        $this->db->where('brand_status',1);
        if($category_id){
            $this->db->where('category_id',$category_id);
        }
        $query=$this->db->get('brand');
        //echo $this->db->last_query(); die();
        return $query->result_array(); 
    }
    public function getBannerList(){
        $this->db->select('banner_id,banner_name,concat("'.base_url("uploads/banner/").'",banner_image) as file_path'); 
        $this->db->where('banner_status',1);
        $query=$this->db->get('banner');
        //echo $this->db->last_query(); die();
        return $query->result_array(); 
    }
    public function getParentCategoryList(){
        $this->db->select('category_id,category_name,category_description,category_slug,parent_id,case when category_image ="" then "" else concat("'.base_url("uploads/category/").'",category_image) end as file_path'); 
        $this->db->where('category_status',1);
        $this->db->where('parent_id',0);
        $query=$this->db->get('categories');
        return $query->result_array(); 
    }
    public function getChildCategoryList($parent_id){
        $this->db->select('category_id,category_name,category_description,category_slug,parent_id,case when category_image ="" then "" else concat("'.base_url("uploads/category/").'",category_image) end as file_path'); 
        $this->db->where('category_status',1);
        $this->db->where('parent_id',$parent_id);
        $query=$this->db->get('categories');
        return $query->result_array(); 
    }
    public function getProuctList($category_id='',$brand_id='',$post_code){
        $this->db->select('product.product_id,product_name,product_rate, concat("'.base_url("uploads/product_images/").'",image_path) as file_path'); 
        $this->db->join('admins', 'admins.admin_id = product.vendor_id', 'inner');
        $this->db->join('vendor_postcode_mapping', 'vendor_postcode_mapping.vendor_id = admins.admin_id', 'inner');
        $this->db->join('post_code', 'post_code.post_code_id = vendor_postcode_mapping.postcode_id', 'inner');
        $this->db->join('product_image', 'product_image.product_id = product.product_id', 'inner');
        $this->db->where('post_code.post_code',$post_code);
        if(isset($category_id) && $category_id!=''){
            $this->db->where('product.category_id',$category_id);      
        }
        if(isset($brand_id) && $brand_id !=''){
            $this->db->where('product.brand_id',$brand_id);      
        }
        $this->db->group_by('product_id'); 
        $query=$this->db->get('product');
        //echo $this->db->last_query(); die();
        return $query->result_array(); 
    }

    public function getProuctSearchList($search_string='',$post_code){
        $this->db->select('product.product_id,product_name,product_rate,category_id,brand_id, concat("'.base_url("uploads/product_images/").'",image_path) as file_path'); 
        $this->db->join('admins', 'admins.admin_id = product.vendor_id', 'inner');
        $this->db->join('vendor_postcode_mapping', 'vendor_postcode_mapping.vendor_id = admins.admin_id', 'inner');
        $this->db->join('post_code', 'post_code.post_code_id = vendor_postcode_mapping.postcode_id', 'inner');
        $this->db->join('product_image', 'product_image.product_id = product.product_id', 'inner');
        $this->db->where('post_code.post_code',$post_code);
        $this->db->like('product_name', $search_string);
        $this->db->group_by('product_id'); 
        $query=$this->db->get('product');
        //echo $this->db->last_query(); die();
        return $query->result_array(); 
    }

    public function get_details($product_id){
		$this->db->select('*');
		$this->db->from('product');
		$this->db->where('product_id',$product_id);
		$query=$this->db->get();
		return $query->row_array();
    }
    public function get_all_product_image_details($product_id){
		$this->db->select('image_id,product_id,date_of_creation,concat("'.base_url("uploads/product_images/").'",image_path) as file_path');
		$this->db->from('product_image');
		$this->db->where('product_id',$product_id);
        $query=$this->db->get();
        //echo $this->db->last_query();die;
		return $query->result_array();
    }
    
    public function get_all_product_attribute_details($product_id){
		$this->db->select('product_attribute.price,product_attribute.stock,attribute_mapping.attribute_value,product_attribute.product_attribute_id,product_attribute.product_id');
        $this->db->from('product_attribute');
        $this->db->join('attribute_mapping', 'attribute_mapping.attribute_mapping_id = product_attribute.attribute_mapping_id', 'inner');
		$this->db->where('product_id',$product_id);
        $query=$this->db->get();
        //echo $this->db->last_query();die;
		return $query->result_array();
    }
    public function get_all_cart_product_attribute_details($product_attribute_id){
		$this->db->select('product_attribute.price,attribute_mapping.attribute_value');
        $this->db->from('product_attribute');
        $this->db->join('attribute_mapping', 'attribute_mapping.attribute_mapping_id = product_attribute.attribute_mapping_id', 'inner');
		$this->db->where('product_attribute_id',$product_attribute_id);
        $query=$this->db->get();
        //echo $this->db->last_query();die;
		return $query->row_array();
    }
    
    public function get_all_rates(){
		$this->db->select('*');
        $this->db->from('rate'); 
        $this->db->where('rate_id',1);
        $query=$this->db->get();
        return $query->row_array();
    }
    public function getRow($table,$condition){
        $this->db->where($condition);
        $query=$this->db->get($table);
        return $query->row_array();
    } 
    public function getCount($table,$condition){
        $this->db->where($condition);
        $query=$this->db->get($table);
        return $query->num_rows();
    } 
    public function checkUser($condition){
        $this->db->select('users.*,islands.island_id,islands.islands_name,currency.currency_id,currency.currency_title');
        $this->db->join('islands', 'islands.island_id = users.country', 'inner');
        $this->db->join('currency', 'currency.currency_id = islands.currency_id', 'inner');
        $this->db->where($condition);
        $query=$this->db->get('users');
        return $query->row_array(); 
    } 
    public function update($table,$condition,$data){
        $this->db->where($condition);
        $this->db->update($table,$data);
        //echo $this->db->last_query(); die();
        return $this->db->affected_rows();
    }
	public function getRows($table,$condition,$order_col=null,$order_type=null){
        $this->db->where($condition);
		
        if(!empty($order_col) && !empty($order_type)){
            $this->db->order_by($order_col,$order_type);
        }
        $query=$this->db->get($table);
        return $query->result_array();
    }
	public function delete($table,$condition){
        $this->db->where($condition);  
        $this->db->delete($table); 
        return true;
    }

    public function joinQuery($data,$condition = null,$return_type){
        if(array_key_exists('select',$data) && $data['select'] != ""){
            $this->db->select($data['select']);
        }else{
            $this->db->select('*');
        }
        $this->db->from($data['first_table']);

        if(array_key_exists('second_table',$data) && array_key_exists('dependency1',$data) && array_key_exists('join_type1',$data)){
            if($data['second_table'] != "" && $data['dependency1'] != "" && $data['join_type1'] != ""){
                $this->db->join($data['second_table'],$data['dependency1'],$data['join_type1']);
            }
        }
        if(array_key_exists('third_table',$data) && array_key_exists('dependency2',$data) && array_key_exists('join_type2',$data)){
            if($data['third_table'] != "" && $data['dependency2'] != "" && $data['join_type2'] != ""){
                $this->db->join($data['third_table'],$data['dependency2'],$data['join_type2']);
            }
        }
        if(array_key_exists('forth_table',$data) && array_key_exists('dependency3',$data) && array_key_exists('join_type3',$data)){
            if($data['forth_table'] != "" && $data['dependency3'] != "" && $data['join_type3'] != ""){
                $this->db->join($data['forth_table'],$data['dependency3'],$data['join_type3']);
            }
        }
        if(array_key_exists('fifth_table',$data) && array_key_exists('dependency4',$data) && array_key_exists('join_type4',$data)){
            if($data['fifth_table'] != "" && $data['dependency4'] != "" && $data['join_type4'] != ""){
                $this->db->join($data['fifth_table'],$data['dependency4'],$data['join_type4']);
            }
        }
        $this->db->where($condition);
        $query = $this->db->get();
        //echo $this->db->last_query(); die();
        if($query->num_rows() > 0){
            if($return_type == 'result'){
                return $query->result_array();
            }elseif($return_type == 'row'){
                return $query->row_array();
            }
        }else{
            return false;
        }
    }

	public function getTokenDetailsByDeviceToken($ap){
        $condition=array('token_owner'=>$ap['device_token']);
        $this->db->where($condition);
        $this->db->order_by('token_id','desc');
        $this->db->limit(1);
        $query=$this->db->get('api_token');
        //print_r($this->db->last_query());die();
        return $query->row_array();
    }

	public function getTokenDetailsByTokenkey($token_key){
        $condition=array('token_key'=>$token_key);
        $this->db->where($condition);
        $this->db->order_by('token_id','desc');
        $this->db->limit(1);
        $query=$this->db->get('api_token');
        //print_r($this->db->last_query());die();
        return $query->row_array();
    }	

    
    public function updateOnCall($data){
        $this->db->where('admin_id',$data['admin_id']);
        $this->db->limit(1);
        $this->db->order_by('admin_login_hours_id','DESC');
        $query=$this->db->update('admin_login_hours',$data);
        return $query;
    }
    public function getDeviceToken($table,$ids,$select){
        $this->db->select($select);
        $this->db->where_in('admin_id',$ids);
        $query=$this->db->get($table);
        //print_r($this->db->last_query());die();
        return $query->result_array();
    }
    public function caseWorkTypeDetails($case_id){
        $sql="select * from case_details join work_types on case_details.work_type_id=work_types.work_type_id
         where case_id=".$case_id;
        $query=$this->db->query($sql);
        $result=$query->result_array();
        return $result;
    }
    
    public function getCareGiverOngoingCase($care_giver_id){
        $data=array();
        $sql="select * from case_care_givers join cases on cases.case_id=case_care_givers.case_id where case_care_givers.status=1 and case_care_givers.care_giver_id=".$care_giver_id;
        $query=$this->db->query($sql);
        $result=$query->result_array();
        if(count($result)>0){
            $j=0;
            foreach($result as $res){
                $temp = $this->caseWorkTypeDetails($res['case_id']);
                $res['work_list']=$temp;

                //print_r($res); die();
                if(isset($temp) && $temp){
                    $i=0;
                    $res['work_list'][$j]['work_type_current_status']=$this->getWorkTypeCurrentStatus($res['work_list'][$i]['case_details_id'],$care_giver_id);
                    foreach($temp as $t){
                        $temp2 = $this->caseSubWorkTypeDetails($temp[$i]['case_details_id'],$care_giver_id);
                        $res['work_list'][$i]['detail'] = $temp2;
                        $i++;
                    }
                }
                $data[]=$res;
                $j++;
            }
        }
        return $data; 
    }

    public function email_check($email,$user_id){
		$this->db->select('*');
		$this->db->from('users');
        $this->db->where('email',$email);
        $this->db->where_not_in('user_id', $user_id);
		$query=$this->db->get();
		return $query->row_array();
    }

    public function cart_check($product_id,$user_id,$prouct_attribute_id){
		$this->db->select('*');
		$this->db->from('cart');
        $this->db->where('product_id',$product_id);
        $this->db->where('user_id',$user_id);
        $this->db->where('prouct_attribute_id',$prouct_attribute_id);
		$query=$this->db->get();
		return $query->row_array();
    }

    public function getCartCount($user_id){
		$this->db->select('*');
		$this->db->from('cart');
        $this->db->where('user_id',$user_id);
		$query=$this->db->get();
		return $query->num_rows();
    }

    

    public function get_deals($postcode){
        $this->db->select('deals_name,deals_description,product.product_id,product_name,product_rate, concat("'.base_url("uploads/product_images/").'",product_image.image_path) as product_file_path , concat("'.base_url("uploads/deals/").'",deals_image) as deals_file_path'); 
        $this->db->from('deals');
        $this->db->join('product', 'product.product_id = deals.product_id', 'inner');
        $this->db->join('admins', 'admins.admin_id = product.vendor_id', 'inner');
        $this->db->join('vendor_postcode_mapping', 'vendor_postcode_mapping.vendor_id = admins.admin_id', 'inner');
        $this->db->join('post_code', 'post_code.post_code_id = vendor_postcode_mapping.postcode_id', 'inner');
        $this->db->join('product_image', 'product_image.product_id = product.product_id', 'inner');
        $this->db->where('post_code.post_code',$postcode);
        $this->db->group_by('deals_id'); 
		$query=$this->db->get();
		return $query->result_array();
    }

    public function getCartList($user_id){
        $this->db->select('cart_id,cart.user_id,cart.product_id,cart.prouct_attribute_id,cart.quantity, concat("'.base_url("uploads/product_images/").'",image_path) as file_path'); 
        $this->db->join('product', 'product.product_id = cart.product_id', 'inner');
        $this->db->join('product_image', 'product_image.product_id = product.product_id', 'inner');
        $this->db->where('user_id',$user_id);
        $this->db->group_by('cart_id'); 
        $query=$this->db->get('cart');
        //echo $this->db->last_query(); die();
        return $query->result_array(); 
    }

    public function getWishlist($user_id){
        $this->db->select('wishlist_id,wishlist.user_id,wishlist.product_id,product_name,product_rate, concat("'.base_url("uploads/product_images/").'",image_path) as file_path'); 
        $this->db->join('product', 'product.product_id = wishlist.product_id', 'inner');
        $this->db->join('product_image', 'product_image.product_id = product.product_id', 'inner');
        $this->db->where('user_id',$user_id);
        $this->db->group_by('wishlist_id'); 
        $query=$this->db->get('wishlist');
        //echo $this->db->last_query(); die();
        return $query->result_array(); 
    }

    public function get_user_product_wishlist($product_id,$user_id){
        $this->db->select('wishlist_id,wishlist.user_id'); 
        $this->db->where('user_id',$user_id);
        $this->db->where('wishlist.product_id',$product_id);
        $query=$this->db->get('wishlist');
        //echo $this->db->last_query(); die();
        return $query->num_rows();
    }


    public function getAddressList($user_id,$address_type){
        $this->db->select('address_id,address_type,address_name,street,gate_code,address,city,state,zip_code,phone_number,address_special_instruction'); 
        $this->db->where('user_id',$user_id);
        $this->db->where('address_type',$address_type);
        $query=$this->db->get('user_address');
        //echo $this->db->last_query(); die();
        return $query->result_array(); 
    }

    public function get_orderhistory($user_id){
        //$this->db->select('order_id,order_tbl.user_id'); 
        $this->db->where('user_id',$user_id);
        $this->db->group_by('order_id'); 
        $this->db->order_by('order_id','desc'); 
        $query=$this->db->get('order_tbl');
        //echo $this->db->last_query(); die();
        return $query->result_array(); 
    }

    public function getCartDetails($user_id){
		$this->db->select('cart.*,product_attribute.price');
        $this->db->from('cart');
        $this->db->join('product_attribute', 'product_attribute.product_attribute_id = cart.prouct_attribute_id', 'inner');
        $this->db->where('user_id',$user_id);
        $query=$this->db->get();
        //echo $this->db->last_query(); die();
		return $query->result_array();
    }

    public function get_reorder_details($user_id,$order_id){
        $this->db->select('order_details_id,order_details_tbl.user_id,order_details_tbl.product_id,order_details_tbl.prouct_attribute_id,order_details_tbl.quantity,order_details_tbl.attribute_price');
        $this->db->where('order_id',$order_id); 
        $this->db->where('user_id',$user_id); 
        $this->db->group_by('order_details_id'); 
        $query=$this->db->get('order_details_tbl');
        //echo $this->db->last_query(); die();
        return $query->result_array(); 
    }

    public function getCountries(){
		$this->db->select('islands.*,currency.currency_title');
        $this->db->from('islands');
        $this->db->join('currency', 'currency.currency_id = islands.currency_id', 'inner');
        $query=$this->db->get();
        //echo $this->db->last_query(); die();
		return $query->result_array();
    }


    
}