HEX
Server: Apache/2.4.41 (Amazon) OpenSSL/1.0.2k-fips PHP/5.6.40
System: Linux ip-172-31-40-18 4.14.146-93.123.amzn1.x86_64 #1 SMP Tue Sep 24 00:45:23 UTC 2019 x86_64
User: apache (48)
PHP: 5.6.40
Disabled: NONE
Upload Files
File: //var/www/html/pmw24/pmw_live_testing/OLD_Root_BAK/application/controllers/admin/Car.php
<?php 
defined('BASEPATH') OR exit('No direct script access allowed');

class Car extends MY_Controller {
	public function __construct() {
		parent::__construct();
		$this->redirect_guest();
		$this->admin=$this->session->userdata('admin');		
		$this->load->model('admin/mcar');
	}
	
	public function index() { 				
		$this->_load_list_view();		
	}
	
	private function _load_list_view() {
		$data['admin'] = $this->admin;
		$data['content'] = 'admin/car/list';		
		$this->load->view('admin/layouts/index', $data);
	}
	
	public function all_content_list(){
		$list = $this->mcar->get_datatables();
		$data = array();
        $no = $_POST['start'];
		$i=1;
		foreach ($list as $person) {
			$row = array();	
			$row[]=$i;			
			$row[] = $person->car_no;
			$row[] = $person->company_name;
			$row[] = $person->make;
			$row[] = $person->model_no;
			$row[] = $person->body;
			$row[] = date('d/m/Y',strtotime($person->compliance_date));
			$row[] = $person->vin;
			$row[] = $person->engine;
			$row[] = $person->fuel;
			$row[] = $person->network;
			$row[] = $person->colour;
			$row[] = $person->silver_service;
			$row[] = $person->camera;
			$row[] = date('d/m/Y',strtotime($person->registration_expiry_date));
			$row[] = date('d/m/Y',strtotime($person->registration_due_month));
			$row[] = $person->plate_type;
			$row[] = $person->car_status;
			$row[] = $person->terminal_no;
			
			$row[] = '<a class="cstm_view" id="view" style="padding-left:5px" href="javascript:void(0)" title="'.$person->car_id.'"><i class="glyphicon glyphicon-eye-open"></i></a>';

			$admin = $this->admin;
			$CI =& get_instance();
			$CI->db->select('*');
			$CI->db->from('role_menu');	
			$CI->db->join('menu', 'menu.menu_id = role_menu.menu_id', 'left');
			$CI->db->where('role_id',$admin['role_id']);
			$CI->db->where('parent_id',24);					
			$query=$CI->db->get();
			$menus = $query->result_array();		
			
			$status_result = $this->searcharray('Status', menu_name, $menus);
			
			$edit_result = $this->searcharray('Edit', menu_name, $menus);

			if(!empty($status_result)){
			
				$row[] = ($person->status==1?'<a class="cstm_view_status btn btn-success" id="active" href="javascript:void(0)" title="'.$person->car_id.'"><span class="glyphicon glyphicon-ok"></span></a>':'<a class="cstm_view_status btn btn-danger" id="inactive" href="javascript:void(0)" title="'.$person->car_id.'"><span class="glyphicon glyphicon-remove"></span></a>');
			}
			
			if(!empty($edit_result)){	
				$row[] = '<a href="'.base_url('admin/car/details/'.$person->car_id).'" title="Edit" class="btn btn-info"><span class="glyphicon glyphicon-pencil"></span></a></a>';
			}
            $data[] = $row;
			$i++;
        }
		
		$output = array(
                        "draw" => $_POST['draw'],
                        "recordsTotal" => $this->mcar->count_all(),
                        "recordsFiltered" => $this->mcar->count_filtered(),
                        "data" => $data,
                );
        echo json_encode($output);
	}
	
	private function searcharray($value, $key, $array) {
	   foreach ($array as $k => $val) {
		   if ($val[$key] == $value) {
			   return $val;
		   }
	   }
	   return null;
	}
	
	public function active()
	{
		$condition['car_id']=$this->input->post('car_id');
		$udata['status'] = 1;
		$this->mcar->active($condition,$udata);
		$response=array('status'=>1,'message'=>'Success');		
		echo json_encode($response);
	}
	
	public function inactive()
	{
		$condition['car_id']=$this->input->post('car_id');
		$udata['status'] = 0;
		$this->mcar->active($condition,$udata);
		$response=array('status'=>1,'message'=>'Success');		
		echo json_encode($response);
	}
	
	public function add()
	{
		$this->_load_add_view();
	}
	
	private function _load_add_view(){		
		$data['content']='admin/car/add';
		$this->load->view('admin/layouts/index',$data);
	}
	
	public function add_content()
	{
		if($this->input->post()){
			$this->form_validation->set_rules('registration_no','Car No','required|is_unique[car.car_no]');			
			$this->form_validation->set_rules('company_name','Model No','required');
			$this->form_validation->set_rules('make','Make','required');
			$this->form_validation->set_rules('model_no','Model No','required');
			$this->form_validation->set_rules('body','Body','required');
			$this->form_validation->set_rules('compliance_date','Compliance Date','required');
			$this->form_validation->set_rules('vin','Vin','required');
			$this->form_validation->set_rules('engine','Engine','required');
			$this->form_validation->set_rules('colour','Colour','required');
			$this->form_validation->set_rules('fuel','Fuel','required');
			$this->form_validation->set_rules('network','Network','required');
			$this->form_validation->set_rules('silver_service','Silver Service','required');
			$this->form_validation->set_rules('camera','Camera','required');
			$this->form_validation->set_rules('registration_expiry_date','Registration Expiry Date','required');
			$this->form_validation->set_rules('registration_due_month','Registration Due Month','required');
			$this->form_validation->set_rules('plate_type','Plate Type','required');
			$this->form_validation->set_rules('status','Status','required');
			$this->form_validation->set_rules('terminal_no','Terminal No','required');
			
			if($this->form_validation->run()==FALSE){
				$this->_load_add_view();
			}else{
				$data['car_no'] = $this->input->post('registration_no');				
				$data['company_name'] = $this->input->post('company_name');
				$data['make'] = $this->input->post('make');
				$data['model_no'] = $this->input->post('model_no');
				$data['body'] = $this->input->post('body');
				//$data['compliance_date'] = $this->input->post('compliance_date');
				$compliance_date = $this->input->post('compliance_date');
					$compliance_date_array = explode('/',$compliance_date);
					$newCompliancDate = $compliance_date_array[2]."-".$compliance_date_array[1]."-".$compliance_date_array[0];
				$data['compliance_date'] = $newCompliancDate;
				$data['vin'] = $this->input->post('vin');
				$data['engine'] = $this->input->post('engine');
				$data['colour'] = $this->input->post('colour');
				$data['fuel'] = $this->input->post('fuel');
				$data['network'] = $this->input->post('network');
				$data['silver_service'] = $this->input->post('silver_service');
				$data['camera'] = $this->input->post('camera');
				
				$registration_expiry_date = $this->input->post('registration_expiry_date');
				$registration_expiry_date_array = explode('/',$registration_expiry_date);
				$newRegistrationExpiryDate = $registration_expiry_date_array[2]."-".$registration_expiry_date_array[1]."-".$registration_expiry_date_array[0];
				$data['registration_expiry_date'] = $newRegistrationExpiryDate;
					
				$registration_due_month = $this->input->post('registration_due_month');
				$registration_due_month_array = explode('/',$registration_due_month);
				$newRegistrationdueMonth = $registration_due_month_array[2]."-".$registration_due_month_array[1]."-".$registration_due_month_array[0];					
				$data['registration_due_month'] = $newRegistrationdueMonth;
				
				$data['plate_type'] = $this->input->post('plate_type');
				$data['car_status'] = $this->input->post('status');
				$data['terminal_no'] = $this->input->post('terminal_no');
				$data['remarks'] = $this->input->post('remarks');
				if($this->input->post('owner_type') != '')
				{
					$data['owner_type'] = $this->input->post('owner_type');
					$data['driver_dc'] = $this->input->post('driver_dc');
					$data['name'] = $this->input->post('name');
					$data['email'] = $this->input->post('email');
					$data['unit_no'] = $this->input->post('unit_no');
					$data['street_no'] = $this->input->post('street_no');
					$data['street'] = $this->input->post('street');
					$data['suburb'] = $this->input->post('suburb');
					$data['post_code'] = $this->input->post('post_code');
					$data['contact_no'] = $this->input->post('contact_no');
					
					$dob = $this->input->post('dob');
					if($dob != ''){
						$dob_array = explode('/',$dob);
					    $newDob = $dob_array[2]."-".$dob_array[1]."-".$dob_array[0];
					    $data['dob'] = $newDob;
					}
					else{
						$data['dob'] = '';
					}
					
						
				}else{
					$data['owner_type'] = "";
					$data['driver_dc'] = "";
					$data['name'] = "";
					$data['email'] = "";
					$data['unit_no'] = "";
					$data['street'] = "";
					$data['suburb'] = "";
					$data['post_code'] = "";
					$data['contact_no'] = "";
					$data['dob'] = "";
				}
				$data['status'] = 1; 
				$data['date_of_creation'] = date('Y-m-d H:i:s');
				$this->mcar->add($data);
				
				$this->session->set_flashdata('success_msg','Car added successfully');
				redirect('admin/car/content');
			}	
			
		}
	}
	
	public function edit($car_id){		
		$data['cms']=$this->mcar->get_details($car_id);

		//echo '<pre>'; print_r($data['cms']); echo '</pre>'; die;
		
		if(empty($data['cms'])){
			$this->_load_list_view();
		}else{			
			$this->_load_details_view($data);
		}
	}
	
	private function _load_details_view($parms){		
		$data['cms']=$parms['cms'];	
		$data['content'] = 'admin/car/detail';
		$this->load->view('admin/layouts/index', $data);
	}
	
	public function update(){
		if($this->input->post()){
			$car_id = $this->input->post('car_id');
			$this->form_validation->set_rules('registration_no','Car No','required');	
			$this->form_validation->set_rules('company_name','Model No','required');
			$this->form_validation->set_rules('make','Make','required');
			$this->form_validation->set_rules('model_no','Model No','required');
			$this->form_validation->set_rules('body','Body','required');
			$this->form_validation->set_rules('compliance_date','Compliance Date','required');
			$this->form_validation->set_rules('vin','Vin','required');
			$this->form_validation->set_rules('engine','Engine','required');
			$this->form_validation->set_rules('colour','Colour','required');
			$this->form_validation->set_rules('fuel','Fuel','required');
			$this->form_validation->set_rules('network','Network','required');
			$this->form_validation->set_rules('silver_service','Silver Service','required');
			$this->form_validation->set_rules('camera','Camera','required');
			$this->form_validation->set_rules('registration_expiry_date','Registration Expiry Date','required');
			$this->form_validation->set_rules('registration_due_month','Registration Due Month','required');
			$this->form_validation->set_rules('plate_type','Plate Type','required');
			$this->form_validation->set_rules('status','Status','required');
			$this->form_validation->set_rules('terminal_no','Terminal No','required');
			
			if($this->form_validation->run()==FALSE){
				$data['cms']=$this->mcar->get_details($car_id);
				$this->_load_details_view($data);
			}else{				
				$car_no = $this->input->post('registration_no');
				$condition = array("car_id"=>$car_id);
				$car = $this->mcar->getRow('car',$condition);
				
				if($car['car_no'] == $car_no)
				{
					$udata['car_no'] = $car_no;			
					$udata['company_name'] = $this->input->post('company_name');
					$udata['make'] = $this->input->post('make');
					$udata['model_no'] = $this->input->post('model_no');
					$udata['body'] = $this->input->post('body');
					
					$compliance_date = $this->input->post('compliance_date');
					$compliance_date_array = explode('/',$compliance_date);
					$newCompliancDate = $compliance_date_array[2]."-".$compliance_date_array[1]."-".$compliance_date_array[0];
					$udata['compliance_date'] = $newCompliancDate;
				
					$udata['vin'] = $this->input->post('vin');
					$udata['engine'] = $this->input->post('engine');
					$udata['colour'] = $this->input->post('colour');
					$udata['fuel'] = $this->input->post('fuel');
					$udata['network'] = $this->input->post('network');
					$udata['silver_service'] = $this->input->post('silver_service');
					$udata['camera'] = $this->input->post('camera');
					
					$registration_expiry_date = $this->input->post('registration_expiry_date');
					$registration_expiry_date_array = explode('/',$registration_expiry_date);
					$newRegistrationExpiryDate = $registration_expiry_date_array[2]."-".$registration_expiry_date_array[1]."-".$registration_expiry_date_array[0];
					$udata['registration_expiry_date'] = $newRegistrationExpiryDate;
					
					$registration_due_month = $this->input->post('registration_due_month');
					$registration_due_month_array = explode('/',$registration_due_month);
					$newRegistrationdueMonth = $registration_due_month_array[2]."-".$registration_due_month_array[1]."-".$registration_due_month_array[0];					
					$udata['registration_due_month'] = $newRegistrationdueMonth;
					
					$udata['plate_type'] = $this->input->post('plate_type');
					$udata['car_status'] = $this->input->post('status');
					$udata['terminal_no'] = $this->input->post('terminal_no');
					$udata['remarks'] = $this->input->post('remarks');
					if($this->input->post('owner_type') != '')
					{
						$udata['owner_type'] = $this->input->post('owner_type');
						$udata['driver_dc'] = $this->input->post('driver_dc');
						$udata['name'] = $this->input->post('name');
						$udata['email'] = $this->input->post('email');
						//$udata['address'] = $this->input->post('address');
						$udata['unit_no'] = $this->input->post('unit_no');
						$udata['street_no'] = $this->input->post('street_no');
					    $udata['street'] = $this->input->post('street');
					    $udata['suburb'] = $this->input->post('suburb');
					    $udata['post_code'] = $this->input->post('post_code');
						$udata['contact_no'] = $this->input->post('contact_no');
						
						$dob = $this->input->post('dob');
						if($dob != ''){
							$dob_array = explode('/',$dob);
						    $newDob = $dob_array[2]."-".$dob_array[1]."-".$dob_array[0];
						    $udata['dob'] = $newDob;
						}
						else{
							$udata['dob'] = '';
						}
						
					}else{
						$udata['owner_type'] = "";
						$udata['driver_dc'] = "";
						$udata['name'] = "";
						$udata['email'] = "";
						//$udata['address'] = "";
						$udata['unit_no'] = "";
					    $udata['street'] = "";
					    $udata['suburb'] = "";
					    $udata['post_code'] = "";
						$udata['contact_no'] = "";
						$udata['dob'] = "";
					}
					$udata['date_of_update'] = date('Y-m-d H:i:s');					
					$this->mcar->update($condition,$udata);					
					$this->session->set_flashdata('success_msg','Car updated successfully');
					redirect('admin/car');
				}else{
					$conditionCarDetails = array("car_no"=>$car_no);					
					$carDetail = $this->mcar->getRow('car',$conditionCarDetails);					
					
					if(empty($carDetail))
					{						
						$udata['car_no'] = $car_no;
						$udata['company_name'] = $this->input->post('company_name');
						$udata['make'] = $this->input->post('make');
						$udata['model_no'] = $this->input->post('model_no');
						$udata['body'] = $this->input->post('body');
						$udata['compliance_date'] = $this->input->post('compliance_date');
						$udata['vin'] = $this->input->post('vin');
						$udata['engine'] = $this->input->post('engine');
						$udata['colour'] = $this->input->post('colour');
						$udata['fuel'] = $this->input->post('colour');
						$udata['network'] = $this->input->post('network');
						$udata['silver_service'] = $this->input->post('silver_service');
						$udata['camera'] = $this->input->post('camera');
						$udata['registration_expiry_date'] = $this->input->post('registration_expiry_date');
						$udata['registration_due_month'] = $this->input->post('registration_due_month');
						$udata['plate_type'] = $this->input->post('plate_type');
						$udata['car_status'] = $this->input->post('status');
						$udata['terminal_no'] = $this->input->post('terminal_no');
						if($this->input->post('owner_type') != '')
						{
							$udata['owner_type'] = $this->input->post('owner_type');
							$udata['name'] = $this->input->post('name');
							$udata['email'] = $this->input->post('email');
							//$udata['address'] = $this->input->post('address');
							$udata['unit_no'] = $this->input->post('unit_no');
						    $udata['street'] = $this->input->post('street');
						    $udata['suburb'] = $this->input->post('suburb');
						    $udata['post_code'] = $this->input->post('post_code');
							$udata['contact_no'] = $this->input->post('contact_no');
						}else{
							$udata['owner_type'] = "";
							$udata['name'] = "";
							$udata['email'] = "";
							//$udata['address'] = "";
							$udata['unit_no'] = "";
						    $udata['street'] = "";
						    $udata['suburb'] = "";
						    $udata['post_code'] = "";
							$udata['contact_no'] = "";
							$udata['contact_no'] = "";
						}
						$udata['date_of_update'] = date('Y-m-d H:i:s');						
						$this->mcar->update($condition,$udata);					
						$this->session->set_flashdata('success_msg','Car updated successfully');
						redirect('admin/car');
					}else{
						$this->session->set_flashdata('error_msg','Car No Already Exsits');
						redirect('admin/car');
					}
				}
			}
		}
	}
	
	public function all_details(){
		$car_id = $this->input->post('car_id');		
		$result = $this->mcar->get_details($car_id);		
		echo json_encode($result);
	}
}