/** Bookings **/
function bookings() {
$this->load->library('pagination');
$this->load->library('table');
if ($this->session->userdata('admin_login') != 1)
redirect(base_url() . 'login', 'refresh');
//civility, first/last name, email, phone, hire_date, job, address, city, zip_code, status.
if (empty($_POST) || $_POST['type'] == "search") { $page_data['page_name'] = 'bookings';
$page_data['cars'] = $this->db->get('handi_cars')->result_array();
$page_data['drivers'] = $this->db->where('job', 'driver')->get('handi_employees')->result_array();
$page_data['clients'] = $this->db->get('handi_clients')->result_array();
$page_data['driver_names'] = $this->driverNames($this->db->where('job', 'driver')->get('handi_employees')->result_array());
$page_data['client_names'] = $this->clientNames($this->db->get('handi_clients')->result_array());
$page_data['user_name'] = get_phrase('Mr. ' . $this->session->userdata('login_as'));
$page_data['page_title'] = "Bookings"; //get_phrase($this->session->userdata('login_as').'_dashboard');
$page_data['board1'] = $this->db->get('first_board')->result_array();
//Must be last to avoid query interruption
if ($_POST['type'] == "search") {
$this->db->select('*');
$search_word = $this->input->post('search-word');
$from_period = str_replace("/", "-", $this->input->post('from_period')); $to_period = str_replace("/", "-", $this->input->post('to_period')); $status = $this->input->post('status');
$nature = $this->input->post('nature');
$ridetype = $this->input->post('ridetype
');
if ($search_word != "" && $search_word != "Search keyword") {
$this->db->like('client', $search_word)->or_like('driver', $search_word)->or_like('origin', $search_word)->or_like('destination', $search_word);
}
$this->db->where('start_time >=', $from_period);
$this->db->where('stop_time <=', $to_period);
if ($status != "All status") {
$this->db->where('status', $status);
}
if ($nature != "All nature") {
$this->db->where('nature', $nature);
}
if ($ridetype != "All type") {
$this->db->where('ridetype', $ridetype);
}
$page_data['searched_word'] = $search_word;
$page_data['searched_from'] = $from_period;
$page_data['searched_to'] = $to_period;
$page_data['searched_status'] = $status;
$page_data['searched_nature'] = $nature;
$page_data['searched_ridetype'] = $ridetype;
}
$page_data['rides'] = $this->db->get('handi_rides')->result_array();
$this->load->view('admin', $page_data);
}
else {
$type = $this->input->post('type');
"client" => $this->input->post('client'),
"driver" => $this->input->post('driver'),
"car" => $this->input->post('car'),
"start_time" => str_replace("/", "-", $this->input->post('start_time')), "stop_time" => str_replace("/", "-", $this->input->post('stop_time')), "nature" => $this->input->post('nature'),
"ridetype" => $this->input->post('ridetype'),
"service_name" => $this->input->post('service_name'),
"person_count" => $this->input->post('person_count'),
"wheelchair" => $this->input->post('wheelchair'),
"origin" => $this->input->post('origin'),
"destination" => $this->input->post('destination'),
"origin_cord" => $this->input->post('origin_cord'),
"destination_cord" => $this->input->post('destination_cord'),
"status" => $this->input->post('status')
);
if ($type == "add") {
$this->db->insert('handi_rides', $data);
} else if ($type == "delete") {
$this->db->where('id', $this->input->post('id'))->delete('handi_rides');
} else if ($type == "edit") {
$this->db->where('id', $this->input->post('id'))->update('handi_rides', $data);
}
redirect('admin/bookings');
}
}
CiAgICAvKiogQm9va2luZ3MgKiovCiAgICBmdW5jdGlvbiBib29raW5ncygpIHsKICAgICAgICAkdGhpcy0+bG9hZC0+bGlicmFyeSgncGFnaW5hdGlvbicpOwogICAgICAgICR0aGlzLT5sb2FkLT5saWJyYXJ5KCd0YWJsZScpOwoKICAgICAgICBpZiAoJHRoaXMtPnNlc3Npb24tPnVzZXJkYXRhKCdhZG1pbl9sb2dpbicpICE9IDEpCiAgICAgICAgICAgIHJlZGlyZWN0KGJhc2VfdXJsKCkgLiAnbG9naW4nLCAncmVmcmVzaCcpOwogICAgICAgIC8vY2l2aWxpdHksIGZpcnN0L2xhc3QgbmFtZSwgZW1haWwsIHBob25lLCBoaXJlX2RhdGUsIGpvYiwgYWRkcmVzcywgY2l0eSwgemlwX2NvZGUsIHN0YXR1cy4gICAgICAgCiAgICAgICAgaWYgKGVtcHR5KCRfUE9TVCkgfHwgJF9QT1NUWyd0eXBlJ10gPT0gInNlYXJjaCIpIHsKICAgICAgICAgICAgJHBhZ2VfZGF0YVsncGFnZV9uYW1lJ10gICAgPSAnYm9va2luZ3MnOwogICAgICAgICAgICAkcGFnZV9kYXRhWydjYXJzJ10gICAgICAgICA9ICR0aGlzLT5kYi0+Z2V0KCdoYW5kaV9jYXJzJyktPnJlc3VsdF9hcnJheSgpOwogICAgICAgICAgICAkcGFnZV9kYXRhWydkcml2ZXJzJ10gICAgICA9ICR0aGlzLT5kYi0+d2hlcmUoJ2pvYicsICdkcml2ZXInKS0+Z2V0KCdoYW5kaV9lbXBsb3llZXMnKS0+cmVzdWx0X2FycmF5KCk7CiAgICAgICAgICAgICRwYWdlX2RhdGFbJ2NsaWVudHMnXSAgICAgID0gJHRoaXMtPmRiLT5nZXQoJ2hhbmRpX2NsaWVudHMnKS0+cmVzdWx0X2FycmF5KCk7CiAgICAgICAgICAgICRwYWdlX2RhdGFbJ2RyaXZlcl9uYW1lcyddID0gJHRoaXMtPmRyaXZlck5hbWVzKCR0aGlzLT5kYi0+d2hlcmUoJ2pvYicsICdkcml2ZXInKS0+Z2V0KCdoYW5kaV9lbXBsb3llZXMnKS0+cmVzdWx0X2FycmF5KCkpOwogICAgICAgICAgICAkcGFnZV9kYXRhWydjbGllbnRfbmFtZXMnXSA9ICR0aGlzLT5jbGllbnROYW1lcygkdGhpcy0+ZGItPmdldCgnaGFuZGlfY2xpZW50cycpLT5yZXN1bHRfYXJyYXkoKSk7CiAgICAgICAgICAgICRwYWdlX2RhdGFbJ3VzZXJfbmFtZSddICAgID0gZ2V0X3BocmFzZSgnTXIuICcgLiAkdGhpcy0+c2Vzc2lvbi0+dXNlcmRhdGEoJ2xvZ2luX2FzJykpOwogICAgICAgICAgICAkcGFnZV9kYXRhWydwYWdlX3RpdGxlJ10gICA9ICJCb29raW5ncyI7IC8vZ2V0X3BocmFzZSgkdGhpcy0+c2Vzc2lvbi0+dXNlcmRhdGEoJ2xvZ2luX2FzJykuJ19kYXNoYm9hcmQnKTsKICAgICAgICAgICAgJHBhZ2VfZGF0YVsnYm9hcmQxJ10gICAgICAgPSAkdGhpcy0+ZGItPmdldCgnZmlyc3RfYm9hcmQnKS0+cmVzdWx0X2FycmF5KCk7CiAgICAgICAgICAgIC8vTXVzdCBiZSBsYXN0IHRvIGF2b2lkIHF1ZXJ5IGludGVycnVwdGlvbgogICAgICAgICAgICBpZiAoJF9QT1NUWyd0eXBlJ10gPT0gInNlYXJjaCIpIHsKICAgICAgICAgICAgICAgICR0aGlzLT5kYi0+c2VsZWN0KCcqJyk7CiAgICAgICAgICAgICAgICAkc2VhcmNoX3dvcmQgPSAkdGhpcy0+aW5wdXQtPnBvc3QoJ3NlYXJjaC13b3JkJyk7CiAgICAgICAgICAgICAgICAkZnJvbV9wZXJpb2QgPSBzdHJfcmVwbGFjZSgiLyIsICItIiwgJHRoaXMtPmlucHV0LT5wb3N0KCdmcm9tX3BlcmlvZCcpKTsKICAgICAgICAgICAgICAgICR0b19wZXJpb2QgICA9IHN0cl9yZXBsYWNlKCIvIiwgIi0iLCAkdGhpcy0+aW5wdXQtPnBvc3QoJ3RvX3BlcmlvZCcpKTsKICAgICAgICAgICAgICAgICRzdGF0dXMgICAgICA9ICR0aGlzLT5pbnB1dC0+cG9zdCgnc3RhdHVzJyk7CiAgICAgICAgICAgICAgICAkbmF0dXJlICAgICAgPSAkdGhpcy0+aW5wdXQtPnBvc3QoJ25hdHVyZScpOwogICAgICAgICAgICAgICAgJHJpZGV0eXBlICAgICAgID0gJHRoaXMtPmlucHV0LT5wb3N0KCdyaWRldHlwZSAKICAgICAgICAgICAgICAgICAgICAnKTsKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgaWYgKCRzZWFyY2hfd29yZCAhPSAiIiAmJiAkc2VhcmNoX3dvcmQgIT0gIlNlYXJjaCBrZXl3b3JkIikgewogICAgICAgICAgICAgICAgICAgICR0aGlzLT5kYi0+bGlrZSgnY2xpZW50JywgJHNlYXJjaF93b3JkKS0+b3JfbGlrZSgnZHJpdmVyJywgJHNlYXJjaF93b3JkKS0+b3JfbGlrZSgnb3JpZ2luJywgJHNlYXJjaF93b3JkKS0+b3JfbGlrZSgnZGVzdGluYXRpb24nLCAkc2VhcmNoX3dvcmQpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICR0aGlzLT5kYi0+d2hlcmUoJ3N0YXJ0X3RpbWUgPj0nLCAkZnJvbV9wZXJpb2QpOwogICAgICAgICAgICAgICAgICAgICR0aGlzLT5kYi0+d2hlcmUoJ3N0b3BfdGltZSA8PScsICR0b19wZXJpb2QpOwoKCiAgICAgICAgICAgICAgICBpZiAoJHN0YXR1cyAhPSAiQWxsIHN0YXR1cyIpIHsKICAgICAgICAgICAgICAgICAgICAkdGhpcy0+ZGItPndoZXJlKCdzdGF0dXMnLCAkc3RhdHVzKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGlmICgkbmF0dXJlICE9ICJBbGwgbmF0dXJlIikgewogICAgICAgICAgICAgICAgICAgICR0aGlzLT5kYi0+d2hlcmUoJ25hdHVyZScsICRuYXR1cmUpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgaWYgKCRyaWRldHlwZSAhPSAiQWxsIHR5cGUiKSB7CiAgICAgICAgICAgICAgICAgICAgJHRoaXMtPmRiLT53aGVyZSgncmlkZXR5cGUnLCAkcmlkZXR5cGUpOwogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICRwYWdlX2RhdGFbJ3NlYXJjaGVkX3dvcmQnXSA9ICRzZWFyY2hfd29yZDsKICAgICAgICAgICAgICAgICRwYWdlX2RhdGFbJ3NlYXJjaGVkX2Zyb20nXSA9ICRmcm9tX3BlcmlvZDsKICAgICAgICAgICAgICAgICRwYWdlX2RhdGFbJ3NlYXJjaGVkX3RvJ10gPSAkdG9fcGVyaW9kOwogICAgICAgICAgICAgICAgJHBhZ2VfZGF0YVsnc2VhcmNoZWRfc3RhdHVzJ10gPSAkc3RhdHVzOwogICAgICAgICAgICAgICAgJHBhZ2VfZGF0YVsnc2VhcmNoZWRfbmF0dXJlJ10gPSAkbmF0dXJlOwogICAgICAgICAgICAgICAgJHBhZ2VfZGF0YVsnc2VhcmNoZWRfcmlkZXR5cGUnXSA9ICRyaWRldHlwZTsKICAgICAgICAgICAgfQogICAgICAgICRwYWdlX2RhdGFbJ3JpZGVzJ10gPSAkdGhpcy0+ZGItPmdldCgnaGFuZGlfcmlkZXMnKS0+cmVzdWx0X2FycmF5KCk7CiAgICAgICAgICAgICR0aGlzLT5sb2FkLT52aWV3KCdhZG1pbicsICRwYWdlX2RhdGEpOwogICAgICAgIH0KICAgICAgICAKICAgICAgICBlbHNlIHsKICAgICAgICAgICAgCiAgICAgICAgICAgICR0eXBlID0gJHRoaXMtPmlucHV0LT5wb3N0KCd0eXBlJyk7CiAgICAgICAgICAgICRkYXRhID0gYXJyYXkoCiAgICAgICAgICAgICAgICAiY2xpZW50IiA9PiAkdGhpcy0+aW5wdXQtPnBvc3QoJ2NsaWVudCcpLAogICAgICAgICAgICAgICAgImRyaXZlciIgPT4gJHRoaXMtPmlucHV0LT5wb3N0KCdkcml2ZXInKSwKICAgICAgICAgICAgICAgICJjYXIiID0+ICR0aGlzLT5pbnB1dC0+cG9zdCgnY2FyJyksCiAgICAgICAgICAgICAgICAic3RhcnRfdGltZSIgPT4gc3RyX3JlcGxhY2UoIi8iLCAiLSIsICR0aGlzLT5pbnB1dC0+cG9zdCgnc3RhcnRfdGltZScpKSwKICAgICAgICAgICAgICAgICJzdG9wX3RpbWUiID0+IHN0cl9yZXBsYWNlKCIvIiwgIi0iLCAkdGhpcy0+aW5wdXQtPnBvc3QoJ3N0b3BfdGltZScpKSwKICAgICAgICAgICAgICAgICJuYXR1cmUiID0+ICR0aGlzLT5pbnB1dC0+cG9zdCgnbmF0dXJlJyksCiAgICAgICAgICAgICAgICAicmlkZXR5cGUiID0+ICR0aGlzLT5pbnB1dC0+cG9zdCgncmlkZXR5cGUnKSwKICAgICAgICAgICAgICAgICJzZXJ2aWNlX25hbWUiID0+ICR0aGlzLT5pbnB1dC0+cG9zdCgnc2VydmljZV9uYW1lJyksCiAgICAgICAgICAgICAgICAicGVyc29uX2NvdW50IiA9PiAkdGhpcy0+aW5wdXQtPnBvc3QoJ3BlcnNvbl9jb3VudCcpLAogICAgICAgICAgICAgICAgIndoZWVsY2hhaXIiID0+ICR0aGlzLT5pbnB1dC0+cG9zdCgnd2hlZWxjaGFpcicpLAogICAgICAgICAgICAgICAgIm9yaWdpbiIgPT4gJHRoaXMtPmlucHV0LT5wb3N0KCdvcmlnaW4nKSwKICAgICAgICAgICAgICAgICJkZXN0aW5hdGlvbiIgPT4gJHRoaXMtPmlucHV0LT5wb3N0KCdkZXN0aW5hdGlvbicpLAogICAgICAgICAgICAgICAgIm9yaWdpbl9jb3JkIiA9PiAkdGhpcy0+aW5wdXQtPnBvc3QoJ29yaWdpbl9jb3JkJyksCiAgICAgICAgICAgICAgICAiZGVzdGluYXRpb25fY29yZCIgPT4gJHRoaXMtPmlucHV0LT5wb3N0KCdkZXN0aW5hdGlvbl9jb3JkJyksICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgInN0YXR1cyIgPT4gJHRoaXMtPmlucHV0LT5wb3N0KCdzdGF0dXMnKQogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICk7CiAgICAgICAgICAgIAogICAgICAgICAgICBpZiAoJHR5cGUgPT0gImFkZCIpIHsKICAgICAgICAgICAgICAgICR0aGlzLT5kYi0+aW5zZXJ0KCdoYW5kaV9yaWRlcycsICRkYXRhKTsKICAgICAgICAgICAgfSBlbHNlIGlmICgkdHlwZSA9PSAiZGVsZXRlIikgewogICAgICAgICAgICAgICAgJHRoaXMtPmRiLT53aGVyZSgnaWQnLCAkdGhpcy0+aW5wdXQtPnBvc3QoJ2lkJykpLT5kZWxldGUoJ2hhbmRpX3JpZGVzJyk7CiAgICAgICAgICAgIH0gZWxzZSBpZiAoJHR5cGUgPT0gImVkaXQiKSB7CiAgICAgICAgICAgICAgICAkdGhpcy0+ZGItPndoZXJlKCdpZCcsICR0aGlzLT5pbnB1dC0+cG9zdCgnaWQnKSktPnVwZGF0ZSgnaGFuZGlfcmlkZXMnLCAkZGF0YSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgCiAgICAgICAgICAgIHJlZGlyZWN0KCdhZG1pbi9ib29raW5ncycpOwogICAgICAgIH0KCiAgICB9
/** Bookings **/
function bookings() {
$this->load->library('pagination');
$this->load->library('table');
if ($this->session->userdata('admin_login') != 1)
redirect(base_url() . 'login', 'refresh');
//civility, first/last name, email, phone, hire_date, job, address, city, zip_code, status.
if (empty($_POST) || $_POST['type'] == "search") {
$page_data['page_name'] = 'bookings';
$page_data['cars'] = $this->db->get('handi_cars')->result_array();
$page_data['drivers'] = $this->db->where('job', 'driver')->get('handi_employees')->result_array();
$page_data['clients'] = $this->db->get('handi_clients')->result_array();
$page_data['driver_names'] = $this->driverNames($this->db->where('job', 'driver')->get('handi_employees')->result_array());
$page_data['client_names'] = $this->clientNames($this->db->get('handi_clients')->result_array());
$page_data['user_name'] = get_phrase('Mr. ' . $this->session->userdata('login_as'));
$page_data['page_title'] = "Bookings"; //get_phrase($this->session->userdata('login_as').'_dashboard');
$page_data['board1'] = $this->db->get('first_board')->result_array();
//Must be last to avoid query interruption
if ($_POST['type'] == "search") {
$this->db->select('*');
$search_word = $this->input->post('search-word');
$from_period = str_replace("/", "-", $this->input->post('from_period'));
$to_period = str_replace("/", "-", $this->input->post('to_period'));
$status = $this->input->post('status');
$nature = $this->input->post('nature');
$ridetype = $this->input->post('ridetype
');
if ($search_word != "" && $search_word != "Search keyword") {
$this->db->like('client', $search_word)->or_like('driver', $search_word)->or_like('origin', $search_word)->or_like('destination', $search_word);
}
$this->db->where('start_time >=', $from_period);
$this->db->where('stop_time <=', $to_period);
if ($status != "All status") {
$this->db->where('status', $status);
}
if ($nature != "All nature") {
$this->db->where('nature', $nature);
}
if ($ridetype != "All type") {
$this->db->where('ridetype', $ridetype);
}
$page_data['searched_word'] = $search_word;
$page_data['searched_from'] = $from_period;
$page_data['searched_to'] = $to_period;
$page_data['searched_status'] = $status;
$page_data['searched_nature'] = $nature;
$page_data['searched_ridetype'] = $ridetype;
}
$page_data['rides'] = $this->db->get('handi_rides')->result_array();
$this->load->view('admin', $page_data);
}
else {
$type = $this->input->post('type');
$data = array(
"client" => $this->input->post('client'),
"driver" => $this->input->post('driver'),
"car" => $this->input->post('car'),
"start_time" => str_replace("/", "-", $this->input->post('start_time')),
"stop_time" => str_replace("/", "-", $this->input->post('stop_time')),
"nature" => $this->input->post('nature'),
"ridetype" => $this->input->post('ridetype'),
"service_name" => $this->input->post('service_name'),
"person_count" => $this->input->post('person_count'),
"wheelchair" => $this->input->post('wheelchair'),
"origin" => $this->input->post('origin'),
"destination" => $this->input->post('destination'),
"origin_cord" => $this->input->post('origin_cord'),
"destination_cord" => $this->input->post('destination_cord'),
"status" => $this->input->post('status')
);
if ($type == "add") {
$this->db->insert('handi_rides', $data);
} else if ($type == "delete") {
$this->db->where('id', $this->input->post('id'))->delete('handi_rides');
} else if ($type == "edit") {
$this->db->where('id', $this->input->post('id'))->update('handi_rides', $data);
}
redirect('admin/bookings');
}
}