Subversion Repositories SmartDukaan

Rev

Rev 17881 | Rev 17978 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 17881 Rev 17947
Line 973... Line 973...
973
		}		
973
		}		
974
		return $links[$categoryId];		
974
		return $links[$categoryId];		
975
	}
975
	}
976
	
976
	
977
	public function cartdetails(){
977
	public function cartdetails(){
978
		
-
 
-
 
978
		if ($this->request->is('post')) {
979
		$dataGiven = json_decode($this->request->data['cart_details']);
979
			$dataGiven = json_decode($this->request->data['cart_details']);
980
		$pincode = -1;
980
			$pincode = -1;
981
		$userId = $this->request->query('user_id');
981
			$userId = $this->request->query('user_id');
982
		
982
			
983
		if(isset($this->request->data['pincode'])){
983
			if(isset($this->request->data['pincode'])){
984
			$pincodeArgs = explode("_", $this->request->data['pincode']);
984
				$pincodeArgs = explode("_", $this->request->data['pincode']);
985
			$pincode = strval($pincodeArgs[1]);
985
				$pincode = strval($pincodeArgs[1]);
986
		}
986
			}
987
		if($pincode==-1 && isset($_COOKIE['s_pincode'])){
987
			if($pincode==-1 && isset($_COOKIE['s_pincode'])){
988
			$pincode = base64_decode($_COOKIE['s_pincode']);
988
				$pincode = base64_decode($_COOKIE['s_pincode']);
989
		}
989
			}
990
		$suserId = 0;
990
			$suserId = 0;
991
		$scartId = 0;
991
			$scartId = 0;
992
		$semailId = '';
992
			$semailId = '';
993
		
993
			
994
		if(!(isset($_COOKIE['s_cart']))) {
994
			if(!(isset($_COOKIE['s_cart']))) {
995
			$this->loadModel('UserAccount');
995
				$this->loadModel('UserAccount');
996
			$options = array('conditions'=>array('user_id'=>$userId,'account_type'=>'cartId'),'recursive'=>-1,'fields'=>'account_key');
996
				$options = array('conditions'=>array('user_id'=>$userId,'account_type'=>'cartId'),'recursive'=>-1,'fields'=>'account_key');
997
			$cartId = $this->UserAccount->find('first',$options);
997
				$cartId = $this->UserAccount->find('first',$options);
998
			$scartId = $cartId['UserAccount']['account_key'];
998
				$scartId = $cartId['UserAccount']['account_key'];
999
			setcookie('s_cart', base64_encode($scartId), -1, '/');
999
				setcookie('s_cart', base64_encode($scartId), -1, '/');
1000
		}else{
1000
			}else{
1001
			$scartId = base64_decode($_COOKIE['s_cart']);
1001
				$scartId = base64_decode($_COOKIE['s_cart']);
1002
		}
1002
			}
1003
		if(!(isset($_COOKIE['s_id']))){
1003
			if(!(isset($_COOKIE['s_id']))){
1004
			$this->loadModel('UserAccount');
1004
				$this->loadModel('UserAccount');
1005
			$options = array('conditions'=>array('user_id'=>$userId,'account_type'=>'saholic'),'recursive'=>-1,'fields'=>'account_key');
1005
				$options = array('conditions'=>array('user_id'=>$userId,'account_type'=>'saholic'),'recursive'=>-1,'fields'=>'account_key');
1006
			$userAccount = $this->UserAccount->find('first',$options);
1006
				$userAccount = $this->UserAccount->find('first',$options);
1007
			$suserId = $userAccount['UserAccount']['account_key'];
1007
				$suserId = $userAccount['UserAccount']['account_key'];
1008
			setcookie('s_id', base64_encode($suserId), -1, '/');
1008
				setcookie('s_id', base64_encode($suserId), -1, '/');
-
 
1009
			}else{
-
 
1010
				$suserId = base64_decode($_COOKIE['s_id']);
-
 
1011
			}
-
 
1012
			if(!(isset($_COOKIE['s_email']))){
-
 
1013
				$this->loadModel('User');
-
 
1014
				$options = array('contain'=>array('UserAccount'), 'conditions'=>array('User.id'=>$userId),'fields'=>array('username','email'),'recursive'=>-1);
-
 
1015
				$user = $this->User->find('first',$options);
-
 
1016
				$semailId = $user['User']['email'];
-
 
1017
				setcookie('s_email', base64_encode($user['User']['email']), -1, '/');
-
 
1018
			}else{
-
 
1019
				$semailId = base64_decode($_COOKIE['s_email']);
-
 
1020
			}
-
 
1021
			
-
 
1022
			$cartItems = array();
-
 
1023
			
-
 
1024
			foreach ($dataGiven->cartItems as $key=>$obj) {
-
 
1025
			    $itemobj = array(
-
 
1026
						'itemId'   => $key,
-
 
1027
			    		'quantity' => $obj->quantity);
-
 
1028
				array_push($cartItems, $itemobj);
-
 
1029
			}
-
 
1030
			$postData = array(
-
 
1031
						'cartItems'	=>	$cartItems
-
 
1032
						);
-
 
1033
						
-
 
1034
			$params = array(
-
 
1035
					'cartMap' => urlencode(json_encode($postData)));
-
 
1036
			
-
 
1037
			$this->layout = 'cartinnerpages';
-
 
1038
			$url = Configure::read('saholicapihost').'cart!validateCart?isLoggedIn=true&privateDealUser=true&userId='.$suserId.'&id='.$scartId.'&email='.$semailId;
-
 
1039
			if($pincode!='-1'){
-
 
1040
				$url = $url.'&pinCode='.$pincode;
-
 
1041
			}
-
 
1042
			
-
 
1043
			$cartskus = $this->post_cartinfo_request($url,$params);
-
 
1044
			if(isset($cartskus['response']) && $cartskus['response']=='error'){
-
 
1045
				if (strpos($this->referer(), '&error=1') !== false){
-
 
1046
					$this->redirect($this->referer());
-
 
1047
				}else{
-
 
1048
					$this->redirect($this->referer().'&error=1');
-
 
1049
				}
-
 
1050
				#$this->redirect(array('controller' => 'deals', 'action' => '?user_id='.$userId.'&error=1'));
-
 
1051
			}else{
-
 
1052
				if(strpos($cartskus['estimateString'],"Can't ship here")===false){
-
 
1053
					setcookie('s_pincode', base64_encode($cartskus['pincode']), -1, '/');
-
 
1054
				}
-
 
1055
				$this->set(compact('cartskus'));
-
 
1056
			}
1009
		}else{
1057
		}else{
1010
			$suserId = base64_decode($_COOKIE['s_id']);
1058
			$suserId = base64_decode($_COOKIE['s_id']);
1011
		}
-
 
1012
		if(!(isset($_COOKIE['s_email']))){
-
 
1013
			$this->loadModel('User');
-
 
1014
			$options = array('contain'=>array('UserAccount'), 'conditions'=>array('User.id'=>$userId),'fields'=>array('username','email'),'recursive'=>-1);
-
 
1015
			$user = $this->User->find('first',$options);
-
 
1016
			$semailId = $user['User']['email'];
1059
			$scartId = base64_decode($_COOKIE['s_cart']);
1017
			setcookie('s_email', base64_encode($user['User']['email']), -1, '/');
-
 
1018
		}else{
-
 
1019
			$semailId = base64_decode($_COOKIE['s_email']);
1060
			$semailId = base64_decode($_COOKIE['s_email']);
1020
		}
1061
			
1021
		
-
 
1022
		$cartItems = array();
1062
			$pincode = -1;
1023
		
1063
			
1024
		foreach ($dataGiven->cartItems as $key=>$obj) {
1064
			if($pincode==-1 && isset($_COOKIE['s_pincode'])){
1025
		    $itemobj = array(
1065
				$pincode = base64_decode($_COOKIE['s_pincode']);
1026
					'itemId'   => $key,
1066
			}
1027
		    		'quantity' => $obj->quantity);
-
 
1028
			array_push($cartItems, $itemobj);
-
 
1029
		}
1067
			
-
 
1068
			$cartItems = array();
1030
		$postData = array(
1069
			$postData = array(
1031
					'cartItems'	=>	$cartItems
1070
					'cartItems'	=>	$cartItems
1032
					);
1071
					);
1033
					
1072
					
1034
		$params = array(
1073
			$params = array(
1035
				'cartMap' => urlencode(json_encode($postData)));
1074
					'cartMap' => urlencode(json_encode($postData)));
1036
		
-
 
1037
		$this->layout = 'cartinnerpages';
1075
			$this->layout = 'cartinnerpages';
1038
		$url = Configure::read('saholicapihost').'cart!validateCart?isLoggedIn=true&privateDealUser=true&userId='.$suserId.'&id='.$scartId.'&email='.$semailId;
1076
			$url = Configure::read('saholicapihost').'cart!validateCart?isLoggedIn=true&privateDealUser=true&userId='.$suserId.'&id='.$scartId.'&email='.$semailId;
1039
		if($pincode!='-1'){
1077
			if($pincode!='-1'){
1040
			$url = $url.'&pinCode='.$pincode;
1078
				$url = $url.'&pinCode='.$pincode;
1041
		}
-
 
1042
		
-
 
1043
		$cartskus = $this->post_cartinfo_request($url,$params);
-
 
1044
		if(isset($cartskus['response']) && $cartskus['response']=='error'){
-
 
1045
			if (strpos($this->referer(), '&error=1') !== false){
-
 
1046
				$this->redirect($this->referer());
-
 
1047
			}else{
-
 
1048
				$this->redirect($this->referer().'&error=1');
-
 
1049
			}
1079
			}
-
 
1080
			$cartskus = $this->post_cartinfo_request($url,$params);
-
 
1081
			
-
 
1082
			if(isset($cartskus['response']) && $cartskus['response']=='error'){
-
 
1083
				if (strpos($this->referer(), '&error=1') !== false){
-
 
1084
					$this->redirect($this->referer());
-
 
1085
				}else{
1050
			#$this->redirect(array('controller' => 'deals', 'action' => '?user_id='.$userId.'&error=1'));
1086
					$this->redirect($this->referer().'&error=1');
-
 
1087
				}
1051
		}else{
1088
			}else{
1052
			if(strpos($cartskus['estimateString'],"Can't ship here")===false){
1089
				if(strpos($cartskus['estimateString'],"Can't ship here")===false){
1053
				setcookie('s_pincode', base64_encode($cartskus['pincode']), -1, '/');
1090
					setcookie('s_pincode', base64_encode($cartskus['pincode']), -1, '/');
-
 
1091
				}
-
 
1092
				$this->set(compact('cartskus'));
1054
			}
1093
			}
1055
			$this->set(compact('cartskus'));
-
 
1056
		}
1094
		}
1057
		#$this->render('/Users/cartdetailsa');
-
 
1058
		
1095
		
1059
	}
1096
	}
1060
}
1097
}