Commit 2cf704b9 by Tobin

daily commit

parent 84b636f9
......@@ -8,6 +8,7 @@ class Driver extends CI_Controller {
date_default_timezone_set("Asia/Kolkata");
$this->load->model('Driver_model');
$this->load->model('Company_model');
$this->load->model('Vehicle_model');
if(!$this->session->userdata('logged_in')) {
redirect(base_url('Login'));
......@@ -23,6 +24,7 @@ class Driver extends CI_Controller {
$template['page_desc'] = "Add New Driver";
$template['page_title'] = "Add Driver";
$template['vehicles'] = $this->Vehicle_model->getVehicle();
$template['companies'] = $this->Company_model->getCompany();
$this->load->view('template',$template);
}
......@@ -73,6 +75,9 @@ class Driver extends CI_Controller {
}else if($err == 0 && (!isset($_FILES['profile_image']) || empty($_FILES['profile_image']))){
$err = 1;
$errMsg = 'Select a Profile Photo';
}else if($err == 0 && (!isset($_POST['vehicle_id']) || empty($_POST['vehicle_id']))){
$err = 1;
$errMsg = 'Select a Vehicle Type';
}
if($err == 0){
$config = set_upload_service("assets/uploads/services");
......@@ -169,8 +174,10 @@ class Driver extends CI_Controller {
$template['page_desc'] = "Edit Driver Details";
$template['page_title'] = "Edit Driver";
$template['driver_id'] = $driver_id;
$template['driver_data'] = $this->Driver_model->getDriver($driver_id);
$template['vehicles'] = $this->Vehicle_model->getVehicle();
$template['companies'] = $this->Company_model->getCompany();
$template['driver_data'] = $this->Driver_model->getDriver($driver_id);
$this->load->view('template',$template);
}
......@@ -202,9 +209,6 @@ class Driver extends CI_Controller {
}else if($err == 0 && (!isset($_POST['phone']) || empty($_POST['phone']))){
$err = 1;
$errMsg = 'Provide a Phone Number';
}else if($err == 0 && (!isset($_POST['company_id']) || empty($_POST['company_id']))){
$err = 1;
$errMsg = 'Select a Company';
}
$_POST['profile_image'] = $_POST['licence'] = '';
......
......@@ -40,7 +40,7 @@ class Ride extends CI_Controller {
function import(){
$flashMsg = array('message'=>'Something went wrong, please try again..!','class'=>'error');
if(!isset($_FILES) || empty($_FILES) || !isset($_FILES['csv_file']) || empty($_FILES['csv_file']) || !isset($_POST) || empty($_POST) || !isset($_POST['broker_id']) || empty($_POST['broker_id'])){
if(!isset($_FILES) || empty($_FILES) || !isset($_FILES['csv_file']) || empty($_FILES['csv_file']) || !isset($_POST) || empty($_POST) || !isset($_POST['broker_id']) || empty($_POST['broker_id'])|| !isset($_POST['company_id']) || empty($_POST['company_id'])){
$this->session->set_flashdata('message',$flashMsg);
redirect(base_url('Ride/import_ride'));
}
......@@ -54,6 +54,8 @@ class Ride extends CI_Controller {
$rowArr = array();
foreach($row as $col){
if($header == 0){
$col = str_replace(' ','_',$col);
$col = preg_replace('/[^A-Za-z0-9\_\/]/', '', $col);
$headerArr[] = $col;
}else{
$rowArr[$headerArr[$colCnt]] = $col;
......@@ -61,7 +63,7 @@ class Ride extends CI_Controller {
}
}
if($header != 0){
$insertData = array('broker_id'=>$_POST['broker_id'],'medical_no'=>$row[0],'patient_name'=>$row[2].' '.$row[1],
$insertData = array('company_id'=>$_POST['company_id'],'broker_id'=>$_POST['broker_id'],'medical_no'=>$row[0],'patient_name'=>$row[2].' '.$row[1],
'age'=>$row[4],'phone'=>$row[5],'trip_no'=>$row[7],'appointment_time'=>$row[8].' '.$row[10],
'reason_code'=>$row[11],'trip_cost'=>$row[22],'pickup_location'=>$row[23],'drop_location'=>$row[28],
'trip_bid_status'=>$row[37],'trip_status'=>$row[12],'vehicle_type'=>$row[13],'trip_type'=>$row[14],
......@@ -76,6 +78,8 @@ class Ride extends CI_Controller {
if($status){
$flashMsg['class'] = "success";
$flashMsg['message'] = "Upload Scuccessfull";
$this->session->set_flashdata('message',$flashMsg);
redirect(base_url('Ride/view_rides'));
}
}else{
$flashMsg['message'] = "Please Choose a valid File";
......@@ -138,15 +142,27 @@ class Ride extends CI_Controller {
$this->session->set_flashdata('message',$flashMsg);
redirect(base_url('Ride/import_ride'));
}
$data = array("Member's First Name"=>$_POST['first_name'],"Member's Last Name"=>$_POST['last_name'],"Appointment Date"=>$_POST['appointment_date'],"Appointment Time"=>$_POST['appointment_time']);
$data['Medicaid_Number'] = $_POST['medical_no'];
$data['Members_First_Name'] = $_POST['first_name'];
$data['Members_Last_Name'] = $_POST['last_name'];
$data['Members_Age'] = $_POST['age'];
$data["Appointment_Date"] = $_POST['appointment_date'];
$data["Appointment_Time"] = $_POST['appointment_time'];
$data['Vehicle_Type'] = $_POST['vehicle_type'];
$data['Trip_Type'] = $_POST['trip_type'];
$data['Trip_Cost'] = $_POST['trip_cost'];
$data['Trip_Reason_Code'] = $_POST['reason_code'];
$data['Pregnant_Flag'] = (isset($_POST['pregnant_flag']))?1:0;
$data['Attendant_Flag'] = (isset($_POST['attendant_flag']))?1:0;
$data['Wheelchair_Flag'] = (isset($_POST['wheelchair_flag']))?1:0;
$data['Crutches_/_Walker_/_Cane_Flag'] = (isset($_POST['c_w_c_flag']))?1:0;
$_POST['patient_name'] = $_POST['first_name'].' '.$_POST['last_name'];
$_POST['appointment_time'] = $_POST['appointment_date'].' '.$_POST['appointment_time'];
$data['Pregnant Flag'] = (isset($_POST['pregnant_flag']))?1:0;
$data['Attendant Flag'] = (isset($_POST['attendant_flag']))?1:0;
$data['Wheelchair Flag'] = (isset($_POST['wheelchair_flag']))?1:0;
$data['Crutches / Walker / Cane Flag'] = (isset($_POST['c_w_c_flag']))?1:0;
unset($_POST['first_name']);
unset($_POST['last_name']);
unset($_POST['c_w_c_flag']);
......@@ -159,6 +175,8 @@ class Ride extends CI_Controller {
if($status){
$flashMsg['class'] = "success";
$flashMsg['message'] = "Upload Scuccessfull";
$this->session->set_flashdata('message',$flashMsg);
redirect(base_url('Ride/view_rides'));
}
$this->session->set_flashdata('message',$flashMsg);
redirect(base_url('Ride/import_ride'));
......@@ -173,7 +191,8 @@ class Ride extends CI_Controller {
$template['page_desc'] = "View Rides Details";
$template['page_title'] = "View Rides";
$template['ride_data'] = $this->Ride_model->getRideData();
$company_id = ($this->session->userdata['user_type'] != 1)?$this->session->userdata['id']:'';
$template['ride_data'] = $this->Ride_model->getRideData('',$company_id);
$this->load->view('template',$template);
}
......@@ -213,8 +232,84 @@ class Ride extends CI_Controller {
$this->session->set_flashdata('message',$flashMsg);
redirect(base_url('Ride/view_rides'));
}
$template['data'] = $ride_data;
$template['data'] = $ride_data;
$template['ride_data'] = json_decode($ride_data->data,true);
$this->load->view('template',$template);
}
function assign_driver($ride_id = ''){
$flashMsg = array('message'=>'Something went wrong, please try again..!','class'=>'error');
if(empty($ride_id) || $this->session->userdata['user_type'] == 1){
$this->session->set_flashdata('message',$flashMsg);
redirect(base_url('Ride/view_rides'));
}
$ride_id = decode_param($ride_id);
$company_id = $this->session->userdata['id'];
$ride_data = $this->Ride_model->getRideData($ride_id);
if(empty($ride_data->pickup_location)){
$this->session->set_flashdata('message',$flashMsg);
redirect(base_url('Ride/view_rides'));
}
$locData = file_get_contents("https://maps.google.com/maps/api/geocode/json?address=".
urlencode($ride_data->pickup_location).
"&sensor=false&region=$region&key=AIzaSyC9JX3BZZfx2S6GQieC_PqjuJdUbZ7_wyM");
$loc_data = json_decode($locData);
if(empty($loc_data)){
$this->session->set_flashdata('message',$flashMsg);
redirect(base_url('Ride/view_rides'));
}
$lat = $loc_data->{'results'}[0]->{'geometry'}->{'location'}->{'lat'};
$lng = $loc_data->{'results'}[0]->{'geometry'}->{'location'}->{'lng'};
if(empty($lat) || empty($lng)){
$this->session->set_flashdata('message',$flashMsg);
redirect(base_url('Ride/view_rides'));
}
$rideArr = array('lat'=>$lat,'lng'=>$lng,'vehicle_id'=>$ride_data->vehicle_id,
'ride_id'=>$ride_data->transport_id,'status'=>$ride_data->status);
$driver_list = $this->Ride_model->getNearByRiders($company_id,$rideArr);
if(empty($driver_list)){
$flashMsg['message'] = 'No Driver Found';
$this->session->set_flashdata('message',$flashMsg);
redirect(base_url('Ride/view_rides'));
}
$template['page'] = 'Ride/assign_driver';
$template['menu'] = "Ride Management";
$template['sub_menu'] = "Assign Driver";
$template['page_desc'] = "Assign Driver to ride";
$template['page_title'] = "Assign Driver";
$template['ride_id'] = $ride_id;
$template['ride_data'] = $ride_data;
$template['company_id'] = $company_id;
$template['driver_list'] = $driver_list;
$this->load->view('template',$template);
}
function assignRide($ride_id = '',$driver_id = '',$mode = 0){
$flashMsg = array('message'=>'Something went wrong, please try again..!','class'=>'error');
if(empty($ride_id) || empty($driver_id)){
$this->session->set_flashdata('message',$flashMsg);
redirect(base_url('Ride/view_rides'));
}
$ride_id = decode_param($ride_id);
$driver_id = decode_param($driver_id);
$status = $this->Ride_model->assignRide($ride_id,$driver_id,$mode);
if($status){
$flashMsg['class'] = "success";
$flashMsg['message'] = "Driver Assigned";
$this->session->set_flashdata('message',$flashMsg);
redirect(base_url('Ride/view_rides'));
}
$this->session->set_flashdata('message',$flashMsg);
redirect(base_url('Ride/assign_driver/'.encode_param($ride_id)));
}
}
\ No newline at end of file
......@@ -47,7 +47,10 @@ class Vehicle extends CI_Controller {
$this->session->set_flashdata('message',$flashMsg);
redirect(base_url('Vehicle/add_vehicle'));
}
if($err == 0 && (!isset($_POST['vehicle_type']) || empty($_POST['vehicle_type']))){
if($err == 0 && (!isset($_POST['vehicle_id']) || empty($_POST['vehicle_id']))){
$err = 1;
$errMsg = 'Provide a Vehicle Type Code';
}else if($err == 0 && (!isset($_POST['vehicle_type']) || empty($_POST['vehicle_type']))){
$err = 1;
$errMsg = 'Provide a Vehicle Type';
}
......@@ -130,7 +133,10 @@ class Vehicle extends CI_Controller {
$this->session->set_flashdata('message',$flashMsg);
redirect(base_url('Vehicle/edit/'.encode_param($vehicle_id)));
}
if($err == 0 && (!isset($_POST['vehicle_type']) || empty($_POST['vehicle_type']))){
if($err == 0 && (!isset($_POST['vehicle_id']) || empty($_POST['vehicle_id']))){
$err = 1;
$errMsg = 'Provide a Vehicle Code';
} else if($err == 0 && (!isset($_POST['vehicle_type']) || empty($_POST['vehicle_type']))){
$err = 1;
$errMsg = 'Provide a Vehicle Type';
}
......@@ -160,6 +166,7 @@ class Vehicle extends CI_Controller {
}else if($status == 2){
$flashMsg['message'] = 'Vehicle Type already in use.';
}
$flashMsg['message'] = 'Something went wrong, please try again with different Vechile Code..!';
$this->session->set_flashdata('message',$flashMsg);
redirect(base_url('Vehicle/edit/'.encode_param($vehicle_id)));
}
......
......@@ -74,6 +74,18 @@ class Company extends CI_Controller {
}else if($err == 0 && (!isset($_FILES['profile_image']) || empty($_FILES['profile_image']))){
$err = 1;
$errMsg = 'Provide a Profile Picture';
}else if($err == 0 && (!isset($_POST['booking_charge']) || empty($_POST['booking_charge']))){
$err = 1;
$errMsg = 'Provide a Booking Charge';
}else if($err == 0 && (!isset($_POST['sms_charge']) || empty($_POST['sms_charge']))){
$err = 1;
$errMsg = 'Provide an SMS Charge';
}else if($err == 0 && (!isset($_POST['push_charge']) || empty($_POST['push_charge']))){
$err = 1;
$errMsg = 'Provide Push Notification Charge';
}else if($err == 0 && (!isset($_POST['report_charge']) || empty($_POST['report_charge']))){
$err = 1;
$errMsg = 'Provide a Report Generation Charge';
}
$config = set_upload_service("assets/uploads/services");
$this->load->library('upload');
......
......@@ -66,30 +66,39 @@ function set_log($class,$method,$postdata,$auth){
}
function pr($val){
if(is_array($val)){
echo '<pre>';
}
print_r($val);exit;
echo (is_array($val))?'<pre>':'';
print_r($val);
echo (is_array($val))?'</pre>':'';
exit;
}
function pre($val){
if(is_array($val)){
echo '<pre>';
}
echo (is_array($val))?'<pre>':'';
print_r($val);
echo (is_array($val))?'</pre>':'';
}
function encode_param($param = ''){
if(empty($param)){
return;
}
return urlencode(base64_encode('{***}'.$param.'{***}'));
$encode = base64_encode('{*}'.$param.'{*}');
$encode = base64_encode('a%a'.$encode.'a%a');
$encode = base64_encode('b'.$encode.'b');
$encode = base64_encode('Ta7K'.$encode.'eyRq');
return urlencode($encode);
}
function decode_param($param = ''){
if(empty($param)){
return;
}
return trim(base64_decode(urldecode($param)),'{***}');
$decode = urldecode(trim($param));
$decode = trim(base64_decode(urldecode($decode)),'Ta7K');
$decode = trim($decode,'eyRq');
$decode = trim(base64_decode(urldecode($decode)),'b');
$decode = trim(base64_decode(urldecode($decode)),'a%a');
$decode = trim(base64_decode(urldecode($decode)),'{*}');
return $decode;
}
?>
\ No newline at end of file
......@@ -62,7 +62,7 @@ class Company_model extends CI_Model {
}
$status = $this->db->update('admin_users', $upArr, array('id'=>$company_id));
if($status){
$status = $this->db->update('company',array('company_name'=>$company_data['company_name'],'address'=>$company_data['address'],'phone'=>$company_data['phone'],'fax'=>$company_data['fax'],'email_id'=>$company_data['email_id'],'company_contact'=>$company_data['company_contact'],'company_info'=>$company_data['company_info'],'company_federal_id'=>$company_data['company_federal_id'],),array('company_id'=>$company_id));
$status = $this->db->update('company',array('company_name'=>$company_data['company_name'],'address'=>$company_data['address'],'phone'=>$company_data['phone'],'fax'=>$company_data['fax'],'email_id'=>$company_data['email_id'],'company_contact'=>$company_data['company_contact'],'company_info'=>$company_data['company_info'],'company_federal_id'=>$company_data['company_federal_id'],'report_charge'=>$company_data['report_charge'],'push_charge'=>$company_data['push_charge'],'sms_charge'=>$company_data['sms_charge'],'booking_charge'=>$company_data['booking_charge']),array('company_id'=>$company_id));
return ($status)?1:0;
}
return 0;
......
......@@ -24,10 +24,11 @@ class Driver_model extends CI_Model {
function getDriver($driver_id = ''){
$cond = (!empty($driver_id))?" AND driver_id = '$driver_id'":"";
$sql = "SELECT DRV.*, CMP.company_name
$sql = "SELECT DRV.*, CMP.company_name, VH.vehicle_type
FROM drivers AS DRV
INNER JOIN company AS CMP ON (CMP.company_id = DRV.company_id)
INNER JOIN admin_users AS AU ON (AU.id = CMP.company_id)
LEFT JOIN vehicles AS VH ON (VH.vehicle_id = DRV.vehicle_id)
WHERE DRV.status IN (0,1) AND AU.status = '1' $cond";
$result = $this->db->query($sql);
if(empty($result)){
......@@ -56,13 +57,19 @@ class Driver_model extends CI_Model {
if(!empty($phoneChk) && $phoneChk->num_rows() > 0){
return 3;
}
$upArr = array('company_id'=>$driver_data['company_id'],'first_name'=>$driver_data['first_name'],'last_name'=>$driver_data['last_name'],'email_id'=>$driver_data['email_id'],'phone'=>$driver_data['phone']);
$upArr = array('first_name'=>$driver_data['first_name'],'last_name'=>$driver_data['last_name'],'email_id'=>$driver_data['email_id'],'phone'=>$driver_data['phone']);
if(!empty($driver_data['profile_image'])){
$upArr['profile_image'] = $driver_data['profile_image'];
}
if(!empty($driver_data['licence'])){
$upArr['licence'] = $driver_data['licence'];
}
if(!empty($driver_data['company_id'])){
$upArr['company_id'] = $driver_data['company_id'];
}
if(!empty($driver_data['vehicle_id'])){
$upArr['vehicle_id'] = $driver_data['vehicle_id'];
}
$status = $this->db->update('drivers', $upArr, array('driver_id'=>$driver_id));
return ($status)?1:0;
}
......
......@@ -34,15 +34,19 @@ class Ride_model extends CI_Model {
return 0;
}
$status = $this->db->insert('transport_details',$data);
pr($this->db->last_query());
return ($status)?1:0;
}
function getRideData($ride_id = ''){
function getRideData($ride_id = '',$company_id = ''){
$cond = (!empty($ride_id))?" AND TD.transport_id = '$ride_id'":"";
$sql = "SELECT TD.*, BK.broker_name
$cond .= (!empty($company_id))?" AND TD.company_id = '$company_id'":"";
$sql = "SELECT TD.*,BK.broker_name,AR.reason,VH.vehicle_id,VH.vehicle_type,TT.trip_type,TS.trip_status
FROM transport_details AS TD
LEFT JOIN brokers AS BK ON (TD.broker_id = BK.broker_id)
LEFT JOIN vehicles AS VH ON (VH.vehicle_id = TD.vehicle_type)
LEFT JOIN trip_type AS TT ON (TT.trip_id = TD.trip_type)
LEFT JOIN trip_status AS TS ON (TS.trip_status_id = TD.trip_status)
LEFT JOIN appointment_reason AS AR ON (AR.reason_id = TD.reason_code)
WHERE TD.status != '2' ".$cond."
ORDER BY TD.transport_id DESC";
$ride_data = $this->db->query($sql);
......@@ -59,5 +63,46 @@ class Ride_model extends CI_Model {
$status = $this->db->update('transport_details',array('status'=>$status), array('transport_id'=>$ride_id));
return $status;
}
}
function getNearByRiders($company_id = '',$ride_data = array()){
if(empty($company_id) || empty($ride_data)){
return 0;
}
$sql = "SELECT DRV.*,3956*2*ASIN(SQRT(POWER(SIN((".$ride_data['lat']."-DRV.lat_driver)*pi()/180/2),
2)+COS(".$ride_data['lat']."*pi()/180)*COS(DRV.lat_driver*pi()/180)*
POWER(SIN((".$ride_data['lng']."-DRV.lng_driver)*pi()/180/2),2))) AS distance
FROM drivers AS DRV
LEFT JOIN ride_status AS RS ON (RS.ride_id = '".$ride_data['ride_id']."' AND
RS.driver_id <> DRV.driver_id)
WHERE DRV.status = '1' AND DRV.company_id = '$company_id' AND
DRV.vehicle_id = '".$ride_data['vehicle_id']."' AND
DRV.lat_driver IS NOT NULL AND DRV.lng_driver IS NOT NULL
GROUP BY DRV.driver_id
ORDER BY distance ASC";
$data = $this->db->query($sql);
if(empty($data)){
return 0;
}
return $data->result_array();
}
function assignRide($ride_id = '',$driver_id = '',$mode = '0'){
if(empty($ride_id) || empty($driver_id)){
return 0;
}
if($mode == 0){
$status = $this->db->insert('ride_status',array('ride_id'=>$ride_id,'driver_id'=>$driver_id,'status'=>'0'));
if($status){
$status = $this->db->update('transport_details',array('assigned_driver'=>$driver_id,'status'=>'3'),array('transport_id'=>$ride_id,'status'=>'1'));
if(!$status){
$this->db->delete('ride_status',array('ride_id'=>$ride_id,'driver_id'=>$driver_id));
}
}
} else {
$status = $this->db->update('transport_details',array('assigned_driver'=>$driver_id,'status'=>'8'),array('transport_id'=>$ride_id));
}
return ($status)?1:0;
}
}
?>
\ No newline at end of file
......@@ -31,6 +31,10 @@ class Vehicle_model extends CI_Model {
if(empty($vehicle_id)){
return 0;
}
if($status == 2){
$status = $this->db->delete('vehicles',array('vehicle_id' => $vehicle_id));
return $status;
}
$status = $this->db->update('vehicles',array('status'=>$status), array('vehicle_id'=>$vehicle_id));
return $status;
}
......
......@@ -37,7 +37,7 @@
<img src="<?= base_url($company_data->profile_image) ?>" onerror="this.src='<?=base_url("assets/images/user_avatar.jpg")?>';" height="100" width="100" />
</div>
</div>
<div class="col-md-5">
<div class="col-md-4">
<div class="form-group has-feedback">
<span style="padding-right: 52px;">Name </span> :
<label style="padding-left: 10px;" for="exampleInputEmail1">
......@@ -63,7 +63,7 @@
</label>
</div>
</div>
<div class="col-md-5">
<div class="col-md-3">
<div class="form-group has-feedback">
<span style="padding-right: 108px;">Fax </span> :
<label style="padding-left: 10px;" for="exampleInputEmail1">
......@@ -89,6 +89,42 @@
</label>
</div>
</div>
<div class="col-md-3"> </div>
</div>
<div class="col-md-12" style="padding-bottom: 15px;">
<div class="col-md-12 box-header with-border"><h4>Payment Charges</h4></div>
</div>
<div>
<div class="col-md-2"></div>
<div class="col-md-4">
<div class="form-group has-feedback">
<span style="padding-right: 50px;">Booking Charge </span> :
<label style="padding-left: 10px;" for="exampleInputEmail1">
<?= $company_data->booking_charge ?>
</label>
</div>
<div class="form-group has-feedback">
<span style="padding-right: 74px;">SMS Charge </span> :
<label style="padding-left: 10px;" for="exampleInputEmail1">
<?= $company_data->sms_charge ?>
</label>
</div>
</div>
<div class="col-md-3">
<div class="form-group has-feedback">
<span style="padding-right: 50px;">Push Notification Charge </span> :
<label style="padding-left: 10px;" for="exampleInputEmail1">
<?= $company_data->push_charge ?>
</label>
</div>
<div class="form-group has-feedback">
<span style="padding-right: 43px;">Report Generation Charge </span> :
<label style="padding-left: 10px;" for="exampleInputEmail1">
<?= $company_data->report_charge ?>
</label>
</div>
</div>
<div class="col-md-3"> </div>
</div>
</div>
</div>
......
......@@ -24,7 +24,7 @@
<div class="col-md-12">
<div class="box box-warning">
<div class="box-header with-border">
<h3 class="box-title">Company Details</h3>
<h3 class="box-title">Driver Details</h3>
</div>
<form role="form" action="<?=base_url('Driver/addDriver')?>" method="post" class="validate" data-parsley-validate="" enctype="multipart/form-data">
<div class="box-body">
......@@ -32,15 +32,21 @@
<div class="form-group has-feedback">
<label for="exampleInputEmail1">First Name</label>
<input type="text" class="form-control required" data-parsley-trigger="change"
data-parsley-minlength="2" data-parsley-pattern="^[a-zA-Z\ . ! @ # $ % ^ & * () + = , \/]+$" required="" name="first_name" placeholder="Enter Company Name">
data-parsley-minlength="2" data-parsley-pattern="^[a-zA-Z\ . ! @ # $ % ^ & * () + = , \/]+$" required="" name="first_name" placeholder="Enter Driver Name">
<span class="glyphicon form-control-feedback"></span>
</div>
<div class="form-group has-feedback">
<label for="exampleInputEmail1">Last Name</label>
<input type="text" class="form-control required" data-parsley-trigger="change"
data-parsley-minlength="2" data-parsley-pattern="^[a-zA-Z\ . ! @ # $ % ^ & * () + = , \/]+$" required="" name="last_name" placeholder="Enter Company Name">
data-parsley-minlength="2" data-parsley-pattern="^[a-zA-Z\ . ! @ # $ % ^ & * () + = , \/]+$" required="" name="last_name" placeholder="Enter Driver Name">
<span class="glyphicon form-control-feedback"></span>
</div>
<div class="form-group">
<label for="exampleInputEmail1">Phone</label>
<input type="number" class="form-control required" data-parsley-trigger="change"
data-parsley-minlength="2" required="" name="phone" placeholder="Enter Phone Number">
<span class="glyphicon form-control-feedback"></span>
</div>
<div class="form-group has-feedback">
<label for="exampleInputEmail1">Email</label>
<input type="email" class="form-control required" data-parsley-trigger="change"
......@@ -60,47 +66,58 @@
</div>
</div>
<div class="col-md-6">
<div class="form-group">
<label for="exampleInputEmail1">Licence</label>
<div class="form-group">
<label for="exampleInputEmail1">Profile Picture</label>
<div class="col-md-12">
<div class="col-md-3">
<img id="licence_img" src="" onerror="this.src='<?=base_url("assets/images/no_image.png")?>';" height="75" width="75" />
<img id="profile_image" src="" onerror="this.src='<?=base_url("assets/images/user_avatar.jpg")?>'" height="75" width="75" />
</div>
<div class="col-md-9" style="padding-top: 25px;">
<input name="licence" type="file" accept="image/*" class="required" onchange="setImg(this,'licence_img');" />
<input name="profile_image" type="file" accept="image/*" class="required" onchange="setImg(this,'profile_image')" />
</div>
</div>
</div>
<div class="form-group">
<label for="exampleInputEmail1">Company</label>
<select name="company_id" class="form-control required" data-parsley-trigger="change" required>
<option selected disabled>Select Company</option>
<?php
if(!empty($companies)){
foreach ($companies as $company) {
echo '<option value="'.$company->company_id.'">'.$company->company_name.'</option>';
}
}
?>
</select>
</div>
<div class="form-group">
<label for="exampleInputEmail1">Phone</label>
<input type="number" class="form-control required" data-parsley-trigger="change"
data-parsley-minlength="2" required="" name="phone" placeholder="Enter Phone Number">
<span class="glyphicon form-control-feedback"></span>
</div>
<div class="form-group">
<label for="exampleInputEmail1">Profile Picture</label>
<div class="form-group">
<label for="exampleInputEmail1" style="padding-top:10px;">Licence</label>
<div class="col-md-12">
<div class="col-md-3">
<img id="profile_image" src="" onerror="this.src='<?=base_url("assets/images/user_avatar.jpg")?>';" height="75" width="75" />
<img id="licence_img" src="" onerror="this.src='<?=base_url("assets/images/no_image.png")?>'" height="75" width="75" />
</div>
<div class="col-md-9" style="padding-top: 25px;">
<input name="profile_image" type="file" accept="image/*" class="required" onchange="setImg(this,'profile_image');" />
<input name="licence" type="file" accept="image/*" class="required" onchange="setImg(this,'licence_img')" />
</div>
</div>
</div>
<?php if($this->session->userdata['user_type'] == 1){ ?>
<div class="form-group">
<label for="exampleInputEmail1" style="padding-top:12px;">Company</label>
<select name="company_id" class="form-control required" data-parsley-trigger="change" required>
<option selected disabled>Select Company</option>
<?php
if(!empty($companies)){
foreach ($companies as $company) {
echo '<option value="'.$company->company_id.'">'.$company->company_name.'</option>';
}
}
?>
</select>
</div>
<?php }else{ ?>
<input type="hidden" name="company_id" value="<?= $this->session->userdata['id'] ?>">
<?php } ?>
<div class="form-group">
<label for="exampleInputEmail1">Select Vehicle</label>
<select name="vehicle_id" class="form-control required" data-parsley-trigger="change" required>
<option selected disabled>Select Vehicle Type</option>
<?php
if(!empty($vehicles)){
foreach ($vehicles as $vehicle) {
echo '<option value="'.$vehicle->vehicle_id.'">'.$vehicle->vehicle_type.'</option>';
}
}
?>
</select>
</div>
</div>
</form>
</div>
......
......@@ -32,13 +32,13 @@
<div class="form-group has-feedback">
<label for="exampleInputEmail1">First Name</label>
<input type="text" class="form-control required" data-parsley-trigger="change"
data-parsley-minlength="2" data-parsley-pattern="^[a-zA-Z\ . ! @ # $ % ^ & * () + = , \/]+$" required="" name="first_name" value="<?= $driver_data->first_name ?>" placeholder="Enter Company Name">
data-parsley-minlength="2" data-parsley-pattern="^[a-zA-Z\ . ! @ # $ % ^ & * () + = , \/]+$" required="" name="first_name" value="<?= $driver_data->first_name ?>" placeholder="Enter Driver Name">
<span class="glyphicon form-control-feedback"></span>
</div>
<div class="form-group has-feedback">
<label for="exampleInputEmail1">Last Name</label>
<input type="text" class="form-control required" data-parsley-trigger="change"
data-parsley-minlength="2" data-parsley-pattern="^[a-zA-Z\ . ! @ # $ % ^ & * () + = , \/]+$" required="" name="last_name" value="<?= $driver_data->last_name ?>" placeholder="Enter Company Name">
data-parsley-minlength="2" data-parsley-pattern="^[a-zA-Z\ . ! @ # $ % ^ & * () + = , \/]+$" required="" name="last_name" value="<?= $driver_data->last_name ?>" placeholder="Enter Driver Name">
<span class="glyphicon form-control-feedback"></span>
</div>
<div class="form-group has-feedback">
......@@ -60,20 +60,36 @@
</div>
</div>
<div class="col-md-6">
<div class="form-group">
<label for="exampleInputEmail1">Company</label>
<select name="company_id" class="form-control required" data-parsley-trigger="change" required>
<option selected disabled>Select Company</option>
<?php if($this->session->userdata['user_type'] == 1){ ?>
<div class="form-group">
<label for="exampleInputEmail1" style="padding-top:12px;">Company</label>
<select name="company_id" class="form-control required" data-parsley-trigger="change" required>
<option selected disabled>Select Company</option>
<?php
if(!empty($companies)){
foreach ($companies as $company) {
$chkFlag = ($company->company_id == $driver_data->company_id)?'selected':'';
echo '<option '.$chkFlag.' value="'.$company->company_id.'">'.$company->company_name.'</option>';
}
}
?>
</select>
</div>
<?php } ?>
<div class="form-group">
<label for="exampleInputEmail1">Select Vehicle</label>
<select name="vehicle_id" class="form-control required" data-parsley-trigger="change" required>
<option selected disabled>Select Vehicle Type</option>
<?php
if(!empty($companies)){
foreach ($companies as $company) {
$selected = ($company->company_id == $driver_data->company_id)?'selected':'';
echo '<option '.$selected.' value="'.$company->company_id.'">'.$company->company_name.'</option>';
if(!empty($vehicles)){
foreach ($vehicles as $vehicle) {
$chkFlag = ($vehicle->vehicle_id == $driver_data->vehicle_id)?'selected':'';
echo '<option '.$chkFlag.' value="'.$vehicle->vehicle_id.'">'.$vehicle->vehicle_type.'</option>';
}
}
?>
</select>
</div>
</div>
<div class="form-group">
<label for="exampleInputEmail1">Licence</label>
<div class="col-md-12">
......
......@@ -62,6 +62,12 @@
<?= $driver_data->company_name ?>
</label>
</div>
<div class="form-group has-feedback">
<span style="padding-right: 45px;">Vechile </span> :
<label style="padding-left: 10px;" for="exampleInputEmail1">
<?= $driver_data->vehicle_type ?>
</label>
</div>
</div>
</div>
<div class="col-md-12">
......
<div class="content-wrapper" >
<!-- Content Header (Page header) -->
<section class="content-header">
<h1>
<?= $page_title ?>
<small><?= $page_desc ?></small>
</h1>
<ol class="breadcrumb">
<li><a href="<?= base_url() ?>"><i class="fa fa-star-o" aria-hidden="true"></i>Home</a></li>
<li>User</li>
<li class="active">View User</li>
</ol>
</section>
<!-- Main content -->
<section class="content">
<div class="row">
<div class="col-md-12">
<?php if($this->session->flashdata('message')) {
$flashdata = $this->session->flashdata('message'); ?>
<div class="alert alert-<?= $flashdata['class'] ?>">
<button class="close" data-dismiss="alert" type="button">×</button>
<?= $flashdata['message'] ?>
</div>
<?php } ?>
</div>
<div class="col-xs-12">
<div class="box">
<div class="box-header">
<h3 class="box-title">Select Driver</h3>
</div>
<div class="box-body">
<table id="" class="table table-bordered table-striped datatable ">
<thead>
<tr>
<th width="100px;">Driver Image</td>
<th width="120px;">Driver Name</td>
<th width="120px;">Driver Phone</td>
<th width="150px;">Driver Email</td>
<th width="170px;">Pick-Up Distance <small>(In Miles)</small></td>
<th width="150px;">Action</td>
</tr>
</thead>
<tbody>
<?php
$prefDriver = $ride_data->driver_id;
$forceAssign = ($ride_data->status == 7)?1:0;
if(!empty($driver_list)){
foreach($driver_list as $driver) {
?>
<tr <?= ($prefDriver == $driver['driver_id'])?'style="background:#c1ef63;"':'' ?>>
<td class="center">
<img src="<?= base_url($driver['profile_image']) ?>" onerror="this.src='<?=base_url("assets/images/user_avatar.jpg")?>';" height="50" width="50" />
</td>
<td class="center"><?= $driver['first_name'].' '.$driver['last_name'] ?></td>
<td class="center"><?= $driver['phone'] ?></td>
<td class="center"><?= $driver['email_id'] ?></td>
<td class="center" style="padding-left:7%;">
<strong><?= round($driver['distance'],1) ?></strong>
</td>
<td class="center">
<a class="btn btn-sm btn-success" style="width:100%;"
href="<?= base_url("Ride/assignRide/".encode_param($ride_id)."/".encode_param($driver['driver_id']).'/'.$forceAssign) ?>" >
<i class="fa fa-fw fa-arrow-circle-right" style="padding-right:10px;"></i>Assign Ride
</a>
</td>
</tr>
<?php }
}?>
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
</section>
</div>
\ No newline at end of file
......@@ -38,21 +38,19 @@
$row_html = '<div class="col-md-6"> {:label} </div>
<div class="col-md-1"> : </div>
<div class="col-md-5"> {:value} </div>';
if(empty($data->broker_id)){
echo str_replace(array('{:label}','{:value}'), array('Medicaid Number',$data->medical_no), $row_html);
echo str_replace(array('{:label}','{:value}'), array('Member Name',$data->patient_name), $row_html);
echo str_replace(array('{:label}','{:value}'), array('Member\'s Age',$data->age), $row_html);
echo str_replace(array('{:label}','{:value}'), array('Member\'s Phone Number',$data->phone), $row_html);
echo str_replace(array('{:label}','{:value}'), array('Appointment Date & Time',$data->appointment_time), $row_html);
echo str_replace(array('{:label}','{:value}'), array('Pickup Address',$data->pickup_location), $row_html);
echo str_replace(array('{:label}','{:value}'), array('Delivery Address',$data->drop_location), $row_html);
echo str_replace(array('{:label}','{:value}'), array('Trip Reason Code',$data->reason_code), $row_html);
echo str_replace(array('{:label}','{:value}'), array('Vehicle Type',$data->vehicle_type), $row_html);
echo str_replace(array('{:label}','{:value}'), array('Trip Type',$data->trip_type), $row_html);
echo str_replace(array('{:label}','{:value}'), array('Trip Cost',$data->trip_cost), $row_html);
}
foreach($ride_data AS $key => $ride){
switch ($key){
case 'Wheelchair_Flag':$ride = ($ride == 1)?'YES':'NO';break;
case 'Attendant_Flag':$ride = ($ride == 1)?'YES':'NO';break;
case 'Pregnant_Flag':$ride = ($ride == 1)?'YES':'NO';break;
case 'Crutches_/_Walker_/_Cane_Flag':$ride = ($ride == 1)?'YES':'NO';break;
case 'Trip_Reason_Code': $key = 'Trip Reason';$ride = $data->reason;break;
case 'Vehicle_Type':$ride = $data->vehicle_type;break;
case 'Trip_Type':$ride = $data->trip_type;break;
case 'Trip_Status':$ride = (!empty($ride))?$data->trip_status:'';break;
}
$key = str_replace('_',' ',$key);
echo str_replace(array('{:label}','{:value}'), array($key,$ride), $row_html);
}
?>
......
......@@ -60,10 +60,13 @@
}else{
switch ($ride->status){
case 0: echo 'Inactive';break;
case 1: echo 'Waiting For Drivers';break;
case 3: echo 'Driver Accepted';break;
case 4: echo 'Ride Completed';break;
case 4: echo 'Ride Cancelled';break;
case 1: echo 'Yet to assign Driver';break;
case 3: echo 'Waiting For Driver Approval';break;
case 4: echo 'Driver Accepted';break;
case 5: echo 'Processing';break;
case 6: echo 'Ride Completed';break;
case 7: echo 'Driver Canceled';break;
case 8: echo 'Driver Manually Assigned';break;
}
}
?>
......@@ -79,9 +82,9 @@
onClick="return doconfirm()">
<i class="fa fa-fw fa-trash"></i>Delete
</a>
<?php if($ride->status == 1 && date('Ymd Gi') < strtotime($ride->appointment_time)){?>
<?php if($this->session->userdata['user_type'] != 1 && ($ride->status == 1 || $ride->status == 7) && date('Ymd Gi') < strtotime($ride->appointment_time)){?>
<a class="btn btn-sm btn-primary"
href="<?= base_url('Ride/view/'.encode_param($ride->transport_id)) ?>">
href="<?= base_url('Ride/assign_driver/'.encode_param($ride->transport_id)) ?>">
<i class="fa fa-fw fa-edit"></i>Assign Driver
</a>
<?php } ?>
......
......@@ -16,7 +16,7 @@
<script src="<?php echo base_url();?>assets/js/nemt_custom.js"></script>
<script src="https://cdn.ckeditor.com/4.5.7/standard/ckeditor.js"></script>;
<script src="https://cdn.ckeditor.com/4.5.7/standard/ckeditor.js"></script>
<script src="<?php echo base_url();?>assets/js/bootstrap-datepicker.js"></script>
<script type="text/javascript" src="<?= base_url('assets/js/clockpicker.js') ?>"></script>
<script>
......
......@@ -6,7 +6,7 @@
<div class="user-panel">
<div class="pull-left image">
<img src="<?=base_url($this->session->userdata('profile_pic'))?>" onerror="this.src='<?=base_url("assets/images/user_avatar.jpg")?>';" class="user-image left-sid" alt="User Image">
<img src="<?=base_url($this->session->userdata('profile_pic'))?>" onerror="this.src='<?=base_url("assets/images/user_avatar.jpg")?>'" class="user-image left-sid" alt="User Image">
</div>
<div class="pull-left info">
......@@ -40,6 +40,7 @@
</li>
</ul>
</li>
<?php if($this->session->userdata['user_type'] == 1){ ?>
<li class="treeview">
<a href="#">
<i class="fa fa-bars" aria-hidden="true"></i>
......@@ -61,6 +62,7 @@
</li>
</ul>
</li>
<?php } ?>
<li class="treeview">
<a href="#">
<i class="fa fa-bars" aria-hidden="true"></i>
......
......@@ -30,9 +30,15 @@
<div class="box-body">
<div class="col-md-6">
<div class="form-group has-feedback">
<label for="exampleInputEmail1">Vehicle Type Code</label>
<input type="text" class="form-control required" data-parsley-trigger="change"
data-parsley-minlength="2" data-parsley-pattern="^[a-zA-Z0-9\ . ! @ # $ % ^ & * () + = , \/]+$" required="" name="vehicle_id" placeholder="Vehicle Type Code">
<span class="glyphicon form-control-feedback"></span>
</div>
<div class="form-group has-feedback">
<label for="exampleInputEmail1">Vehicle Type</label>
<input type="text" class="form-control required" data-parsley-trigger="change"
data-parsley-minlength="2" data-parsley-pattern="^[a-zA-Z0-9\ . ! @ # $ % ^ & * () + = , \/]+$" required="" name="vehicle_type" placeholder="Enter Company Name">
data-parsley-minlength="2" data-parsley-pattern="^[a-zA-Z0-9\ . ! @ # $ % ^ & * () + = , \/]+$" required="" name="vehicle_type" placeholder="Vehicle Type">
<span class="glyphicon form-control-feedback"></span>
</div>
<div class="col-md-12">
......
......@@ -28,31 +28,42 @@
</div>
<form role="form" action="<?=base_url('Vehicle/update/'.encode_param($vehicle_id))?>" method="post" class="validate" data-parsley-validate="" enctype="multipart/form-data">
<div class="box-body">
<div class="col-md-6">
<div class="form-group has-feedback">
<label for="exampleInputEmail1">Vehicle Type</label>
<input type="text" class="form-control required" data-parsley-trigger="change"
data-parsley-minlength="2" data-parsley-pattern="^[a-zA-Z0-9\ . ! @ # $ % ^ & * () + = , \/]+$" required="" name="vehicle_type" value="<?= $vehicle_data->vehicle_type ?>" placeholder="Enter Company Name">
<span class="glyphicon form-control-feedback"></span>
</div>
<div class="col-md-12">
<div class="box-footer">
<button type="submit" class="btn btn-primary">Submit</button>
</div>
</div>
</div>
<div class="col-md-6">
<div class="form-group">
<label for="exampleInputEmail1">Vehicle Photo</label>
<div class="col-md-12">
<div class="col-md-3">
<img id="vehicle_photo" src="<?= base_url($vehicle_data->vehicle_photo) ?>" onerror="this.src='<?=base_url("assets/images/default_car.jpg")?>';" height="75" width="75" />
</div>
<div class="col-md-9" style="padding-top: 25px;">
<input name="vehicle_photo" type="file" accept="image/*" onchange="setImg(this,'vehicle_photo');" />
<div class="form-group has-feedback">
<label for="exampleInputEmail1">Vehicle Type Code</label>
<input type="text" class="form-control required" data-parsley-trigger="change"
data-parsley-minlength="1" data-parsley-pattern="^[a-zA-Z0-9\ . ! @ # $ % ^ & * () + = , \/]+$" required="" name="vehicle_id" value="<?= $vehicle_data->vehicle_id ?>" placeholder="Vehicle Code">
<span class="glyphicon form-control-feedback"></span>
</div>
</div>
<div class="col-md-4">
<div class="form-group has-feedback">
<label for="exampleInputEmail1">Vehicle Type</label>
<input type="text" class="form-control required" data-parsley-trigger="change"
data-parsley-minlength="2" data-parsley-pattern="^[a-zA-Z0-9\ . ! @ # $ % ^ & * () + = , \/]+$" required="" name="vehicle_type" value="<?= $vehicle_data->vehicle_type ?>" placeholder="Vehicle Type">
<span class="glyphicon form-control-feedback"></span>
</div>
</div>
<div class="col-md-5">
<div class="form-group">
<label for="exampleInputEmail1">Vehicle Photo</label>
<div class="col-md-12">
<div class="col-md-3">
<img id="vehicle_photo" src="<?= base_url($vehicle_data->vehicle_photo) ?>" onerror="this.src='<?=base_url("assets/images/default_car.jpg")?>';" height="75" width="75" />
</div>
<div class="col-md-9" style="padding-top: 25px;">
<input name="vehicle_photo" type="file" accept="image/*" onchange="setImg(this,'vehicle_photo');" />
</div>
</div>
</div>
</div>
</div>
</div>
<div class="col-md-12">
<div class="box-footer">
<button type="submit" class="btn btn-primary">Submit</button>
</div>
</div>
</div>
</form>
</div>
......
......@@ -32,11 +32,11 @@
<table id="" class="table table-bordered table-striped datatable ">
<thead>
<tr>
<th class="hidden">ID</th>
<th width="100px;">Vehicle</th>
<th width="200px;">Vehicle Type</th>
<th width="40px;">Vehicle</th>
<th width="100px;">Vehicle Code</th>
<th width="100px;">Vehicle Type</th>
<th width="150px;">Status</th>
<th width="100px;">Action</th>
<th width="120px;">Action</th>
</tr>
</thead>
<tbody>
......@@ -45,10 +45,10 @@
foreach($vehicles_data as $vehicle) {
?>
<tr>
<th class="hidden"><?= $vehicle->vehicle_id ?></th>
<td class="center">
<img src="<?= base_url($vehicle->vehicle_photo) ?>" onerror="this.src='<?=base_url("assets/images/default_car.jpg")?>';" height="50" width="50" />
</th>
<th class="center"><?= $vehicle->vehicle_id ?></th>
<td class="center"><?= $vehicle->vehicle_type ?></th>
<td class="center"><?= ($vehicle->status == '1')?'Active':'Inactive'?></td>
<td class="center">
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment