<?php

// Begin
/*use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;
require 'C:/Workspace/phpmailer/vendor/autoload.php';*/
// end
class Webservice_model extends CI_Model{
    function __construct(){
        parent::__construct();
    }
//       public function user_reg($data){


//         $num = $this->db->where('username',$data['username'])->get('users')->num_rows();
//         $num1 = $this->db->where('email',$data['email'])->get('users')->num_rows();
        
//         if($num>0){
//             $result = array('status'=>'error','message'=>'username Already Exists');
//         }elseif($num1>0){
//             $result = array('status'=>'error','message'=>'Email Already Exists');
//         } else {
//             $this->db->insert('users',array('first_name'=>$data['first_name'],'last_name'=>$data['last_name'],'username'=>$data['username'],'email'=>$data['email'],'password'=>md5($data['password'])));
//             $user_id = $this->db->insert_id();
//             $join_date = date("Y-m-d");
//             $this->db->update('users',array('join_date'=>$join_date));
//             $this->db->insert('user_details',array('user_id'=>$user_id));

//             $this->db->insert('notifications',array('user_id'=>$user_id));
//           //  $this->db->insert('verification',array('user_id'=>$user_id,'type'=>'adhar'));
//             for($i=1;$i<=3;$i++){
//                 $data1 = array('user_id'=>$user_id,
//                               'type'=>$i);
//                 $new_result[] = $data1;
//             }

//             $this->db->insert_batch('verification',$new_result);



//             if($user_id){
//              $result = array('status'=>'success'); 
//          } else {
//             $result = array('status'=>'error');
//         }


//     }

//     return $result;
// }







//       public function user_reg($data){


//         $num = $this->db->where('username',$data['username'])->get('users')->num_rows();
//         $num1 = $this->db->where('email',$data['email'])->get('users')->num_rows();
        
//         if($num>0){
//             $result = array('status'=>'error','message'=>'username Already Exists');
//         }elseif($num1>0){
//             $result = array('status'=>'error','message'=>'Email Already Exists');
//         } else {
//             $this->db->insert('users',array('first_name'=>$data['first_name'],'last_name'=>$data['last_name'],'username'=>$data['username'],'email'=>$data['email'],'player_id'=>$data['player_id'],'password'=>md5($data['password'])));
//             $user_id = $this->db->insert_id();
//             $join_date = date("Y-m-d");
//             $this->db->update('users',array('join_date'=>$join_date));
//             $this->db->insert('user_details',array('user_id'=>$user_id));

//             $this->db->insert('notifications',array('user_id'=>$user_id));
//           //  $this->db->insert('verification',array('user_id'=>$user_id,'type'=>'adhar'));
//             for($i=1;$i<=3;$i++){
//                 $data1 = array('user_id'=>$user_id,
//                               'type'=>$i);
//                 $new_result[] = $data1;
//             }

//             $this->db->insert_batch('verification',$new_result);
//             $this->send_verification_mail($data['email'],$user_id);


//             if($user_id){
//              $result = array('status'=>'success'); 
//          } else {
//             $result = array('status'=>'error');
//         }


//     }

//     return $result;
// }

function get_cars_details(){
         $this->db->select('id,car_type');
         $this->db->from('car_make');
         $this->db->where('status',1);
         $rs['cars'] = $this->db->get()->result_array();
         return  $rs['cars'] ;
        
    }
     public function user_reg($data){


        $num = $this->db->where('username',$data['username'])->get('users')->num_rows();
        $num1 = $this->db->where('email',$data['email'])->get('users')->num_rows();
         $num2 = $this->db->where('phone_no',$data['phone_no'])->get('users')->num_rows();
        
        if($num>0){
            $result = array('status'=>'error','message'=>'username Already Exists');
        }elseif($num1>0){
            $result = array('status'=>'error','message'=>'Email Already Exists');
        }elseif($num2>0){
            $result = array('status'=>'error','message'=>'Phone Number Already Exists');
            
        }else {
            $this->db->insert('users',array('first_name'=>$data['first_name'],'last_name'=>$data['last_name'],'username'=>$data['username'],'email'=>$data['email'],'phone_no'=>$data['phone_no'],'password'=>md5($data['password']),'gender'=>$data['gender']));
            $user_id = $this->db->insert_id();
            $join_date = date("Y-m-d");
            $this->db->where('id',$user_id);
            $this->db->update('users',array('join_date'=>$join_date));
            $this->db->insert('user_details',array('user_id'=>$user_id));

            $this->db->insert('notifications',array('user_id'=>$user_id));
          //  $this->db->insert('verification',array('user_id'=>$user_id,'type'=>'adhar'));
          /*  for($i=1;$i<=4;$i++){
                $data1 = array('user_id'=>$user_id,
                              'type'=>$i);
                $new_result[] = $data1;
            }

            $this->db->insert_batch('verification',$new_result);*/
             $this->db->insert('verification',array('user_id'=>$user_id));
			
            $this->send_verification_mail($data['email'],$user_id);


            if($user_id){
             $result = array('status'=>'success'); 
         } else {
            $result = array('status'=>'error');
        }
    }

    return $result;
}








    function send_verification_mail($email,$user_id) {
      
      $rand_id = rand(1111,9999);
      $rand_value = md5(time().$rand_id);
      $this->db->where('id',$user_id)->update("users",array('req_id'=>$rand_value));
      

     $this->db->where('email',$email); 

     $query = $this->db->get('users');
      $rs = $query->row();
       

      if ($rs) {
          

        $username = $rs->first_name; 


        $this->load->helper('string'); 

        $link = base_url()."Verify_email/verify/".$rand_value;

      // $password = array( 'password' => md5($rand_pwd) ); 

        $query = $this->db->where('email', $email);

        // $query = $this->db->update('users', $password);


          if ($query) { 



        

        $this->load->library('email');
        $config = Array(
                'protocol' => 'mail',
                'smtp_host' => 'techlabz.in',
                'smtp_port' => 25,
                'smtp_user' => 'info@techlabz.in', // change it to yours
                'smtp_pass' => 'Golden_123', // change it to yours
                'smtp_timeout'=>20,
                'mailtype' => 'html',
                'charset' => 'iso-8859-1',
                'wordwrap' => TRUE
              );

         $this->email->initialize($config);// add this line

      $subject = 'New Mail';
      //$name= $data->name;
      //$mailTemplate=$data->message;

        //$this->email->set_newline("\r\n");
        $this->email->from('no-reply@techlabz.in');
        $this->email->to($email);
        $this->email->subject("Verify Your Email Adress - JoyRide");
        $this->email->message("Click the Link to verify your Email Adress:".$link);  
        $this->email->send();
      //  echo $this->email->print_debugger();
        
        
              return "EmailSend";

              } 

          } else { 
           

          //  return "EmailNotExist";
            return false;
             } }

  



    



   



    //  function login($request){
        
    //     //$this->db->where("(username = '".$request['username']."' )");
    //     $this->db->where('username' ,$request['username']);
    //     $this->db->where('password' , md5($request['password']));
    //     //  $request['username']);
    //     //   md5($request['password']));die;
    //     $query = $this->db->get('users');

    //   // echo $this->db->last_query();
    //     if($query->num_rows()>0){
    //         $rs = $query->row();
    //         return $result = array('id'=>$rs->id,'first_name'=>$rs->first_name,
    //             'last_name'=>$rs->last_name,'username'=>$rs->username,
    //             'profile_photo'=>$rs->profile_photo,'email'=>$rs->email,
    //             'phone_no'=>$rs->phone_no,'gender'=>$rs->gender,'date_of_birth'=>$rs->date_of_birth,'id_is_verified'=>$rs->id_is_verified,
    //             'phone_is_verified'=>$rs->phone_is_verified,
    //             'email_is_verified'=>$rs->email_is_verified,'join_date'=>$rs->join_date,'biography'=>$rs->biography,'govt_id_path'=>$rs->govt_id_path,'player_id'=>$rs->player_id);
    //     }else{
    //         return false;
    //     }

    // }




    function login($request){
        
        //$this->db->where("(username = '".$request['username']."' )");
        $this->db->where('username' ,$request['username']);
        $this->db->where('password' , md5($request['password']));
        //  $request['username']);
        //   md5($request['password']));die;
        $query = $this->db->get('users');

        if($query->num_rows()>0){
            $rs = $query->row();
            return $result = array('id'=>$rs->id,'first_name'=>$rs->first_name,
                'last_name'=>$rs->last_name,'username'=>$rs->username,
                'profile_photo'=>$rs->profile_photo,'email'=>$rs->email,
                'phone_no'=>$rs->phone_no,'gender'=>$rs->gender,'date_of_birth'=>$rs->date_of_birth,'id_is_verified'=>$rs->id_is_verified,
                'phone_is_verified'=>$rs->phone_is_verified,
                'email_is_verified'=>$rs->email_is_verified,'join_date'=>$rs->join_date,'biography'=>$rs->biography,'govt_id_path'=>$rs->govt_id_path);
        }else{
            return false;
        }

    }
    
    function fb_login($request){
        
        $this->db->where('fb_id' ,$request['id']);
        $query = $this->db->get('users');
        
        if($query->num_rows()>0){
            
            $rs = $query->row();
            // $rs);
            return $result = array('id'=>$rs->id,'first_name'=>$rs->first_name,
                'last_name'=>$rs->last_name,'username'=>$rs->username,
                'profile_photo'=>$rs->profile_photo,'email'=>$rs->email,
                'phone_no'=>$rs->phone_no,'gender'=>$rs->gender,'date_of_birth'=>$rs->date_of_birth,'id_is_verified'=>$rs->id_is_verified,
                'phone_is_verified'=>$rs->phone_is_verified,
                'email_is_verified'=>$rs->email_is_verified,'join_date'=>$rs->join_date,'biography'=>$rs->biography,'govt_id_path'=>$rs->govt_id_path);
        }else{
            
            $this->db->insert('users',array('first_name'=>$request['first_name'],'last_name'=>'','username'=>$request['first_name'],'email'=>$request['email_id'],'profile_photo'=>$request['profile_pic'],'player_id'=>$request['player_id']));
            
                $user_id = $this->db->insert_id();
                //  $user_id);
            $join_date = date("Y-m-d");
            $this->db->where('id',$user_id);
            $this->db->update('users',array('join_date'=>$join_date));
            $this->db->insert('user_details',array('user_id'=>$user_id));

            $this->db->insert('notifications',array('user_id'=>$user_id));
            $this->db->where('id' ,$user_id);
            $query = $this->db->get('users')->row();
             return $query;
     }

    }
	 function google_login($request){
        
        $this->db->where('google_id' ,$request['userId']);
        $query = $this->db->get('users');
        
        if($query->num_rows()>0){
            
            $rs = $query->row();
            // $rs);
            return $result = array('id'=>$rs->id,'first_name'=>$rs->first_name,
                'last_name'=>$rs->last_name,'username'=>$rs->username,
                'profile_photo'=>$rs->profile_photo,'email'=>$rs->email,
                'phone_no'=>$rs->phone_no,'gender'=>$rs->gender,'date_of_birth'=>$rs->date_of_birth,'id_is_verified'=>$rs->id_is_verified,
                'phone_is_verified'=>$rs->phone_is_verified,
                'email_is_verified'=>$rs->email_is_verified,'join_date'=>$rs->join_date,'biography'=>$rs->biography,'govt_id_path'=>$rs->govt_id_path);
        }else{

        
            
            $this->db->insert('users',array('first_name'=>$request['givenName'],'last_name'=>'','username'=>$request['familyName'],'email'=>$request['email'],'profile_photo'=>''));
            
                $user_id = $this->db->insert_id();
                //  $user_id);
            $join_date = date("Y-m-d");
            $this->db->where('id',$user_id);
            $this->db->update('users',array('join_date'=>$join_date));
            $this->db->insert('user_details',array('user_id'=>$user_id));

            $this->db->insert('notifications',array('user_id'=>$user_id));
            $this->db->where('id' ,$user_id);
            $query = $this->db->get('users')->row();
             return $query;
     }

    }









    
    // function forgetpassword($data) {

    //  $this->db->where('email', $data->email); 

    //  $query = $this->db->get('users');
    //   $rs = $query->row();
       

    //    if ($rs) {
          

    //     $username = $rs->first_name; 


    //     $this->load->helper('string'); 

    //     $rand_pwd = random_string('alnum', 8); 

    //     $password = array( 'password' => md5($rand_pwd) ); 

    //     $this->db->where('email', $data->email);

    //      $query = $this->db->update('users', $password);


    //       if ($query) { 



        

    //   //   $this->load->library('email');
    //   //   $config = Array(
    //   //           'protocol' => 'mail',
    //   //           'smtp_host' => 'techlabz.in',
    //   //           'smtp_port' => 25,
    //   //           'smtp_user' => 'info@techlabz.in', // change it to yours
    //   //           'smtp_pass' => 'Golden_123', // change it to yours
    //   //           'smtp_timeout'=>20,
    //   //           'mailtype' => 'html',
    //   //           'charset' => 'iso-8859-1',
    //   //           'wordwrap' => TRUE
    //   //          );

    //   //    $this->email->initialize($config);// add this line

    //   // $subject = 'New Mail';
    //   // //$name= $data->name;
    //   // //$mailTemplate=$data->message;

    //   //   //$this->email->set_newline("\r\n");
    //   //   $this->email->from('no-reply@techlabz.in');
    //   //   $this->email->to($data->email);
    //   //   $this->email->subject("Forget Password");
    //   //   $this->email->message("New Password is:".$rand_pwd);  
    //   //   $this->email->send();
    //   //   $rs = $this->email->print_debugger();
        
        
    //           return "EmailSend";

    //           } 

    //       } else { 
           

    //       //  return "EmailNotExist";
    //         return false;
    //          } }

     function forgetpassword($data) {
      
 
     $this->db->where('email', $data->email); 

     $query = $this->db->get('users');
      $rs = $query->row();
       

       if ($rs) {
          

        $username = $rs->first_name; 


        $this->load->helper('string'); 

        $rand_pwd = random_string('alnum', 8); 

        $password = array( 'password' => md5($rand_pwd) ); 

        $this->db->where('email', $data->email);

         $query = $this->db->update('users', $password);


          if ($query) { 
            $data->name =  $username;

           $this->forgot_mails($data,$rand_pwd);
           
            
              return true;
      } 

          } else { 
           

          //  return "EmailNotExist";
            return false;
             } }

  


 function forgot_mails($data,$rand_pwd){
  // $data);

   $mail = new PHPMailer(true); 
      
      $mail->SMTPDebug = 0;                                 
      $mail->isSMTP();                                      
      $mail->Host = 'email-smtp.eu-west-1.amazonaws.com'; 
      $mail->SMTPAuth = true;                               
      $mail->Username = 'AKIAJSARUYNQ6JILLDEA';                 
      $mail->Password = 'AlGnHXKNoQRCrIqZzXUzdRPR94ENkLO3TXfSqIKBlpSA';                           
      $mail->SMTPSecure = 'tls';                            
      $mail->Port = 587;                                    
     
       //Recipients
      //$mail->setFrom('nyhasinas@gmail.com', 'Ipakkie Mailer');
	  $mail->setFrom('no-reply@ipakkie.com', 'Ipakkieee Maileree');
      // $mail->addAddress('anju.techware@gmail.com', 'Rila User');     // Add a recipient
       $mail->addAddress($data->email,$data->name); 
      //Content
      $mail->isHTML(true);                                  // Set email format to HTML
      $mail->Subject = 'Forgot Password';
      $mail->Body    = "New Password is:".$rand_pwd;
      // $mail->AltBody = 'This is the body in plain text for non-HTML mail clients';

      $res = $mail->send();
      //if($res)
        //echo true;
}





    // function change_password($request){
                
    //             $query = $this->db->where('id',$request['userid'])->get('users');
    //             $rs = $query->row();
    //             $password = $rs->password;

    //             if($password == md5($request['current_pswrd'])){
    //                  $data = array('password'=>md5($request['new_pswrd']));
    //                  $this->db->where('id',$request['userid'])->update('users',$data);
    //                  return true;
    //             }else{
    //                 return false;
    //             }

    // }




    function change_password($request){
                
                $query = $this->db->where('id',$request['userid'])->get('users');
                $rs = $query->row();
                $password = $rs->password;

                if($password == md5($request['current'])){
                     $data = array('password'=>md5($request['newp']));
                     $this->db->where('id',$request['userid'])->update('users',$data);
                     return true;
                }else{
                    return false;
                }

    }




    function update_bio($request){
              
               // $password = $request['biography'];
                     $data = array('biography'=>$request['biography']);
                      $this->db->where('id',$request['userid'])->update('users',$data);
                     $id = $request['userid'];
                     
                     $rs = $this->db->query("SELECT * FROM `users` WHERE id = $id ")->row();
                     if($rs){
                     return $result = array('id'=>$rs->id,'first_name'=>$rs->first_name,
                'last_name'=>$rs->last_name,'username'=>$rs->username,
                'profile_photo'=>$rs->profile_photo,'email'=>$rs->email,
                'phone_no'=>$rs->phone_no,'gender'=>$rs->gender,'date_of_birth'=>$rs->date_of_birth,'id_is_verified'=>$rs->id_is_verified,
                'phone_is_verified'=>$rs->phone_is_verified,
                'email_is_verified'=>$rs->email_is_verified,'join_date'=>$rs->join_date,'biography'=>$rs->biography,'govt_id_path'=>$rs->govt_id_path);
                  }else{
                    return false;
                  }
               
             
    }







    



     function update_profile($request){

  
               $data = array('first_name'=>$request['f_name'],
                'last_name'=>$request['l_name'],
                'gender'=>$request['gender'],
                'date_of_birth'=>$request['year'].'-'.$request['month'].'-'.$request['day']);
    
        
                $this->db->where('id',$request['userid'])->update('users',$data);

               

                $this->db->select('*');
                $this->db->from('users');
                $this->db->where('id',$request['userid']);

                $rs = $this->db->get()->row();
                     if($rs){
                     return $result = array('id'=>$rs->id,'first_name'=>$rs->first_name,
                'last_name'=>$rs->last_name,'username'=>$rs->username,
                'profile_photo'=>$rs->profile_photo,'email'=>$rs->email,
                'phone_no'=>$rs->phone_no,'gender'=>$rs->gender,'date_of_birth'=>$rs->date_of_birth,'id_is_verified'=>$rs->id_is_verified,
                'phone_is_verified'=>$rs->phone_is_verified,
                'email_is_verified'=>$rs->email_is_verified,'biography'=>$rs->biography,'join_date'=>$rs->join_date,'govt_id_path'=>$rs->govt_id_path);
                  }else{
                    return false;
                  }


    }










      


//         function photo_uploads($request){
        
//           $id = $request['id'];
//           $query = $this->db->where('id',$id)->get('users');
          
//         if($query->num_rows()>0){
//             $rs = $query->row();
//             $data = array('profile_photo'=>$request['image']);
//             $this->db->where('id',$id)->update('users',$data);
//               $rs = $this->db->query("SELECT * FROM `users` WHERE id = $id ")->row();
//                      if($rs){
//                      return $result = array('id'=>$rs->id,'first_name'=>$rs->first_name,
//                 'last_name'=>$rs->last_name,'username'=>$rs->username,
//                 'profile_photo'=>$rs->profile_photo,'email'=>$rs->email,
//                 'phone_no'=>$rs->phone_no,'gender'=>$rs->gender,'date_of_birth'=>$rs->date_of_birth,'id_is_verified'=>$rs->id_is_verified,
//                 'phone_is_verified'=>$rs->phone_is_verified,
//                 'email_is_verified'=>$rs->email_is_verified,'join_date'=>$rs->join_date,'biography'=>$rs->biography,'govt_id_path'=>$rs->govt_id_path);
//         }else{
//             return false;
//         }

//     }

// }







 function photo_uploads($request){
        
          $id = $request['id'];
          $query = $this->db->where('id',$id)->get('users');
          
        if($query->num_rows()>0){
            $rs = $query->row();
            $data = array('profile_photo'=>$request['file']);
            $this->db->where('id',$id)->update('users',$data);
              $rs = $this->db->query("SELECT * FROM `users` WHERE id = $id ")->row();
                     if($rs){
                        //  return $rs;
                     return $result = array('id'=>$rs->id,'first_name'=>$rs->first_name,
                'last_name'=>$rs->last_name,'username'=>$rs->username,
                'profile_photo'=>$rs->profile_photo,'email'=>$rs->email,
                'phone_no'=>$rs->phone_no,'gender'=>$rs->gender,'date_of_birth'=>$rs->date_of_birth,'id_is_verified'=>$rs->id_is_verified,
                'phone_is_verified'=>$rs->phone_is_verified,
                'email_is_verified'=>$rs->email_is_verified,'join_date'=>$rs->join_date,'biography'=>$rs->biography,'govt_id_path'=>$rs->govt_id_path);
        }else{
            return false;
        }

    }

}




      function update_pref($request){

          $data = array('chattiness'=>$request['chattiness'],
                        'smoking'=>$request['smoking'],
                        'music'=>$request['music'],
                        'pets'=>$request['pets']);
    
                        $this->db->where('user_id',$request['userid'])->update('user_details',$data);

               return true;


    }







    function get_pref($request){


                $this->db->select('*');
                $this->db->from('user_details');
                $this->db->where('user_id',$request['userid']);
                 $rs = $this->db->get()->row();

            return $rs;


    }



//   function get_cars_and_colors($request){


//                 $this->db->select('id,car_type');
//                 $this->db->from('car_make');
//                 $this->db->where('status',1);
//                  $rs['cars'] = $this->db->get()->result_array();

//                 $this->db->select('id,car_color ');
//                 $this->db->from('car_color ');
//                 $this->db->where('status',1);
//                  $rs['colours'] = $this->db->get()->result_array();


//             return $rs;


//     }



   function get_cars_and_colors($request){


                $this->db->select('id,car_type');
                $this->db->from('car_make');
                $this->db->where('status',1);
                 $rs['cars'] = $this->db->get()->result_array();

                $this->db->select('id,car_color ');
                $this->db->from('car_color ');
                $this->db->where('status',1);
                 $rs['colours'] = $this->db->get()->result_array();



                 $this->db->select('id,type ');
                $this->db->from('car_type ');
                $this->db->where('status',1);
                 $rs['type'] = $this->db->get()->result_array();


            return $rs;


    }





    public function add_users_car($data){


            $query = $this->db->insert('car_details',array('user_id'=>$data['user_id'],'no_of_seats'=>$data['no_of_seats'],'car_year'=>$data['car_year'],'car_type'=>$data['car_type'],'car_make'=>$data['car_make'],'car_color'=>$data['car_color']));
           // $car_id = $this->db->insert_id();
            if($query){
              return true;
            }else{
              return false;
            }

}



    public function offer_ride($data){


            $query = $this->db->insert('ride',array('source'=>$data['place_from'],'destination'=>$data['place_to'],'departure_date '=>$data['dep_date'],'car_type'=>$data['car_type'],'car_make'=>$data['car_make'],'car_color'=>$data['car_color']));
           // $car_id = $this->db->insert_id();
            if($query){
              return true;
            }else{
              return false;
            }
        


}








    // function get_users_car_list($request){
    //     $id = $request["user_id"];
        




    //             $data = "SELECT car_details.id,car_details.user_id,car_details.car_make,car_details.car_type,
    //                     car_details.car_year ,car_details.car_color ,car_details.no_of_seats,car_details.car_image,
    //                     car_make.car_type,car_color.car_color  FROM car_details
    //                     LEFT JOIN car_make ON car_make.id = car_details.car_make LEFT JOIN  car_color ON  car_color.id =  car_details.car_color
    //                     WHERE car_details.user_id = $id ";

                
    //     $query = $this->db->query($data);
    //     $result = $query->result();
    //   //  $result);
    //   // echo $this->db->last_query();
    //     return $result;
        
    // }
    
    function get_users_car_list($request){
        $id = $request["user_id"];
        $this->db->select('car_details.*, car_make.car_type as cartype,car_color.car_color as carcolour');
        $this->db->from('car_details');
        $this->db->join('car_make','car_details.car_make=car_make.id','left');
         $this->db->join('car_color','car_details.car_color=car_color.id','left');
        $this->db->where('user_id',$id);
        $query=$this->db->get();
        return $query->result();
    }
    
    









    ///////////************14-9-2017*******************///////////////////
    /////////////////////////offerride/////////////////////////////////////
      function car_offer_select($request){
         $this->db->where('user_id',$request);
         $this->db->select('car_details.car_type,car_details.id,car_make.car_type as car_name');
        $this->db->from('car_details');
        $this->db->join('car_make','car_details.car_make=car_make.id','left');
        $query= $this->db->get();
        
         return $query->result();     
     }
     
    //  function get_reached_time($request){
    //      $this->db->select('reached_time');
    //      $this->db->where('departure_date',$request['departure_date']);
    //      $query=$this->db->get('ride')->row();
    //      return $query;
         
    //  }


    function offer_departure($request){
       
     
        	$data =array('source'=>$request['source'],
							   'destination'=>$request['destination'],
							   'source_lat'=>$request['source_lat'],
							    'source_lng'=>$request['source_lng'],
								'destination_lat'=>$request['destination_lat'],
								'destination_lng'=>$request['destination_lng'],
								'departure_date'=>$request['departure_date'],
								'detour_time'=>$request['detour_time'],
                                 'reached_time'=>$request['reached_time'],
								'is_round_trip'=>$request['round_trip'],
                'for_ladies'=>$request['for_ladies'],
                'to_airport'=>$request['to_airport']
                              
                         );
            $query= $this->db->insert('ride',$data);
            $insert_id = $this->db->insert_id();
            return $insert_id;
         


    }
    function offer_return($request){
         
        	$data=array('source'=>$request['destination'],
							   'destination'=>$request['source'],
							   'source_lat'=>$request['destination_lat'],
							    'source_lng'=>$request['destination_lng'],
								'destination_lat'=>$request['source_lat'],
								'destination_lng'=>$request['source_lng'],
								'departure_date'=>$request['rtrn_date'],
								'detour_time'=>$request['rtrn_time'],
                                'reached_time'=>$request['reached_time_rtrn'],
								'is_round_trip'=>$request['round_trip'],
                 'for_ladies'=>$request['for_ladies'],
                'to_airport'=>$request['to_airport']
                               
            );
            $query= $this->db->insert('ride',$data);
            $insert_id = $this->db->insert_id();
            return $insert_id;
            

    }
     function offer_update($request){

         /* $request);
         die();*/
         /*if(isset($request['comments'])){

            $request['comments']= $request['comments'];
         }else{
             $request['comments'] ='';
         }*/
        $data=array('price'=>$request['price'],
                    'no_of_seats'=>$request['no_of_seats'],
                    'detour'=>$request['detour_time'],
                    'pickup_flexibility'=>$request['pickup_flexibility'],
                    'comments'=>isset($request['comments'])?$request['comments']:'',
                    'max_luggage'=>$request['max_luggage'],
                    'users_id'=>$request['users_id'],
                      'car_id'=>$request['car_id'] 
                    );
        /*if($request['check']=="round"){
            $ride_result_alert=array();
            foreach($request['insert_id'] as $value){
                 $this->db->where('id',$value);
                $this->db->update('ride',$data);
                 $this->db->where('id',$value);
               $query=  $this->db->get('ride')->row();
           
               $ride_result_alert[]=$query;
              

               
            }
            return  $ride_result_alert;
              
        }
       // else{*/
              $this->db->where('id',$request['ride_id']);
               $query= $this->db->update('ride',$data);
               $this->db->where('id',$request['ride_id']);
               $query= $this->db->get('ride');
               return $query->row();
        //}
       
      
        
     }
         function result_ride($data){

       
        $this->db->where('ride_alert.source',$data->source);
        $this->db->where('ride_alert.departure_date',$data->departure_date);
        $this->db->where('ride_alert.destination',$data->destination);
        $this->db->where('ride_alert.departure_time <=',$data->detour_time);
        $this->db->where('ride_alert.before_time >=',$data->detour_time);
        $this->db->select('ride_alert.id as rideid,ride_alert.source,ride_alert.destination,ride_alert.departure_time,ride_alert.departure_date,users.*');
        $this->db->from('ride_alert');
        $this->db->join('users','ride_alert.user_id=users.id','left');
        $query= $this->db->get();
        $res= $query->result();
    //   echo $this->db->last_query();
        $new_ride_alert[$data->id]=$res;

        
      //}
    //   var_dump($new_ride_alert);
        return $new_ride_alert;

    }
     public function offer_list($request){
        // var_dump($request['start']) ;
          $date=date('Y-m-d');
        if($request['start']==null){
           $stop=0;
          
        }else{
             $stop=$request['start'];
        }
         $start=5;
         
        
      
        // //  $this->db->limit(isset($request['start']?$request['start']:''),$stop);
        $this->db->limit($start,$stop);
         $this->db->order_by("id", "desc");
          $this->db->where('departure_date>=',$date );
          $this->db->where('ride.status!=',2);
         $this->db->where('ride.users_id',$request['user_id']);
         $this->db->select('ride.*,car_details.car_image,car_details.car_plate,car_details.no_of_seats,car_make.car_type');
          $this->db->from('ride');
        $this->db->join('car_details','ride.car_id=car_details.id','left');
         $this->db->join('car_make','car_details.car_make=car_make.id','left');
         $query= $this->db->get('');
         //echo $this->db->last_query();
         return $query->result();
     }
     public function get_find_ride($request){
        $this->db->where('no_of_seats >=',$request['seats']);
         $this->db->where('ride.status!=',3);
        if($request['user_id']!='undefined'){
        $this->db->where('users_id!=',$request['user_id']);
        }
        if(isset($request['for_ladies']) && !empty($request['for_ladies'])){
          $this->db->where('for_ladies',$request['for_ladies']);
        } 
        if(isset($request['to_airport']) && !empty($request['to_airport'])){
          $this->db->where('to_airport',$request['to_airport']);
        }
        $this->db->where('source',$request['source']);
        $this->db->where('departure_date',$request['departure_date']);
        $this->db->where('destination',$request['destination']);
        $this->db->where('detour_time >=',$request['rtrn_time']);
        // $this.db->where('rating.')
        $this->db->select('ride.id as rideid,ride.users_id,ride.source,ride.destination,ride.price,ride.detour_time,ride.no_of_seats,ride.departure_date,ride.reached_time,users.*');
        $this->db->from('ride');
        // $this->db->join('verification','ride.users_id=verification.user_id','left');
        $this->db->join('users','ride.users_id=users.id','left');
        
        // $this->db->join('rating','ride.id=rating.rate_id','left');
        $query= $this->db->get();
 // echo $this->db->last_query();
      

        return $query->result();

     }
     public function getkm_charge(){
     $query= $this->db->get('settings');
     return $query->row();

     }
     function find_ride_details($request){
       
        $this->db->where('ride.id',$request['ride_id']);
        //$this->db->where('ride.users_id',$request['user_id']);
        $this->db->select('verification.image,verification.status as verify_status,ride.id as rideid,ride.source,car_details.car_image,ride.comments,ride.max_luggage,ride.pickup_flexibility,
                            car_details.car_type,ride.detour,ride.no_of_seats,ride.destination,ride.price,ride.departure_date,car_make.car_type as carname,car_color.car_color,
                            ride.detour_time,ride.reached_time, users.id as userid ,users.*,user_details.*');
        $this->db->from('ride');
        $this->db->join('users','ride.users_id=users.id','left');
        $this->db->join('user_details','ride.users_id=user_details.user_id','left');
         $this->db->join('verification','ride.users_id=verification.user_id','left');
        $this->db->join('car_details','ride.car_id=car_details.id','left');
        $this->db->join('car_make','car_details.car_make=car_make.id','left');
        $this->db->join('car_color','car_details.car_color=car_color.id','left');
        
        $query= $this->db->get();
       
     //echo $this->db->last_query();

        return $query->row();

     }
     function offer_ride_count($request){
        $id =$request['user_id'];
        $query= $this->db->query("SELECT count(users_id) AS total_count FROM `ride` WHERE users_id ='$id'")->row();
        return $query;
     }
     function find_ride_filter($request){
        $this->db->order_by('ride.price',$request['price']);
        $this->db->where('chattiness',$request['chattiness']);
        $this->db->where('music',$request['music']);
        $this->db->where('pets',$request['pets']);
        $this->db->where('smoking',$request['smoking']);
        $this->db->where('departure_date',$request['travel_date']);
        $this->db->where('detour_time>',$request['travel_time']);
        $this->db->where('no_of_seats',$request['seats']);
        $this->db->select('ride.id as rideid,ride.users_id,ride.source,ride.comments,ride.max_luggage,ride.pickup_flexibility,ride.detour,ride.no_of_seats,ride.destination,ride.price,ride.departure_date,ride.detour_time,ride.reached_time,users.*');
        $this->db->from('ride');
        $this->db->join('users','ride.users_id=users.id','left');
        $this->db->join('user_details','user_details.user_id=ride.users_id');
        $query= $this->db->get();
         return $query->result();
     }
     function find_ride_filter_rate($id){
          $this->db->select('AVG(rating) as avgrate,count(create_user) as ratenum');
         $this->db->from('rating');
        $this->db->where('owner', $id);
        $query = $this->db->get();
     $new= $query->row();
    return $new;

     }
     function booking_details($request){
         $booking_date=date('Y-m-d');
         $rand="JY".date('dmy').rand(111, 999);
         $data=array('user_id'=>$request['user_id'],
                      'ride_id'=>$request['ride_id'],
                      'booking_id'=>$rand,
                      'booking_date'=> $booking_date,
                      'departure_point'=>$request['departure_point'],
                      'drop_point'=>$request['drop_point'],          
                      'no_of_seats'=>$request['no_of_seats'],     
                       'amount'=>$request['amount'],
                       'status'=>'0');
        $this->db->insert('booking',$data);
        $query =$this->db->insert_id();
        return $query;
     }
     function booking_ride_details($request){
        //  $this->db->where('booking.user_id',$request);
        // var_dump($request);
          $date=date('Y-m-d');
           if($request['start']==null){
           $stop=0;
          
        }else{
             $stop=$request['start'];
        }
         $start=5;
         $this->db->limit($start,$stop);
         $this->db->order_by("booking.booking_date","desc");
         $this->db->order_by("booking.id","desc");
          $this->db->where('ride.departure_date>=',$date );
         $this->db->where('booking.user_id',$request['user_id']);
         $this->db->select("DISTINCT(booking.id) as bookid,rating.rating,booking.ride_id,booking.departure_point,booking.drop_point,booking.amount,ride.detour_time,ride.departure_date,ride.reached_time,ride.users_id as owner,ride.status as ridestatus,booking.status as bookstatus,verification.image,verification.status as verify_status,car_details.car_plate,car_details.no_of_seats,car_make.car_type,ride.source_lat,ride.source_lng,ride.destination_lat,ride.destination_lng,TRIM(concat(users.first_name,' ',IFNULL(users.last_name,''))) as name,IF(users.profile_photo != NULL OR users.profile_photo != '' , concat('".base_url()."',users.profile_photo) , '') profile_pic");
         $this->db->from('booking');
         $this->db->join('ride','booking.ride_id=ride.id','left');
          $this->db->join('rating','booking.id=rating.book_id','left');
           $this->db->join('verification','ride.users_id=verification.user_id','left');
          
          
         $this->db->join('car_details','ride.car_id=car_details.id','left');
         $this->db->join('users','users.id=ride.users_id','left');
         $this->db->join('car_make','car_details.car_make=car_make.id','left');
         $query= $this->db->get();

        //  echo $this->db->last_query();
          return $query->result();

     }
   




    




       function help($request){
 

        $query = $this->db->get('cms');
        $rs = $query->row();
        $result = $rs->help; 
        return $result;
    }


       function terms($request){
 

        $query = $this->db->get('cms');
        $rs = $query->row();
        $result = $rs->conditions; 
        return $result;
    }
    
       function license($request){
 

        $query = $this->db->get('cms');
        $rs = $query->row();
        $result = $rs->licenses; 
        return $result;
    }



    function privacy($request){
 

        $query = $this->db->get('cms');
        $rs = $query->row();
        $result = $rs->privacy; 
        return $result;
    }



    




//    function save_notification($request){
//   $this->db->where('user_id',$request['userid']);
//   $result = $this->db->update('notifications',array(
//                                                   'push_cotraveller_confirmation'=>$request['push_cotraveller_confirmation'],
//                                                   'push_msg_recieved'=>$request['push_msg_recieved'],
//                                                   'push_ratings'=>$request['push_ratings'],
//                                                   'push_msg_recieved'=>$request['push_msg_recieved'],
//                                                   'email_ride_update'=>$request['email_ride_update'],
//                                                   'email_pending_ratings'=>$request['email_pending_ratings'],
//                                                   'email_new_rating'=>$request['email_new_rating'],
//                                                   'email_info'=>$request['email_info']
//                                                   ));
//   $query = $this->db->where('user_id',$request['userid']);
//   $query = $this->db->get('notifications');
//   $result = $query->row();
//   return $result;

// }





   function save_notification($request){
  $this->db->where('user_id',$request['userid']);
  $result = $this->db->update('notifications',array(
                                                  'push_cotraveller_confirmation'=>$request['push_cotraveller_confirmation'],
                                                  'push_msg_recieved'=>$request['push_msg_recieved'],
                                                  'push_ratings'=>$request['push_ratings'],
                                                  'push_msg_recieved'=>$request['push_msg_recieved'],
                                                  'email_ride_update'=>$request['email_ride_update'],
                                                  'email_pending_ratings'=>$request['email_pending_ratings'],
                                                  'email_new_rating'=>$request['email_new_rating'],
                                                  'email_info'=>$request['email_info']
                                                  ));
  $query = $this->db->where('user_id',$request['userid']);
  $query = $this->db->get('notifications');
  $result = $query->row();
  return $result;

}





//   function notifysave($request){
//   $this->db->where('user_id',$request['userid']);
//   $result = $this->db->update('notifications',array(
//                                                    'push_cotraveller_confirmation'=>$request['push_cotraveller_confirmation'],
//                                                   'push_msg_recieved'=>$request['push_msg_recieved'],
//                                                   'push_ratings'=>$request['push_ratings'],
//                                                   'push_msg_recieved'=>$request['push_msg_recieved'],
//                                                   'email_ride_update'=>$request['email_ride_update'],
//                                                   'email_pending_ratings'=>$request['email_pending_ratings'],
//                                                   'email_new_rating'=>$request['email_new_rating'],
//                                                   'email_info'=>$request['email_info']
//                                                   ));
//   // $query = $this->db->where('user_id',$request['userid']);
//   // $query = $this->db->get('notifications');
//   // $result = $query->row();
//   if($result){
//     return true;

//   }else

//   return false;

// }





//   function notifysave($request){
//   $this->db->where('user_id',$request['userid']);
//   $result = $this->db->update('notifications',array(
//                                                    'push_cotraveller_confirmation'=>$request['push_cotraveller_confirmation'],
//                                                   'push_msg_recieved'=>$request['push_msg_recieved'],
//                                                   'push_ratings'=>$request['push_ratings'],
//                           'email_ride_publish'=>$request['email_ride_publish'],
//                                                   'push_msg_recieved'=>$request['push_msg_recieved'],
//                                                   'email_ride_update'=>$request['email_ride_update'],
//                                                   'email_msg_recieved'=>$request['email_msg_recieved'],
//                                                   'email_pending_ratings'=>$request['email_pending_ratings'],
//                                                   'email_new_rating'=>$request['email_new_rating'],
//                                                   'email_info'=>$request['email_info']
//                                                   ));
//   // $query = $this->db->where('user_id',$request['userid']);
//   // $query = $this->db->get('notifications');
//   // $result = $query->row();
//   if($result){
//     return true;
//   function notifysave($request){
//   $this->db->where('user_id',$request['userid']);
//   $result = $this->db->update('notifications',array(
//                                                   'push_offer_ride_request'=>$request['push_offer_ride_request'],                   
//                                                   'push_ratings'=>$request['push_ratings'],
//                                                   'push_ride_accept'=>$request['push_ride_accept'],
//                                                   'email_ride_publish'=>$request['email_ride_publish'],
//                                                   'push_booking_alert'=>$request['push_booking_alert'],
//                                                   'email_ride_update'=>$request['email_ride_update'],
//                                                   'email_msg_recieved'=>$request['email_msg_recieved'],
//                                                   'email_pending_ratings'=>$request['email_pending_ratings'],
//                                                   'email_new_rating'=>$request['email_new_rating'],
//                                                   'email_info'=>$request['email_info']
//                                                   ));
//   // $query = $this->db->where('user_id',$request['userid']);
//   // $query = $this->db->get('notifications');
//   // $result = $query->row();
//   if($result){
//     return true;

//   }else

//   return false;

// }






 function get_notification($request){
  $query = $this->db->where('user_id',$request['userid']);
  $query = $this->db->get('notifications');
  //echo $this->db->last_query();
  $result = $query->row();
  return $result;

}


 // function save_adhar_info($request){
                
             
 //         $this->db->where('user_id',$request['userid']);
 //          $this->db->where('type',$request['type']);
 //  $result = $this->db->update('verification',array(
 //                                                  'full_name'=>$request['full_name'],
 //                                                  'date_of_birth '=>$request['year'].'-'.$request['month'].'-'.$request['day'],
 //                                                  'image '=>$request['image_file'],
 //                                                  'number'=>$request['adhar_no'],
 //                                                  'status'=>'2'
 //                                                  ));
 
 //  return $result;

 //    }





 //  function save_adhar_info($request){
                
             
 //         $this->db->where('user_id',$request['userid']);
 //          $this->db->where('type',$request['type']);
 //  $result = $this->db->update('verification',array(
 //                                                  'full_name'=>$request['full_name'],
 //                                                  'date_of_birth '=>$request['year'].'-'.$request['month'].'-'.$request['day'],
 //                                                  'image'=>$request['image_file'],
 //                                                  'number'=>$request['adhar_no'],
 //                                                  'status'=>'2'
 //                                                  ));
 //  // $query = $this->db->where('user_id',$request['userid']);
 //  // $query = $this->db->get('notifications');
 // // $result = $query->row();
 //  return $result;

 //    }




        
     function save_adhar_info($request){
                
             
         $this->db->where('user_id',$request['userid']);
          $this->db->where('type',$request['type']);
  $result = $this->db->update('verification',array(
                                                  'full_name'=>$request['full_name'],
                                                  'date_of_birth '=>$request['year'].'-'.$request['month'].'-'.$request['day'],
                                                  'image'=>$request['image_file'],
                                                  'number'=>$request['adhar_no'],
                                                  'status'=>'4'
                                                  ));
  // $query = $this->db->where('user_id',$request['userid']);
  // $query = $this->db->get('notifications');
 // $result = $query->row();
  return $result;

    }





 //     function save_pan_info($request){
                
             
 //         $this->db->where('user_id',$request['userid']);
 //         $this->db->where('type',$request['type']);
 //  $result = $this->db->update('verification',array(
 //                                                  'full_name'=>$request['full_name'],
 //                                                  'date_of_birth '=>$request['year'].'-'.$request['month'].'-'.$request['day'],
 //                                                  'image'=>$request['image_file'],
 //                                                  'number'=>$request['pan_no'],
 //                                                  'type'=>$request['type']
 //                                                  ));
 //  // $query = $this->db->where('user_id',$request['userid']);
 //  // $query = $this->db->get('notifications');
 // // $result = $query->row();
 //  return $result;

 //    }



      function save_pan_info($request){
                
             
         $this->db->where('user_id',$request['userid']);
         $this->db->where('type',$request['type']);
  $result = $this->db->update('verification',array(
                                                  'full_name'=>$request['full_name'],
                                                  'date_of_birth '=>$request['year'].'-'.$request['month'].'-'.$request['day'],
                                                  'image'=>$request['image_file'],
                                                  'number'=>$request['pan_no'],
                                                  'type'=>$request['type'],
                                                  'status'=>'4'
                                                  ));
  // $query = $this->db->where('user_id',$request['userid']);
  // $query = $this->db->get('notifications');
 // $result = $query->row();
  return $result;

    }
    








 function save_passport_info($request){
                
             
         $this->db->where('user_id',$request['userid']);
         $this->db->where('type',$request['type']);
  $result = $this->db->update('verification',array(
                                                  'full_name'=>$request['full_name'],
                                                   'date_of_birth '=>$request['year'].'-'.$request['month'].'-'.$request['day'],
                                                  'image'=>$request['image_file'],
                                                  'number'=>$request['pass_no'],
                                                  'type'=>$request['type'],
                                                  'status'=>'4'
                                                  ));
 // echo $this->db->last_query();
  // $query = $this->db->where('user_id',$request['userid']);
  // $query = $this->db->get('notifications');
 // $result = $query->row();
  return $result;

    }



    function get_country($request){


                $this->db->select('id,name');
                $this->db->from('countries_list');
                //$this->db->where('status',1);
                 $rs['country'] = $this->db->get()->result_array();

                // $this->db->select('id,car_color ');
                // $this->db->from('car_color ');
                // $this->db->where('status',1);
                //  $rs['colours'] = $this->db->get()->result_array();


            return $rs;


    }





        function add_number($request){
                
             $id = $request['user_id'];
         $this->db->where('id',$id);
  $result = $this->db->update('users',array(
                                                  'region'=>$request['region'],
                                                  'phone_no'=>$request['phone_no']
                                                  ));
                $rs = $this->db->query("SELECT * FROM `users` WHERE id = $id ")->row();
                     if($rs){
                     return $result = array('id'=>$rs->id,'first_name'=>$rs->first_name,
                'last_name'=>$rs->last_name,'username'=>$rs->username,
                'profile_photo'=>$rs->profile_photo,'email'=>$rs->email,
                'phone_no'=>$rs->phone_no,'gender'=>$rs->gender,'date_of_birth'=>$rs->date_of_birth,'id_is_verified'=>$rs->id_is_verified,
                'phone_is_verified'=>$rs->phone_is_verified,
                'email_is_verified'=>$rs->email_is_verified,'join_date'=>$rs->join_date,'biography'=>$rs->biography,'govt_id_path'=>$rs->govt_id_path);
  return $result;

    }else{
      return false;
    
  }
}

    public function get_booked_data($request){
         $this->db->where('booking.id',$request);
         $this->db->select('booking.*,users.*,ride.no_of_seats as rideseat,ride.detour_time');
         $this->db->from('booking');
         $this->db->join('ride','booking.ride_id=ride.id','left');
          $this->db->join('users','ride.users_id=users.id','left');
          $query= $this->db->get();
          
          return $query->row();

    }
    function similar_ride_alert($request){
      
         $data=array('user_id'=>$request->user_id,
                    'source'=>$request->source,
                    'destination'=>$request->destination,
                    'departure_date'=>$request->departure_date,
                    'departure_time'=>$request->departure_time,
                    'before_time'=>$request->before_time,
                    'ride_alert'=>'1');
         $query= $this->db->insert('ride_alert',$data);
         return $query;

    }

    function player_id_insert($request){
        $this->db->where('username' ,$request['username']);
        $this->db->where('password' , md5($request['password']));
        $data=array('player_id'=>$request['player_id']);
        $query = $this->db->update('users',$data);
        return $query;

    }
    function rate_ride_check($request){
        $this->db->where('create_user' ,$request->create_user);
        $this->db->where('owner' , $request->owner);
        $this->db->where('ride_id' , $request->ride_id);
        $query = $this->db->get('rating');
        return $query->row();
        
    }
    function rate_ride_update($request,$id){
        $rate_date=date('Y-m-d');
         
        $request->rating_date= $rate_date;
        $this->db->where('id' ,$id);
        $query = $this->db->update('rating',$request);
        return $query;
    
        
    }

    function rate_ride($request){
        $rate_date=date('Y-m-d');
        $request->rating_date= $rate_date;
        $query = $this->db->insert('rating',$request);
        return $query;

    }
    function getrate($id){
        // $this->db->where('user_id')
        // $query = $this->db->get('rating');
        // return $query;

        $this->db->select('AVG(rating) as avgrate,count(create_user) as ratenum');
         $this->db->from('rating');
        $this->db->where('owner', $id);
        $query = $this->db->get(); 
    //    echo $this->db->last_query();
     $new= $query->row();
    return $new;
       
    }









//    function passport_uploads($request){
//           $id = $request['user_id'];
//           $data = array('image'=>$request['file']);
//           $query = $this->db->where('user_id',$id);
//           $query = $this->db->where('type',$request['type']);
//           $query = $this->db->update('verification',$data);
// //echo $this->db->last_query();

//             $rs = $this->db->select('*');
//             $rs =  $this->db->from('verification');
//           $rs = $this->db->where('user_id',$id);
//           $rs = $this->db->where('type',$request['type']);
          
//           $rs = $this->db->get()->row();

//     //       $rs);
// //echo $this->db->last_query();

//          // $rs = $this->db->query("SELECT * FROM `verification` WHERE user_id = '$id' ")->row();
//                      if($rs){
//                      return $result = array('id'=>$rs->id,
//                 'profile_photo'=>$rs->image,'type'=>$rs->type);
//         }else{
//             return false;
//         }

// }



  function passport_uploads($request){
           // $request);
          $id = $request['user_id'];
         // $data = array('image'=>$request['file']);
         $data = array('image'=>$request['file'],'status'=>4);
          $query = $this->db->where('user_id',$id);
          $query = $this->db->where('type',$request['type']);
          $query = $this->db->update('verification',$data);
//echo $this->db->last_query();

            $rs = $this->db->select('*');
            $rs =  $this->db->from('verification');
          $rs = $this->db->where('user_id',$id);
          $rs = $this->db->where('type',$request['type']);
          
          $rs = $this->db->get()->row();

    //       $rs);
//echo $this->db->last_query();

         // $rs = $this->db->query("SELECT * FROM `verification` WHERE user_id = '$id' ")->row();
                     if($rs){
                     return $result = array('id'=>$rs->id,
                'profile_photo'=>$rs->image,'type'=>$rs->type);
        }else{
            return false;
        }

}
     function approve_ride($request){
         $data=array('status'=>1); 
         $this->db->where('booking_id',$request->booking_id);
         $query=$this->db->update('booking',$data);
         if($query){
          $data=array('no_of_seats'=>$request->no_of_seats,'status'=>1);
          $this->db->where('id',$request->ride_id);
          $query=$this->db->update('ride',$data);

          
         

         }
         return $query;


     }
     function booking_aproval($request){
          $data=array('ride_id'=>$request->ride_id,
                'user_id'=>$request->user_id,
                'driver_id'=>$request->driver_id,
                'status'=>1 );
               $query=$this->db->insert('booking_approve',$data);
               return $query;

 


     }

     function reject_ride($request){
         $data=array('status'=>2);
         $this->db->where('booking_id',$request);
         $query=$this->db->update('booking',$data);
         return $query;
     }

     function delete_offer_ride($request){ 
         $data=array('status'=>2);
          $this->db->where('id',$request);
          $query=$this->db->update('ride',$data);
         return $query;                 
     }

     function check_notification_updates($id){
        
         $this->db->where('email_ride_publish','1');
         $this->db->where('user_id',$id);
         $query=$this->db->get('notifications');
         return $query->row();
    
     }
      function check_notification_rideaccept($id){
        // var_dump($id);
         $this->db->where('push_ride_accept','1');
         $this->db->where('user_id',$id);
         $query=$this->db->get('notifications');
         return $query->row();
    
     }
     function check_notification_rate($id){
         $this->db->where('email_new_rating','1');
         $this->db->where('user_id',$id);
         $query=$this->db->get('notifications');
         return $query->row(); 
     }
        function check_notification_offer_updates($id){
         $this->db->where('email_ride_update','1');
         $this->db->where('user_id',$id);
         $query=$this->db->get('notifications');
         return $query->row();
    
     }
     

     function report_ride_insert($request){
           $request->date=date('Y-m-d');

        
        $query = $this->db->insert('report_ride',$request);
        return $query;


     }
     function offer_ride_count_details($request){
            $date=date('Y-m-d');
        $this->db->where('status!=',2);
        $this->db->where('departure_date>=',$date );
        $this->db->select('count(id) as totalcount');
        $this->db->from('ride');
        $this->db->where('users_id',$request);
        $query = $this->db->get();
    
     $new= $query->row();
    return $new;

     }
    function booking_ride_count_details($request){
         $date=date('Y-m-d');
            $this->db->where('ride.departure_date>=',$date );
         $this->db->select('count(booking.id) as totalcount');
        $this->db->from('booking');
         $this->db->join('ride','booking.ride_id=ride.id','left');
        $this->db->where('user_id',$request);
        $query = $this->db->get();
     $new= $query->row();
    return $new;
        
    //      $this->db->select('count(id) as totalcount');
    //     $this->db->from('booking');
    //     $this->db->where('user_id',$request);
    //     $query = $this->db->get();
    
    //  $new= $query->row();
    // return $new;

     }
     function offer_history_ride($request){
         $date=date('Y-m-d');
         if($request['start']==null){
           $stop=0;
          
        }else{
             $stop=$request['start'];
        }
         $start=5;
         
        
      
        // //  $this->db->limit(isset($request['start']?$request['start']:''),$stop);
        $this->db->limit($start,$stop);
         $this->db->order_by("id", "desc");
          $this->db->where('ride.status!=',2);
          $this->db->where('departure_date<',$date );
         $this->db->where('users_id',$request['user_id']); 
        $this->db->select('ride.*,car_details.car_image');
        $this->db->from('ride');
        $this->db->join('car_details','ride.car_id=car_details.user_id','left');
        // $this->db->join('car_make','car_details.car_make=car_make.id','left');
        $query= $this->db->get();
        //echo $this->db->last_query();
         return $query->result();

     }
         function booking_ride_history($request){
        //  $this->db->where('booking.user_id',$request);
        // var_dump($request);
          $date=date('Y-m-d');
           if($request['start']==null){
           $stop=0;
          
        }else{
             $stop=$request['start'];
        }
         $start=5;
         $this->db->limit($start,$stop);
         $this->db->order_by("booking.booking_date","desc");
         $this->db->order_by("booking.id","desc");
          $this->db->where('ride.departure_date<',$date );
         $this->db->where('booking.user_id',$request['user_id']);
         $this->db->select('DISTINCT(booking.id) as bookid,rating.rating,booking.ride_id,booking.departure_point,booking.drop_point,booking.amount,ride.detour_time,ride.departure_date,ride.users_id as owner,ride.reached_time');
         $this->db->from('booking');
         $this->db->join('ride','booking.ride_id=ride.id','left');
          $this->db->join('rating','booking.id=rating.book_id','left');
           
         $this->db->join('car_details','ride.car_id=car_details.user_id','left');
       
         $query= $this->db->get();

        //  echo $this->db->last_query();
          return $query->result();

     }
     function user_location_update($request){
          $data=array('crnt_lattitude'=>$request["crnt_lattitude"],'crnt_longitude'=>$request["crnt_longitude"]);
          $this->db->where('id',$request['user_id']);
          $query=$this->db->update('users',$data);
         return $query;


     }
     function ridestart_push($request){
         $this->db->where('booking.status',1);
         $this->db->where('ride_id',$request); 
         $this->db->select('users.*');
         $this->db->from('booking');
         $this->db->join('users','booking.user_id=users.id','left');
         $query= $this->db->get();
         return $query->result();
        

     }
     function cardetails_startride($request){
         $this->db->where('car_details.user_id',$request['user_id']); 
         $this->db->select('car_make.car_type,car_color.car_color,car_details.car_type as main_cartype,car_details.no_of_seats');
         $this->db->from('car_make');
         $this->db->join('car_details','car_details.car_make=car_make.id','left');
          $this->db->join('car_color','car_details.car_color=car_color.id','left');
           $this->db->join('ride','ride.car_id=car_details.id','left');
         $query= $this->db->get();
         return $query->row();

     }
     function cotravellers_list($request){
         $this->db->where('booking_approve.status','1');
         $this->db->where('booking_approve.ride_id',$request); 
         $this->db->select('users.*,booking_approve.id as bookid');
         $this->db->from('booking_approve');
         $this->db->join('users','booking_approve.user_id=users.id','left');
         $query= $this->db->get();
        //  var_dump($query);die;
         return $query->result();

     }
     function payment_cash($request){
         $data=array('payment_status'=>1);
         $this->db->where('ride_id',$request['ride_id']);
         $this->db->where('user_id',$request['user_id']);
         $query=$this->db->update('booking_approve',$data);
         return $query;

     }
     function check_redeem_code($request){
         $this->db->where('status',1);
         $this->db->where('code',$request['code']);
         $this->db->where('ride_id',$request['ride_id']);
         $this->db->where('user_id',$request['user_id']);
         $query=$this->db->get('payment');
         $res= $query->row();
         
         if($res){
             $data=array('status'=>0);
              $this->db->where('ride_id',$res->ride_id);
              $this->db->where('user_id',$res->user_id);
              $query=$this->db->update('payment',$data);
              $data1=array('payment_status'=>1,'code'=>$res->code);
              $this->db->where('ride_id',$res->ride_id);
              $this->db->where('user_id',$res->user_id);
              $query=$this->db->update('booking_approve',$data1);

         }
         return $res;
         
         

     }
     function yourride_car_edit($request){
        $this->db->where('car_details.id',$request);
        $this->db->select('car_details.car_type,car_details.id,car_make.car_type as car_name');
        $this->db->from('car_details');
        $this->db->join('car_make','car_details.car_make=car_make.id','left');
        $query= $this->db->get();
        return $query->row();

     }

     function offer_edit($request){
        //  var_dump($request);
        // $this->db->where('users_id',$request['users_id']);
        $this->db->where('id',$request['id']);
        $this->db->update('ride',$request);
        $this->db->where('id',$request['id']);
        $query= $this->db->get('ride');
       // echo $this->db->last_query();
        return $query->row();

     }
     function drivertrack_map($request){
        $this->db->where('booking_approve.status',1);
         $this->db->where('booking_approve.ride_id',$request); 
         $this->db->select('users.*,booking_approve.*');
         $this->db->from('booking_approve');
         $this->db->join('users','booking_approve.user_id=users.id','left');
         $query= $this->db->get();
         return $query->result();

     }
     function drivertrack_location($request){
           $this->db->where('booking_approve.status',1);
         $this->db->where('booking_approve.ride_id',$request); 
         $this->db->select('users.*,booking_approve.*,ride.source_lat,source_lng,destination_lat,destination_lng');
         $this->db->from('booking_approve');
         $this->db->join('users','booking_approve.driver_id=users.id','left');
          $this->db->join('ride','ride.users_id=users.id','left');
        $this->db->group_by('driver_id'); 
         $query= $this->db->get();
         return $query->row();

     }
     function chatuserdetails($request){
         $this->db->where('id',$request);
         $query= $this->db->get('users');
         return $query->row();
     }

     function car_exist($request,$i){
         if($request['round_trip']==true && $i>1){
             if($request['rtrn_date'] == $request['departure_date']){
                 return null;
             } else {
                 $this->db->where('car_id',$request['car_id']);
            $this->db->where('departure_date',$request['rtrn_date']);
             $this->db->where('detour_time <=',$request['rtrn_time']);
              $this->db->where('reached_time >=',$request['rtrn_time']);
            $query= $this->db->get('ride');
           return  $query->result();
             }
             
             
         } else {
             $this->db->where('car_id',$request['car_id']);
            $this->db->where('departure_date',$request['departure_date']);
             $this->db->where('detour_time <=',$request['departure_time']);
              $this->db->where('reached_time >=',$request['departure_time']);
            $query= $this->db->get('ride');
           // echo $this->db->last_query();
           return  $query->result();
         }
         
         
        

     }
     function notifysave($request){
  $this->db->where('user_id',$request['userid']);
  $result = $this->db->update('notifications',array(
                                                  'push_offer_ride_request'=>$request['push_offer_ride_request'],                   
                                                  'push_ratings'=>$request['push_ratings'],
                                                  'push_ride_accept'=>$request['push_ride_accept'],
                                                  'email_ride_publish'=>$request['email_ride_publish'],
                                                  'push_booking_alert'=>$request['push_booking_alert'],
                                                  'email_ride_update'=>$request['email_ride_update'],
                                                  'email_msg_recieved'=>$request['email_msg_recieved'],
                                                  'email_pending_ratings'=>$request['email_pending_ratings'],
                                                  'email_new_rating'=>$request['email_new_rating'],
                                                  'email_info'=>$request['email_info']
                                                  ));
  // $query = $this->db->where('user_id',$request['userid']);
  // $query = $this->db->get('notifications');
  // $result = $query->row();
  if($result){
    return true;

  }else

  return false;

}


/********** otp verify *************/
public function otp_verify($data){
  
  $this->db->where('email', $data['email']);
  $this->db->where('otp', $data['otp_number']);
  $res = $this->db->get('user')->row();
  if($res)
    return $res;
  else
    return false;
}
/********** otp verify *************/




  
//   function get_number($request){
//      $request);
//   $query = $this->db->where('id',$request['id']);
//   $query = $this->db->get('users');
// echo $this->db->last_query();
//   $result = $query->row();
//   return $result;

// }






//  function get_notificationce($request){
//    $this->db->select('phone_num');
//          $this->db->from('users');
//   $query = $this->db->where('id',$request['userid']);
//   $query = $this->db->get('users');
//   //echo $this->db->last_query();
//   $result = $query->row();
//   //$finres = $result->phone_num();
//   return $result;

// }




  function get_number($request){
        $this->db->select('phone_no');
        $this->db->from('users');
        $query = $this->db->where('id',$request['id']);
        $query = $this->db->get();
        $result = $query->row();
        return $result;

}






 
//  function test($request){
        
//           $id = $request['id'];
//           $query = $this->db->where('id',$id)->get('users');
          
//         if($query->num_rows()>0){
//             $rs = $query->row();
//             $data = array('profile_photo'=>$request['file']);
//             $this->db->where('id',$id)->update('users',$data);
//               $rs = $this->db->query("SELECT * FROM `users` WHERE id = $id ")->row();
//                      if($rs){
//                         //  return $rs;
//                      return $result = array('id'=>$rs->id,'first_name'=>$rs->first_name,
//                 'last_name'=>$rs->last_name,'username'=>$rs->username,
//                 'profile_photo'=>$rs->profile_photo,'email'=>$rs->email,
//                 'phone_no'=>$rs->phone_no,'gender'=>$rs->gender,'date_of_birth'=>$rs->date_of_birth,'id_is_verified'=>$rs->id_is_verified,
//                 'phone_is_verified'=>$rs->phone_is_verified,
//                 'email_is_verified'=>$rs->email_is_verified,'join_date'=>$rs->join_date,'biography'=>$rs->biography,'govt_id_path'=>$rs->govt_id_path);
//         }else{
//             return false;
//         }

//     }

// }




//    function test($request){
//           $id = $request['user_id'];
//           $data = array('image'=>$request['file']);
//           $query = $this->db->where('user_id',$id);
//           $query = $this->db->where('type',$request['type']);
//           $query = $this->db->update('verification',$data);
// //echo $this->db->last_query();

//             $rs = $this->db->select('*');
//             $rs =  $this->db->from('verification');
//           $rs = $this->db->where('user_id',$id);
//           $rs = $this->db->where('type',$request['type']);
          
//           $rs = $this->db->get()->row();

//     //       $rs);
// //echo $this->db->last_query();

//          // $rs = $this->db->query("SELECT * FROM `verification` WHERE user_id = '$id' ")->row();
//                      if($rs){
//                      return $result = array(
//                 'profile_photo'=>$rs->image);
//         }else{
//             return false;
//         }

// }









//   function carphoto_uploads($request){
        
//           $id = $request['id'];
//          // $query = $this->db->where('user_id',$id)->get('car_details');
//           $query = $this->db->where('id',$id)->get('car_details');
//          // echo $this->db->last_query();
//         if($query->num_rows()>0){
//             $rs = $query->row();
//             $data = array('car_image'=>$request['file']);
//              $this->db->where('id',$id)->update('car_details',$data);
//              $rs = $this->db->query("SELECT * FROM `car_details` WHERE id = $id ")->row();
//                      if($rs){
//                          //return $rs;
//                     return $result = array('id'=>$rs->id,'car_image'=>$rs->car_image,
//               );
//         }else{
//             return false;
//         }

//     }

// }





  function carphoto_uploads($request){
        
          $id = $request['id'];
         // $query = $this->db->where('user_id',$id)->get('car_details');
          $query = $this->db->where('id',$id)->get('car_details');
        // echo $this->db->last_query();
        if($query->num_rows()>0){
            $rs = $query->row();
            $data = array('car_image'=>$request['file']);
             $this->db->where('id',$id)->update('car_details',$data);
             // echo $this->db->last_query();
             $rs = $this->db->query("SELECT * FROM `car_details` WHERE id = $id ")->row();
                     if($rs){
                         //return $rs;
                    return $result = array('id'=>$rs->id,'car_image'=>$rs->car_image,
              );
        }else{
            return false;
        }

    }

}

      function end_ride_update($request){
                    
                    $data=array('status'=>2);
                    $this->db->where('ride_id',$request['id']);
                    $this->db->where('user_id',$request['users_id']);
                   $this->db->update('booking_approve',$data);
                  
                    $data_book=array('status'=>5);
                    $this->db->where('ride_id',$request['id']);
                    $this->db->update('booking',$data_book);
                   
                   
                    $data_ride=array('status'=>3);
                    $this->db->where('id',$request['id']);
                    $query = $this->db->update('ride',$data_ride);
                    return $query;
                   

                    // echo $this->db->last_query();
                }
                   function booked_push_data($request){
                    $data=array('user_id'=>$request->user_id,
                                    'book_id'=>$request->id);
                    $query=$this->db->insert('book_push',$data);
                    return $query;
                
                }
                function get_push_notification_details($request){
                     $this->db->where('booking.status',0);
                    $this->db->where('ride.users_id',$request); 
                    $this->db->select('booking.*,ride.no_of_seats AS rideseat,car_details.car_image');
                    $this->db->from('booking');
                    $this->db->join('ride','booking.ride_id=ride.id','left');
                    $this->db->join('users','ride.users_id=users.id','left');
                     $this->db->join('car_details','ride.car_id=car_details.id','left');
                    $query= $this->db->get();
                   // echo $this->db->last_query();
                    return $query->result();

                }
                  function reject_send_details($request){
                    $this->db->where('booking.booking_id',$request);
                    $this->db->select('booking.*,users.*');
                    $this->db->from('booking');
                    $this->db->join('users','booking.user_id=users.id','left');
                    $query= $this->db->get();
                    // echo $this->db->last_query();
                    return $query->row();


                }
                function approve_send_details($request){
                    $this->db->where('booking.booking_id',$request);
                    $this->db->select('booking.*,users.*');
                    $this->db->from('booking');
                    $this->db->join('users','booking.user_id=users.id','left');
                    $query= $this->db->get();
                    // echo $this->db->last_query();
                    return $query->row();


                }
                function car_edit_exist($request){
                    //var_dump($request);
                $this->db->where('car_id',$request['car_id']);
                $this->db->where('id!=',$request['id']);
                $this->db->where('departure_date',$request['departure_date']);
                $this->db->where('detour_time <=',$request['detour_time']);
                $this->db->where('reached_time >=',$request['detour_time']);
                $query= $this->db->get('ride');
                //echo $this->db->last_query();
                return  $query->result();
                }
                 function result_edit_ride($data){

       //var_dump($data);
        $this->db->where('ride_alert.source',$data['source']);
        $this->db->where('ride_alert.departure_date',$data['departure_date']);
        $this->db->where('ride_alert.destination',$data['destination']);
        $this->db->where('ride_alert.departure_time <=',$data['detour_time']);
        $this->db->where('ride_alert.before_time >=',$data['detour_time']);
        $this->db->select('ride_alert.id as rideid,ride_alert.source,ride_alert.destination,ride_alert.departure_time,ride_alert.departure_date,users.*');
        $this->db->from('ride_alert');
        $this->db->join('users','ride_alert.user_id=users.id','left');
        $query= $this->db->get();
        $res= $query->result();
    //   echo $this->db->last_query();
        $new_ride_alert[$data['id']]=$res;

        
      //}
     // var_dump($new_ride_alert);
        return $new_ride_alert;

    }
    
    
      function booking_history_count_details($request){
            $date=date('Y-m-d');
            $this->db->where('ride.departure_date<',$date );
             $this->db->where('user_id',$request);
         $this->db->select('count(booking.id) as totalcount');
           
        $this->db->from('booking');
         $this->db->join('ride','booking.ride_id=ride.id','left');
       
        $query = $this->db->get();
    
     $new= $query->row();
    return $new;

     }
     
        function offer_history_count_details($request){
          $date=date('Y-m-d');
        $this->db->where('status!=',2);
        $this->db->select('count(id) as totalcount');
        $this->db->from('ride');
        $this->db->where('users_id',$request);
         $this->db->where('departure_date<',$date );
        $query = $this->db->get();
    
     $new= $query->row();
    return $new;

     }
     
       
    function car_active_check($request){
      $this->db->select('id');
      $this->db->from('ride');
      $this->db->where('car_id',$request->car_id) ;
      $res= $this->db->get()->result();
    
      if($res){
        foreach($res as $values){
            $this->db->where('ride_id',$values->id) ;
            $result=$this->db->get('booking')->row();
             // echo $this->db->last_query();
              if($result){
            if($result->status==1){
                return false;
            }else{
                return true;
            }
           }else{
               return true;
           }
           
            
        }
      }else{
         return true; 
      }
      //echo $this->db->last_query();
      
    }
    
    function edit_users_car($request){
        $data=array('car_make'=>$request->car_make,'car_type'=>$request->car_type,'no_of_seats'=>$request->seat_no,'car_color'=>$request->car_color,'car_year'=>$request->car_year);
        $this->db->where('id',$request->car_id);
        $res=$this->db->update('car_details',$data);

        return $res;
        
    }
      function get_verification_details($request){
          $this->db->where('user_id',$request->user_id);
          return $this->db->get('verification')->row();
        
    }
    function save_goverment_info($request){
       //  $request);
                 $this->db->where('user_id',$request['user_id']);
         //$this->db->where('type',$request['type']);
  $result = $this->db->update('verification',array(
                                                  'full_name'=>$request['full_name'],
                                                   'date_of_birth '=>$request['year'].'-'.$request['month'].'-'.$request['day'],
                                                  'image'=>$request['image_file'],
                                                  'number'=>$request['id_no'],
                                                  'type'=>$request['type'],
                                                  'status'=>'4'
                                                  ));
          //echo $this->db->last_query();
  // $query = $this->db->where('user_id',$request['userid']);
  // $query = $this->db->get('notifications');
 // $result = $query->row();
  return $result;
        
    }




    /**************************************New Webservice Model(TUKKIBI)*****************************/




    public function duplicate_ride($data){
      $request = $this->db->get_where('ride',array('id'=>$data['ride_id']))->row_array();
      if($request){
        $data =array('source'=>$request['source'],
                 'destination'=>$request['destination'],
                 'source_lat'=>$request['source_lat'],
                  'source_lng'=>$request['source_lng'],
                'destination_lat'=>$request['destination_lat'],
                'destination_lng'=>$request['destination_lng'],
                'departure_date'=>$data['departure_date'],
                'detour_time'=>$data['detour_time'],
                'reached_time'=>$request['reached_time'],
                'is_round_trip'=>$request['round_trip'],
                'status'=>1,
                         );
        if($this->db->insert('ride',$data)){
          $res = array('status'=>'success');
        }
      }else{
        $res = array('status'=>'failed','message'=>'Ride Does not Exist');
      }
      return $res;
    }

    public function get_currency(){
      $this->db->select('id,cc as currency,name as currency_country');
      $result = $this->db->get_where('country_currency')->result();
      if($result){
        $res = array('status'=>'success','data'=>$result);
      }else{
        $res = array('status'=>'failed');
      }
      return $res;
    }

    public function update_currency($data){
      if($this->db->update('users',array('currency'=>$data['currency']),array('id'=>$data['user_id']))){
        return true;
      }else{
        return false;
      }
    }

    public function get_ride_members($data){
      $this->db->select("TRIM(concat(users.first_name,' ',IFNULL(users.last_name,''))) as name,IF(users.profile_photo != NULL OR users.profile_photo != '' , concat('".base_url()."',users.profile_photo) , '') profile_pic,users.id as rider_id,booking.status");
      $this->db->join('users','users.id = booking.user_id');
      $this->db->where('booking.ride_id',$data['ride_id']);
      $this->db->where('booking.user_id !=',$data['user_id']);
      $result = $this->db->get('booking')->result();

      if($result){
        $res = array('status'=>'success','data'=>$result);
      }else{
        $res = array('status'=>'error');
      }
      return $res;
    } 

    public function get_rider_profile($data){
      $this->db->select("TRIM(concat(users.first_name,' ',IFNULL(users.last_name,''))) as name,IF(users.profile_photo != NULL OR users.profile_photo != '' , concat('".base_url()."',users.profile_photo) , '') profile_pic,users.id as rider_id,IFNULL((select round(avg(rating),2) from rating where owner = '".$data['rider_id']."'), 0) as rating, (select count(id) from ride where users_id = ".$data['rider_id'].") as no_of_rides_as_driver,(select count(id) from booking where user_id = ".$data['rider_id'].") as no_of_rides_as_user");
     // $this->db->join('users','users.id = booking.user_id');
      $this->db->where('users.id',$data['rider_id']);
      $result = $this->db->get('users')->row();
     // print_r($result);exit();
      if($result){
        $res = array('status'=>'success','data'=>$result);
      }else{
        $res = array('status'=>'error');
      }
      return $res;
    }

    public function get_reviews($data){
      $this->db->select("rating.rating,rating.review,rating.ride_id,rating.create_user as reviewer_id,ride.source,ride.destination,ride.price,TRIM(concat(users.first_name,' ',IFNULL(users.last_name,''))) as reviewer_name");
      $this->db->from('rating');
      $this->db->join('ride','ride.id = rating.ride_id');
      $this->db->join('users','users.id = rating.create_user');
      $this->db->where('rating.owner',$data['user_id']);
      $result = $this->db->get()->result();
      if($result){
        $res = array('status'=>'success','data'=>$result);
      }else{
        $res = array('status'=>'error');
      }
      return $res;
    }
     
     
      
     
                
                
                   



    
    
    



}



?>