const addpurchaseCarouselOption = { dots:true, nav:false, slideBy:'page', responsive:{ 0:{ items : 2, stagePadding: 25 }, 481:{ items : 3 }, 960:{ items : 4 }, 1023:{ items : 5 } }, } function prodCarousel(){ var slide = $(".sildeBox") if($(window).width() < 769){ slide.trigger("destroy.owl.carousel") }else{ slide.owlCarousel(addpurchaseCarouselOption); } } $(document).ready(function () { $("#Main_Form").fromsAuth({type:'NONE'}); prodCarousel() $(window).on("resize", prodCarousel) var _window = $(window); var change = 0; var moreview = false; var upflag = $("#Update_Flag").val(); if(upflag == '1'){ updatePage(); } $(document).on("change", "input[name='Invo_Mod']", function(){ updatePage(); }) //刪除商品 $("#Main_Content").on('click','.prod_del',function(){ if(confirm("確定刪除嗎?")){ $(".loading").show(); $.ajax({ url:"/shopcart/ajax/ajax_cart_del.php", type:"POST", cache:false, dataType:'json', data:{ID:$(this).attr("sid"),Act:$(this).attr("act"),Ch_Flag:$(this).attr("ch")}, success:function(d){ if(d.Status == 'RET_SUCCESS'){ //DATALAYER埋設 if(d.FBQ) { eval(d.FBQ); } //GA4 if(d.GA4 && typeof gtag == 'function') { for(var key in d.GA4) { gtag("event","remove_from_cart",{ "items":d.GA4 }); } } alert('刪除成功'); updatePage(); }else{ alert('資料庫忙線中'); } } }); } }); //下次買 $("#Main_Content").on('click','.prod_next',function(){ if(confirm("確定加入願望清單嗎?")){ $(".loading").show(); $.ajax({ url:"/shopcart/ajax/ajax_cart_next.php", type:"POST", cache:false, data:{ID:$(this).attr("sid"),Act:$(this).attr("act"),Ch_Flag:$(this).attr("ch")}, dataType: 'json', success:function(d){ switch(d.Msg){ case "RET_SUCCESS": if(d.FBQ) { eval(d.FBQ); } if(d.GA4 && typeof gtag == 'function') { gtag("event","add_to_wishlist",{ "items":d.GA4 }); } alert('加入願望清單成功'); updatePage(); break; case "RET_NO_MEMBER": alert('請先登入會員'); window.location.href = '/member-login'; break; default: alert('資料庫忙線中'); break; } } }); } }); $(document).on("click", '.amount-btn:not(.disabled)', function(){ let _this = $(this), amountInput = _this.parents(".amount-input-group").find(".amount-input"), originVal = amountInput.val(), val = amountInput.val(), allVal = 0, //全部列表中同商品的總數 sid = $(this).attr("sid"), type= $(this).data("type"), max = amountInput.attr("max") || 5 $("#Shopcart_List").find("."+type+" .amount-input[sid="+sid+"]").each(function(){ allVal += parseInt($(this).val()); }); //鎖住按鈕避免快速點擊 _this.addClass("disabled") if(_this.is(".amount-plus")){ //增加 val++ if(allVal > max){ val = originVal } }else{ //減少 val-- if(val < 1){ val = 1 } } amountInput.val(val) amountInput.trigger("change") //監聽解鎖事件 $(window).one("amountBtnUnlock", function(){ _this.removeClass("disabled") }) }) //修改商品數量 $("#Main_Content").on('change','.prod_amount',function(){ $(".loading").show(); var sid = $(this).attr("sid"), type= $(this).data("type"), max = $(this).attr("max"), val = 0; $("#Shopcart_List").find("."+type+" .amount-input[sid="+sid+"]").each(function(){ val += parseInt($(this).val()); }); if(val > max){ val = max alert("商品庫存不足"); } $.ajax({ url:"/shopcart/ajax/ajax_cart_edit.php", type:"POST", cache:false, data:{ID:$(this).attr("sid"),Act:$(this).attr("act"),Ch_Flag:$(this).attr("ch"),Amount:val}, dataType:'json', success:function(d){ d.Status = $.trim(d.Status); switch(d.Status){ case "RET_SUCCESS": //alert("加入購物車成功"); updatePage(); break; case "RET_NO_MEMBER_NO": alert("欲購買紅利兌換商品請先登入會員並完成會員認證"); break; case "RET_RBONUS_OUT": alert("紅利不足"); break; case "RET_ERROR": alert("資料庫忙線中"); break; case "RET_PROD_ERROR": alert("商品已下架"); break; case "RET_NO_PROD": alert("請選擇商品"); break; case "RET_Oversea_Error": alert("無法加入購物車,如另外選購其他國家商品,請您分開結帳"); break; case "RET_STOCK_ERROR": alert("商品庫存不足"); break; case "RET_OVER_SIT_MAX": alert("超過定期定額商品限購量"); break; case "RET_PROD_LIMIT": alert("挑選的商品超過限購量"); updatePage(); break; default: alert("資料庫忙線中"); break; }; } }).always(function(){ $(window).trigger("amountBtnUnlock") }) }); //加購商品 $("#Main_Content").on('click','.addButton',function(){ $(".loading").show(); let _this = $(this) $.ajax({ url:"/shopcart/ajax/ajax_cart_add.php", type:"POST", cache:false, data:{ID:_this.attr("sid"),Amount:_this.prev(".text-center").find(".num-select").val()}, dataType: 'json', success:function(d){ switch(d.Status){ case "RET_SUCCESS": if(d.FBQ) { eval(d.FBQ); } if(d.GA4 && typeof gtag == 'function') { for(var key in d.GA4) { gtag("event","add_to_cart",{ "items":d.GA4 }); } } let prodID = _this.parents(".productBox").attr("id") updatePage("",function(){ $("#"+prodID).append(`
已經成功加入到購物車
` ) setTimeout(function(){ $("#"+prodID).find(".prod-cover").remove() }, 5000) }); //alert("加入購物車成功"); break; case "RET_NO_MEMBER_NO": alert("欲購買紅利兌換商品請先登入會員並完成會員認證"); break; case "RET_RBONUS_OUT": alert("紅利不足"); break; case "RET_ERROR": alert("資料庫忙線中"); break; case "RET_PROD_ERROR": alert("商品已下架"); break; case "RET_NO_PROD": alert("請選擇商品"); break; case "RET_Oversea_Error": alert("無法加入購物車,如另外選購其他國家商品,請您分開結帳"); break; case "RET_STOCK_ERROR": alert("商品庫存不足"); break; case "RET_OVER_SIT_MAX": alert("超過定期定額商品限購量"); break; default: alert("資料庫忙線中"); break; }; } }); }); //取消優惠折扣 $("#Main_Content").on('click','.money-button',function(e){ var $data = 'cate='+$(this).attr("cate")+'&value='; if($(this).attr("class").indexOf("usd") != -1){ e.preventDefault(); updatePage($data); } }); //驗證 $("#Main_Content").on('click','#send_sms_bt',function(e){ $.post('/member/ajax/ajax_send_sms_code_cart-p.php', {Cellphone: $("#Buy_Cellphone").val()}, function(h){ if(h == 'OK'){ // $("#Buy_Cellphone").attr('disabled', true); alert('簡訊已經發送至您的手機了'); $("#send_sms_bt").html('重新發送驗證碼'); $("#sms_submit").show(); } else if(h == 'RET_REPLY'){ alert('請勿重覆發送簡訊, 請等侯1分鐘'); } else if(h == 'RET_CELLPHONE_REPLY'){ alert('此手機號碼已經被認證綁定,請由會員登入後做FB綁定,謝謝。'); } else if(h == 'RET_OVER'){ alert('您的簡訊發送已達上限,請聯繫客服協助處理'); } else if(h == 'RET_ERROR_DATABASE'){ alert('資料庫忙線中'); } else{ alert('請先登入會員'); } }, 'html'); }); //優惠折扣送出 $("#Main_Content").on('click','.money-send',function(){ if($(this).attr("cate") == 'RBonus' || $(this).attr("cate") == 'MemberMoney'){ var $data = 'cate='+$(this).attr("cate")+'&value='+$(this).parents("p").find("input").val(); } else{ var $data = 'cate='+$(this).attr("cate")+'&value='+$(this).parents("p").prev("p").find("input").val(); } updatePage($data); }); //購物金勾選 $("#Main_Content").on('click',"input[name='use_bonus']",function(){ var $data = 'cate=Bonus&value='+$(this).val(); updatePage($data); }); //抵用券勾選 $("#Main_Content").on('click',"input[name='usable_no']",function(){ $("#usable_no").val($(this).val()); }); //選擇配送國家 $("#Main_Content").on('click',"input[name='Country_Type']",function(){ switch($(this).val()){ case "1": case "2": var $data = 'countryType='+$(this).val(); break; case "3": var $data = 'countryType=3&country='+$("#Country").val(); break; } updatePage($data); }); $("#Main_Content").on('change',"#Country",function(){ var $data = 'countryType=3&country='+$(this).val(); updatePage($data); }); //選擇運送方式 $("#Main_Content").on('click',"input[name='Ship_Type']",function(){ var $data = 'shipType='+$(this).val(); //GA4 if(typeof gtag == 'function') { gtag("event","add_shipping_info",{ "shipping_tier":$(this).data('name') }); } updatePage($data); }); $("#Main_Content").on("click","#Choose_Store", function(){ updatePage(); window.location.href = '/shopcart/e_returns/emap-p.php?url=shopcart/&type='+$(this).attr("type")+'&coll='+$(this).attr("coll"); }); //選擇付款方式 $("#Main_Content").on('change',"select[name='Pay_Type']",function(){ var $data = 'payType='+$(this).val(); if($(this).val() == 5)$data += '&countryType=1'; //GA4 if(typeof gtag == 'function') { gtag("event","add_payment_info",{ "payment_type":$(this).find("option:selected").data('name') }); } updatePage($data); }); //選擇定期定額天數 $("#Main_Content").on('change',".Sit_Frequency",function(){ var $data = 'Sit_Frequency='+$('.Sit_Frequency').val(); updatePage($data); }); //選擇定期定額次數 $("#Main_Content").on('change',".Sit_Period",function(){ var $data = 'Sit_Period='+$('.Sit_Period').val(); updatePage($data); }); //保價勾選 $("#Main_Content").on('click',"input[name='Premiu']",function(){ var $data = 'premiu='+$(this).val(); updatePage($data); }); //國家、縣市、地區 $("#Main_Content").on('change',".Country",function(){ //$(this).next(".City").load('/ajax/ajax_country.php',{type:'city',id:$(this).val()}).next(".Area").html(''); var $data = 'buy_country='+$(this).val(); updatePage($data); }); $("#Main_Content").on('change',".City",function(){ $(this).next(".Area").load('/ajax/ajax_country.php',{type:'area',id:$(this).val()}); }); //同訂購人資料 $("#Main_Content").on('click',"#Same_Button",function(){ var $data = 'same=1'; updatePage($data); }); //同訂購人資料 $("#Main_Content").on('click',"#Invo_Same_Button",function(){ if($("#Invo_Same_Button").prop("checked")){ var Send_Address = $("#Send_Address").val() || ''; var Send_Area_ID = $("#Send_Area_ID option:selected").attr("name") || ''; var Send_City_ID = $("#Send_City_ID option:selected").attr("name") || ''; $("#Invo_Address").val(Send_City_ID+Send_Area_ID+Send_Address); } }); //從通訊錄中挑選 $("#Main_Content").on('click',".Send_Book",function(){ var $data = 'send_book='+$(this).attr("sid"); updatePage($data); }); //發票載具 $("#Main_Content").on('change',"#CarrierType",function(){ updatePage(); }); //送出 $("#Main_Content").on('click',"#Form_Submit",function(){ var gift = $("#Left_Gift").val(); if(gift > '0'){ alert('尚可挑選'+gift+'件贈品,請挑選後再送出購物車。'); }else{ $("#Main_Form").submit(); } }); //到貨日期資料同步 $("#Main_Content").on('click',"input[name='Send_Week2']",function(){ $("#Send_Week").val($(this).val()); }); $("#Main_Content").on('change',"#Send_Week",function(){ $("#Send_Week2"+$(this).val()).prop("checked",true); }); //到貨時間資料同步 $("#Main_Content").on('click',"input[name='Send_Time2']",function(){ $("#Send_Time").val($(this).val()); }); $("#Main_Content").on('change',"#Send_Time",function(){ $("#Send_Time2"+$(this).val()).prop("checked",true); }); //雲端發票資料同步 $("#Main_Content").on('click',"input[name='Invo_Mod']",function(){ $("#Invo_Mod2").val($(this).val()); invoCheck($(this).val()); }); $("#Main_Content").on('change',"#Invo_Mod2",function(){ $("#changeradio-0"+$(this).val()).prop("checked",true); invoCheck($(this).val()); }); $(document).on('change',"select[name=Buy_Country]",function(){ if($("select[name=Buy_Country]").val() == 1){ if($("#Buy_Cellphone").attr('fun') == 'checkCellphone'){ $("#Buy_Cellphone").attr('fun','checkCellphoneTawian'); } } }); }); ;(function($){ //展開客製化select $(document).on("click", ".radio-select-now", function(){ let wrapper = $(this).parents(".radio-select-wrapper") $(".radio-select-wrapper").not(wrapper).removeClass("in-open") wrapper.toggleClass("in-open") }) //點其他地方關閉 $(document).on("click", function(e){ if($(e.target).closest(".radio-select-wrapper").length <= 0){ $(".radio-select-wrapper").removeClass("in-open") } }) //連動原本的select $(document).on("click", ".radio-select-item", function(){ let _this = $(this), item = _this.parents(".btn-item"), select = item.find("select") select.val(_this.data("val")).trigger("change") _this.parents(".radio-select-wrapper").removeClass("in-open") item.find(".radio-select-now").text(select.find("option:selected").text()) }) //發票區塊連動 $(document).on("change", "input[name='Invo_Mod']", function(){ let val = $(this).val() $(".radio-btn-group.theme-invoice-child").removeClass("in-active") $(".radio-btn-group.theme-invoice-child[data-group='" + val + "']").addClass("in-active") }) })($) function invoCheck($no){ for($i=1;$i<=3;$i++){ if($i != $no){ $(".changebox0"+$i).find("input,select").attr("fun",""); }else{ if($i == 1 && $("#CarrierType").val() == 1){ $(".changebox0"+$i).find("select").attr("fun","checkNull"); }else{ $(".changebox0"+$i).find("input,select").attr("fun","checkNull"); } } } }; function updatePage($data, callback = null){ $(".loading").show(); var $member = ""; var $invo = ""; $(".card_content").each(function(){ $member += '&'+$(this).attr("name")+'='+$(this).val(); }); $("#Buy_Data").find("input:text,input:checked,select,input:password").each(function(){ $member += '&'+$(this).attr("name")+'='+$(this).val(); }); $("#Send_Data").find("input:text,input:hidden,input:checked,select,textarea").each(function(){ $member += '&'+$(this).attr("name")+'='+$(this).val(); }); $("#Invo_Data").find("input:text,input:checked,select").each(function(){ $invo += '&'+$(this).attr("name")+'='+$(this).val(); }); $.ajax({ url:"/shopcart/ajax/ajax_cart_update.php", type:"POST", cache:false, async:false, data:$data+$member+$invo, success:function(d){ $("#Main_Content").html(d); $("#Main_Form").fromsAuth({type:'NONE'}); var bill = JSON.parse(base64_decode($("#Bill_Update").val())); for(s in bill){ $("#Bill_"+s).html(bill[s]); } if($("#Coupon_Msg").val()){ alert($("#Coupon_Msg").val()); } $("#Shop_Cart_Total>.num").html($("#Shop_Cart_Total_Update").val()); prodCarousel() //商品圖延遲載入 $('.productImg img').lazyload({ effect : 'fadeIn', failure_limit : 10, placeholder:'/upload_files/fonlego-rwd/images/common/loading.svg', }); //修改國旗圖片 $.post('/ajax/ajax_change_country.php', {Type:'update',ID: $(this).attr('sid')}, function(h){ if(h){ $("#This_Country_Pic").attr("src","/upload_files/fonlego-rwd/website/"+h); } }, 'html'); $(".loading").fadeOut(); var file_Obj = new prod_file({ amountBox:'num-select', specUrl: '/shopcart/ajax/ajax_get_item.php', }); file_Obj.init(); if(typeof callback === 'function'){ callback() } } }); }