Blame | Last modification | View Log | RSS feed
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');class Cart extends MY_Controller {public $layoutName ='';function __construct() {// Call the CI_controller constructorparent::__construct();// $admin = $this->session->userdata('admin');// if(!isset($admin) || empty($admin)) {// redirect(base_url().'authorize');// }$this->output->set_header("Expires: Tue, 01 Jan 2000 00:00:00 GMT");$this->output->set_header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");$this->output->set_header("Cache-Control: no-store, no-cache, must-revalidate, max-age=0");$this->output->set_header("Cache-Control: post-check=0, pre-check=0", false);$this->output->set_header("Pragma: no-cache");$this->layout->setlayout('layout/layout_main');$this->load->model('cart_model');$this->layoutName= $this->layout->getLayout();$this->layoutName =substr($this->layoutName , 0, strrpos($this->layoutName , "/")).'/';//print_r($this->session->userdata);}public function index(){$authorized = $this->session->userdata('authorized');//standard array$configdata = $this->config->item('cart');$cachemodule = array('header','footer');$configdata = getCache($configdata,$cachemodule);$data = array();if(isset($authorized) && !empty($authorized)){$_GET['userId'] = $authorized['Id'];$_GET['Id'] = $authorized['cartId'];if(isset($authorized['isPrivateDealUser']) && !empty($authorized['isPrivateDealUser'])) {$_GET['privateDealUser'] = 'true';}$isAutoApplicationOff = $this->session->userdata('isAutoApplicationOff');$_GET['autoApplicationOff'] = 'false';if(isset($isAutoApplicationOff) && !empty($isAutoApplicationOff)) {$_GET['autoApplicationOff'] = 'true';}if($authorized['isLoggedIn'] == 1){$_GET['isLoggedIn'] = 'true';}elseif(isset($authorized['isLoggedIn']) && empty($authorized['isLoggedIn'])) {$_GET['isLoggedIn'] = 'false';}unset($configdata['module']['response'][0]);$data['response']=$this->cart_model->getCart($this->input->get(),$this->input->post(),$configdata['module']);if(isset($data['response']['response']['carts'][0]->lines))$cartCount = sizeof($data['response']['response']['carts'][0]->lines);$authorized = $this->session->userdata('authorized');if(isset($authorized) && !empty($authorized)){$newValues = $authorized;$newValues['totalItems'] = $cartCount;$this->session->set_userdata('authorized',$newValues);}$this->lessphp->object()->ccompile('assets/css/cart.less','assets/css/cart.css');$data['stylesheet'] = 'cart.css';if(isset($cachemodule) and !empty($cachemodule) && !isset($api)){foreach($cachemodule as $cm){if(isset($configdata[$cm]) and !empty($configdata[$cm])){$data['response'][$cm]=$configdata[$cm];}}}setCache($configdata['module'],$cachemodule,$data['response']);$this->layout->view('cart/cart_view',$data);}else{unset($configdata['module']['response'][1]);$data['response']=$this->cart_model->getCart($this->input->get(),$this->input->post(),$configdata['module']);$this->lessphp->object()->ccompile('assets/css/cart.less','assets/css/cart.css');$data['stylesheet'] = 'cart.css';if(isset($cachemodule) and !empty($cachemodule) && !isset($api)){foreach($cachemodule as $cm){if(isset($configdata[$cm]) and !empty($configdata[$cm])){$data['response'][$cm]=$configdata[$cm];}}}setCache($configdata['module'],$cachemodule,$data['response']);$this->layout->view('cart/carts',$data);}}public function add($id=null,$email=null,$itemname){$response=array();$authorized = $this->session->userdata('authorized');$isAutoApplicationOff = $this->session->userdata('isAutoApplicationOff');if(isset($id) and !empty($id) and is_numeric($id)){//if user logged-in$_POST['itemId'] = $id;}else{redirect(base_url());}if(isset($authorized) && !empty($authorized)){$_POST['userId'] = $authorized['Id'];$_POST['Id'] = $authorized['cartId'];if($authorized['isLoggedIn'] == 1){$_POST['isLoggedIn'] = 'true';}elseif((isset($authorized['isLoggedIn']) && empty($authorized['isLoggedIn']))) {$_POST['isLoggedIn'] = 'false';}}else{$response = $this->anonymous();if(isset($response['authorized']) && !empty($response['authorized'])){$authorized = $response['authorized'];$_POST['userId'] = $authorized['Id'];$_POST['Id'] = $authorized['cartId'];if(isset($authorized['isLoggedIn']) && empty($authorized['isLoggedIn'])){$_POST['isLoggedIn'] = 'false';}}}if(isset($email) && $email != 'null'){$_POST['email'] = $email;}$response=$this->cart_model->getCart($this->input->get(),$this->input->post(),$this->config->item('cart_add'));if(isset($response['response']['addcart'][0]->message) && !empty($response['response']['addcart'][0]->message)){if(isset($itemname) && $itemname != 'null'){if(!isset($email) || $email == 'null'){$productinfo = 'productinfo'.$itemname;deleteFileCache($productinfo);}}echo json_encode($response['response']);}elseif(isset($response['response']['addcart'][0]->redirectUrl) && $response['response']['addcart'][0]->redirectUrl == 'cart'){$authorized = $this->session->userdata('authorized');if(isset($authorized) && !empty($authorized)){$cartCount = $authorized['totalItems'];$newValues = $authorized;$newValues['totalItems'] = $cartCount+1;$this->session->set_userdata('authorized',$newValues);}echo json_encode($response['response']);//redirect(base_url().strtolower(__CLASS__),'refresh');}elseif(isset($response['response']['addcart'][0]->redirectUrl) && $response['response']['addcart'][0]->redirectUrl != 'cart'){echo json_encode($response['response']);}}public function update($id=null,$qty=null){$response=array();$authorized = $this->session->userdata('authorized');if(isset($id) and !empty($id)){//if user logged-in$_POST['itemId'] = $id;}if(isset($qty) and !empty($qty)){//if user logged-in$_POST['quantity'] = $qty;}if(isset($authorized) && !empty($authorized)){$_POST['userId'] = $authorized['Id'];$_POST['_method'] = 'put';$cartId = $authorized['cartId'];if($authorized['isLoggedIn'] == 1){$_POST['isLoggedIn'] = 'true';}elseif(isset($authorized['isLoggedIn']) && empty($authorized['isLoggedIn'])) {$_POST['isLoggedIn'] = 'false';}}$response=$this->cart_model->getCart($this->input->get(),$this->input->post(),$this->config->item('cart_update'),$cartId);redirect(base_url().strtolower(__CLASS__));}public function delete($id=null){$authorized = $this->session->userdata('authorized');if(isset($id) and !empty($id) and is_numeric($id)){//if user logged-in$_POST['itemId'] = $id;}else{redirect(base_url());}if(isset($authorized) && !empty($authorized)){$_POST['userId'] = $authorized['Id'];$_POST['_method'] = 'delete';$cartId = $authorized['cartId'];if($authorized['isLoggedIn'] == 1){$_POST['isLoggedIn'] = 'true';}elseif(isset($authorized['isLoggedIn']) && empty($authorized['isLoggedIn'])) {$_POST['isLoggedIn'] = 'false';}}$response=array();if(isset($id) and !empty($id)){$response=$this->cart_model->getCart($this->input->get(),$this->input->post(),$this->config->item('cart_delete'),$cartId);if(isset($response['response']['deletecart'][0]->lines)) {$cartCount = sizeof($response['response']['deletecart'][0]->lines);$authorized = $this->session->userdata('authorized');if(isset($authorized) && !empty($authorized)){$newValues = $authorized;$newValues['totalItems'] = $cartCount;$this->session->set_userdata('authorized',$newValues);redirect(base_url().strtolower(__CLASS__));}}else{redirect(base_url().strtolower(__CLASS__));}}else{$response['response']['msg'] = 'Invalid Parameter!';redirect(base_url().strtolower(__CLASS__));}redirect(base_url().strtolower(__CLASS__));}public function coupon($code=null){$response=array();$authorized = $this->session->userdata('authorized');if(isset($authorized) && !empty($authorized)){$_GET['userId'] = $authorized['Id'];$_GET['action'] = 'applycoupon';$cartId = $authorized['cartId'];if($authorized['isLoggedIn'] == 1){$_GET['isLoggedIn'] = 'true';}elseif(isset($authorized['isLoggedIn']) && empty($authorized['isLoggedIn'])) {$_GET['isLoggedIn'] = 'false';}}if(isset($code) and !empty($code)){//if user logged-in$_GET['coupon_code'] = $code;//TODO: Move to a config file maybeif($code=='saholicdeals') {$this->session->set_userdata('isAutoApplicationOff','false');}//$d=$this->input->get();}$response=$this->cart_model->getCart($this->input->get(),$this->input->post(),$this->config->item('cart_coupon'),$cartId);$dealTextArray = array();if(!empty($response)){foreach($response['response']['cartcoupon'][0]->lines AS $line) {$dealTextArray[$line->itemId] = $line->dealText;}}$result = $response['response']['cartcoupon'][0];if(isset($result->couponCode) && !empty($result->couponCode)){$couponCode = $result->couponCode;}else{$couponCode = '';}if($result->discountedPrice==0){$res = array('totalPrice'=>$result->totalPrice,'discountedPrice'=>$result->totalPrice,'message'=>$result->message,'couponCode'=>$couponCode);} else {$res = array('totalPrice'=>$result->totalPrice,'discountedPrice'=>$result->discountedPrice,'message'=>$result->message,'couponCode'=>$couponCode);}$res['dealTextArray']=$dealTextArray;echo json_encode($res);}public function couponClear($code=null){$response=array();$authorized = $this->session->userdata('authorized');$this->session->set_userdata('isAutoApplicationOff','true');if(isset($authorized) && !empty($authorized)){$_GET['userId'] = $authorized['Id'];$_GET['action'] = 'removecoupon';$cartId = $authorized['cartId'];if($authorized['isLoggedIn'] == 1){$_GET['isLoggedIn'] = 'true';}elseif(isset($authorized['isLoggedIn']) && empty($authorized['isLoggedIn'])) {$_GET['isLoggedIn'] = 'false';}}if(isset($code) and !empty($code)){//if user logged-in$_GET['coupon_code'] = $code;//$d=$this->input->get();}//print_r($this->config->item('cart_couponclear'));$response=$this->cart_model->getCart($this->input->get(),$this->input->post(),$this->config->item('cart_couponclear'),$cartId);$result = $response['response']['cartcouponclear'][0];$res = array('totalPrice'=>$result->totalPrice,'discountedPrice'=>$result->discountedPrice,'message'=>$result->message);echo json_encode($res);}public function cartCount(){$response=array();$authorized = $this->session->userdata('authorized');$shoppingId =$this->session->userdata('shoppingId');if((isset($authorized) and !empty($authorized['id'])) || ((isset($shoppingId) && !empty($shoppingId)))){$response=$this->cart_model->getCart($this->input->get(),$this->input->post(),$this->config->item('cart_count'));if(isset($response['response']['cartcount'][0])){$result = $response['response']['cartcount'][0];echo $result;}else{$result = 0;echo $result;}}else{$result = 0;echo $result;}}public function insure($itemId,$toInsure,$insuranceType){$authorized = $this->session->userdata('authorized');if(isset($authorized) && !empty($authorized)){$_GET['userId'] = $authorized['Id'];$_GET['Id'] = $authorized['cartId'];if($authorized['isLoggedIn'] == 1){$_GET['isLoggedIn'] = 'true';}elseif(isset($authorized['isLoggedIn']) && empty($authorized['isLoggedIn'])) {$_GET['isLoggedIn'] = 'false';}}$_GET['itemId'] = $itemId;$_GET['toInsure'] = $toInsure;$_GET['insuranceType'] = $insuranceType;$response=$this->cart_model->getCart($this->input->get(),$this->input->post(),$this->config->item('cart_insure'));$insurance = $response['response']['cartinsure'][0]->insuranceResult;if(strcasecmp($insurance, 'success') == 0){//$status[0] = true;$res = array('status'=>true);echo json_encode($res);}elseif(strcasecmp($insurance, 'failure') == 0) {$status[0] = false;echo json_encode($status);}}//improve functinalities using ajaxpublic function anonymous(){$url = $this->config->item('anonymous');$url = $url['url'];$url = $this->config->item('curl_base_url').$url;$params = array();$this->mcurl->add_call('anonymous','get',$url,$params);$responses = $this->mcurl->execute($url);$response = array();if(isset($responses['anonymous']['response']) && !empty($responses['anonymous']['response'])){$data = json_decode($responses['anonymous']['response']);$childarray=array();$childarray['Id']=$data->userId;$childarray['isLoggedIn']=$data->isLoggedIn;$childarray['pincode']=$data->pincode;$childarray['email']=$data->email;$childarray['totalItems']=$data->totalItems;$childarray['cartId']=$data->cartId;$response['authorized']=$childarray;$this->session->set_userdata('authorized',$response['authorized']);}return $response;}public function delete_ajax(){}}/* End of file welcome.php *//* Location: ./application/controllers/welcome.php */