MOON
Server: Apache
System: Linux nserver.cafsindia.com 4.18.0-553.104.1.lve.el8.x86_64 #1 SMP Tue Feb 10 20:07:30 UTC 2026 x86_64
User: cafsindia (1002)
PHP: 8.2.30
Disabled: NONE
Upload Files
File: //home/cafsindia/allyindian_com/sbltt/application/controllers/Rate.php
<?php if ( ! defined('BASEPATH')) exit('No direct script is allowed');
require_once("Secure_Controller.php");
class Rate  extends Secure_Controller
{
 
	public function __construct()
	{
		parent::__construct('rate');
		$this->load->model('Rate_model');
	}
	public function index()
	{
		if(!$this->Appconfig->isAppvalid())
		{
			redirect('config');
		}
		$data['table_headers']=$this->xss_clean(get_rate_headers());
		$this->load->view('rate/manage',$data);
	}
	public function search(){
		$search=$this->input->get('search');
		$limit=$this->input->get('limit');
		$offset=$this->input->get('offset');
		$sort=$this->input->get('sort');
		$order=$this->input->get('order');
		$rate=$this->Rate_model->search($search,$limit,$offset,$sort,$order);

		$TotalRows=$this->Rate_model->get_found_rows($search);
		$DataRows=array();

		foreach ($rate->result() as $person) 
		{	
			$DataRows[]=get_rate_datarows($person,$this);
		}
		$DataRows=$this->xss_clean($DataRows);
		echo json_encode(array('total'=>$TotalRows,'rows'=>$DataRows));
	}

	public function view($rate_id=-1)
	{
		$info=$this->Rate_model->get_info($rate_id);

		foreach (get_object_vars($info) as $property => $value)
		{
			$info->$property = $this->xss_clean($value);
		}
		$data['rate']=$info;      
		
		$vehicle_type[""] = "--Select Vehicle Type--";
		foreach($this->Rate_model->get_vehicle_type()->result_array() as $row){
		    $vehicle_type[$this->xss_clean($row['veh_type_id'])] = $this->xss_clean($row['veh_type']);
		}		
		$data['vehicle_type'] = $vehicle_type;      
		
		$trip_type[""] = "--Select Trip Type--";
		foreach($this->Rate_model->get_trip_type()->result_array() as $row){
		    $trip_type[$this->xss_clean($row['trip_type_id'])] = $this->xss_clean($row['trip_type_name']);
		}		
		$data['trip_type'] = $trip_type;
		
		$rate_vendor[""] = "--Select Vendor--";
		foreach($this->Rate_model->get_vendor()->result_array() as $row){
		    $rate_vendor[$this->xss_clean($row['vendor_id'])] = $this->xss_clean($row['vendor_name']);
		}		
		$data['rate_vendor'] = $rate_vendor;
		
		$this->load->view("rate/form",$data);
	}
	/*
	Inserts/updates a rate
	*/
	public function save($rate_id = -1){
		$rate_data = array(
			'rate_id'    		 => $this->input->post('rate_id'),
			'rate_vendor'        => $this->input->post('rate_vendor'),
			'rate_trip_type'     => $this->input->post('rate_trip_type'),
			'rate_vehicle_type'  => $this->input->post('rate_vehicle_type'),
			'upto_hrs'           => $this->input->post('upto_hrs'),
			'upto_km'            => $this->input->post('upto_km'),
			'upto_amt'  		 => $this->input->post('upto_amt'),
			'extra_km_amt'  	 => $this->input->post('extra_km_amt'),
			'extra_amt'  	     => $this->input->post('extra_amt'),
			'created_by'  		 => $this->session->userdata('emp_id'),
			'created_date' 		 => date("Y-m-d h:i:s"),
		);

		if($this->Rate_model->save_rate($rate_data, $rate_id)){
			$rate_data = $this->xss_clean($rate_data);
			//New rate
			if($rate_id == -1){
				echo json_encode(array('success' => TRUE, 'message' => $this->lang->line('rate_successful_adding').' '.
								$rate_data['rate_vehicle_type'], 'id' => $rate_data['rate_id']));
			}else {
				//Existing rates
				echo json_encode(array('success' => TRUE, 'message' => $this->lang->line('rate_successful_updating').' '.
								$rate_data['rate_vehicle_type'], 'id' => $rate_id));
			}
		}else{
			//failure
			$rate_data = $this->xss_clean($rate_data);
			echo json_encode(array('success' => FALSE, 'message' => $this->lang->line('rate_error_adding_updating').' '.
							$rate_data['rate_vehicle_type'], 'id' => -1));
		}

	}

	public function get_row($rate_ids)
	{
		$rate_infos = $this->Rate_model->get_multiple_info($rate_ids);

		$result = array();
		foreach($rate_infos as $item_info)
		{
			$result[$item_info->rate_id] = $this->xss_clean(get_item_data_row($item_info, $this));
		}

		echo json_encode($result);
	}

	/*
	This deletes rates from the rates table
	*/
	public function delete(){
		$rate_to_delete = $this->xss_clean($this->input->post('ids'));

		if($this->Rate_model->delete_list($rate_to_delete))
		{
			echo json_encode(array('success' => TRUE, 'message' => $this->lang->line('rate_successful_deleted').' '.
							count($rate_to_delete).' '.$this->lang->line('rate_one_or_multiple')));
		}
		else
		{
			echo json_encode(array('success' => FALSE, 'message' => $this->lang->line('rate_cannot_be_deleted')));
		}
	}
}
?>