// 主選單開關
;(function($) {
    $('body').on('click', '.menu-toggle', function(e) {
    	e.preventDefault()
    	$('body').toggleClass('menu-active');
    })
})($)

// 滑動定位
;(function($) {
    $(window).on('scroll', function(e) {
    	e.preventDefault()

    	if($('body').scrollTop()) {
    		$('body').addClass('is-sticky')
    	} else {
    		$('body').removeClass('is-sticky')
    	}
    })
})($)

// 點擊滑動動畫
;(function($) {
    const slideTarget = $('body, html')
    const slideDuration = 750

    $('#gotop').on('click', function(e) {
    	e.preventDefault()
    	slideTarget.animate({
    		scrollTop: 0
    	}, slideDuration);
    })

    $('body').on('click', '.main-menu .link', function(e) {
    	e.preventDefault()

    	const slideOrigin = $(this).attr('href')
    	const slideOffset = (($(slideOrigin).length)? $(slideOrigin).offset().top: 0) - $('.header').height()
    	slideTarget.removeClass('menu-active').animate({
    		scrollTop: slideOffset
    	}, slideDuration);
    })
})($)

// 倒數計時
;(function($) {
	if($("#CountDown_Box").length) {
	    let num = parseInt($("#CountDown_Box").attr("second"),10);
	    const _this = $("#CountDown_Box");
	    if(num > 0) {
	        setInterval(function() {
	            num--;
	            if(num <= 0) {
	                window.location.reload();
	            }

	            var day = Math.floor(num/(3600*24)),
	                hour = Math.floor((num - (day*3600*24) )/3600),
	                min = Math.floor((num - (day*3600*24) - (hour*3600) )/60 ),
	                second = num - (day*3600*24) - (hour*3600) - (min*60),
	                pad = '00';
	            if(day > 0) {
	                _this.find(".timer").eq(0).html(day);
	                _this.find(".timer").eq(1).html(pad.substring(hour.toString().length)+hour);
	                _this.find(".timer").eq(2).html(pad.substring(min.toString().length)+min);
	                _this.find(".timer").eq(3).html(pad.substring(second.toString().length)+second);
	            } else {
	                _this.find(".Date_Box").remove();
	                _this.find(".timerbox").html(_this.find(".timerbox").html().replace('天',''));

	                _this.find(".timer").eq(0).html(pad.substring(hour.toString().length)+hour);
	                _this.find(".timer").eq(1).html(pad.substring(min.toString().length)+min);
	                _this.find(".timer").eq(2).html(pad.substring(second.toString().length)+second);
	            }
	        },1000);
	    } else {
	    	_this.remove()
	    }
	}
})($)

// 商品資料頁籤切換
;(function($) {
    $('body').on('click', '.tag-box .title-h2', function(e) {
        e.preventDefault()

        const tagTarget = $(this).attr('for')
        $(this).addClass('in-active')
               .siblings('.title-h2').removeClass('in-active')
        $(this).parents('.tag-box')
               .find('.' + tagTarget).addClass('in-active')
               .siblings('.itembox').removeClass('in-active')
    })
})($)






// ==========================================================
//  快速購物跳窗規格選擇
// ==========================================================
;(function($) {
    $('body').on('click', '.choice-item, .checkbox-item', function(e) {
        $(this).addClass('in-choice').siblings('.choice-item, .checkbox-item').removeClass('in-choice')
    })
})($)




// ==========================================================
//  關閉快速購物跳窗
// ==========================================================
;(function($) {
    //關閉跳窗
    $("body").on('click','.selectPopupBox',function(e){
        if(e.target === e.currentTarget || $(e.target).hasClass('popup-closer') || $(e.target).hasClass('add_to_cart')) {
            // e.preventDefault()
            $('body').removeClass('overflow-hidden')
            $(".selectPopupBox").removeClass('is-show');
        }
    });
})($)



$(function() {
    $("#Main_Form").fromsAuth({
        type:'NONE',
        callafter:function(){
            if(typeof ga == 'function')
            {
                var obj = JSON.parse($("#GA_Data").text());
                for(var key in obj)
                {
                    ga('ec:addProduct',obj[key]);
                }
                ga('ec:setAction','checkout',{
                    'step':4
                });
                ga('send','event','購物車','確認訂單');
            }
            return true;
        }
    });
    $("#Member_Form").fromsAuth();

    $("#Main_Content").on('click', '#step2', function() {
        var pass = $(this).attr('Pass');
        if(pass==2){
            // alert("您尚未登入會員，請先登入會員。");
            // location.href='/quaplar/member-login/';
        }
        var sh = $("#s2 .section-wrapper").height() + 100;
        $("html,body").animate({scrollTop: $('#s2').offset().top - sh}, 800);
    });

    $("#Main_Content").on('click', '#step3', function() {
        var sh2 = $("#s3").height();
         if($(window).width() <= 480){
            $("html,body").animate({scrollTop: $('#s3').offset().top - 70}, 800);
        } else {
            $("html,body").animate({scrollTop: $('#s3').offset().top}, 800);
        }
    });

    $(document).off('click.getdata','#productlist .button-full')
    $(document).on('click.getdata','#productlist .button-full',function(){
        let _this = $(this)
        if(!$(this).is('.button-cant')){
            var $class = $(this).attr("class"),
                type = '1';
            if($class == 'button-add')
            {
                type = '2';
            }
            $('.popupbg').empty()
            $('.popupbg').addClass('is-show');
            $('.popupbg').attr("type",type);
            add = _this.data("add");
            atype = _this.data("atype");
            page_shop_id = $("#Page_Shop_ID").val();
            if(_this.attr("sid")){
                $.ajax({
                    type: "POST",
                    url: "/quickshop/ajax/ajax_get_product_data.php",
                    data: $.extend({}, _this.data(), {
                        "page_shop_id":page_shop_id,
                        "add":add,
                        "sid": _this.attr("sid")
                    }),
                    dataType:'JSON',
                    success: function(res){
                        if(res.html){
                            $('.popupbg').html(res.html);
                            /* 小圖hover效果及切換功能 */
                            if($(".popupbg .moreview .picitem ").length > 1){
                                $(".popupbg .productView .moreview").owlCarousel({
                                    loop:false,
                                    responsive:{
                                        0:{
                                            items : 3,
                                          },
                                        768:{
                                            items : 5,
                                        }
                                    },
                                    nav : true,
                                    dots: false,
                                    navText: ['', ''],
                                }).on('mouseleave','.owl-stage-outer', function() {
                                    var box = $(this).parents(".product-detail");
                                    box.find(".productView .item-box").removeAttr('style');
                                })
                                .on('click','.owl-item', function() {
                                    var now = $(this).index(),
                                        box = $(this).parents(".product-detail");
                                    box.find(".productView .owl-item").not(this).find('.picitem').removeClass('now');
                                    $(this).find('.picitem').addClass('now');
                                    box.find(".productView .item-box").removeClass('now').eq(now).addClass('now');
                                })
                                .on('mouseenter','.owl-item', function() {
                                    var now = $(this).index(),
                                        box = $(this).parents(".product-detail");
                                    box.find(".productView .item-box").css('display','none').eq(now).css('display','flex');
                                });
                            }else{
                                $(".productView .moreview")
                                .on('mouseleave', function() {
                                    var box = $(this).parents(".product-detail");
                                    box.find(".productView .item-box").removeAttr('style');
                                })
                                .on('click','.picitem', function() {
                                    var now = $(this).index(),
                                        box = $(this).parents(".product-detail");

                                    box.find(".productView .picitem").removeClass('now');
                                    $(this).addClass('now');
                                    box.find(".productView .item-box").removeClass('now').eq(now).addClass('now');
                                })
                                .on('mouseenter','.picitem', function() {
                                    var now = $(this).index(),
                                        box = $(this).parents(".product-detail");

                                    box.find(".productView .item-box").css('display','none').eq(now).css('display','block');
                                });
                            }
                        }
                    },
                    error: function(){
                        alert('網路連線過慢，網頁請重新整理');
                    }
                })
            }
        }

    });
    $("#Main_Content").on('click','.informButton',function(){
        $("#informID").val($(this).attr("sid"));
        $('.emailPopup').css('display','flex');
    });
    $("#Main_Content").on('click','.emailPopup .close',function(){
        $('.emailPopup').css('display','none');
    });

    $("#Main_Content").on('click','.loginButton',function(){
        $('body').addClass('memberOnPop')
        $('.memberPopup').css('display','flex');
    });
    $("#Main_Content").on('click','.memberPopup .close',function(){
        $('body').removeClass('memberOnPop')
        $('.memberPopup').css('display','none');
    });
    $("#Change_Pic").click(function(e){
        $("#Checkspan").load('/ajax/ajax_get_check_pic.php',{change:1});
    });

    $("#Main_Content").on('focusin','.input-text',function(){
        $(this).next('.text-title').addClass('now');
    });
    $("#Main_Content").on('focusout','.input-text',function(){
        if($(this).val()==''){
            $(this).next('.text-title').removeClass('now');
        }
    });

    $('.gotop').on('click',function(){
        $("html,body").animate({scrollTop: 0},800);
    });




});

//刪除購物車
$("#Main_Content").on('click','.product-del',function() {
    $.ajax({
        url:"/quickshop/ajax/ajax_del_cart.php",
        type:"POST",
        cache:false,
        data:{ID:$(this).attr("sid"), Page_Shop_ID:$("#Page_Shop_ID").val()},
        dataType:'json',
        error:function(d){
            alert('網路連線過慢，網頁請重新整理');
        },
        success:function(d){
            if(d.Status == 'RET_SUCCESS')
            {
                if(d.GA && typeof ga == 'function')
                {
                    for(var key in d.GA)
                    {
                        ga('ec:addProduct',d.GA[key]);
                    }
                    ga('ec:setAction','remove');
                    ga('send','event','購物車','移除購物車');
                }
                if(d.GA4 && typeof gtag == 'function')
                {
                    for(var key in d.GA4)
                    {
                        gtag("event","remove_from_cart",{
                            'send_to':d.GA4_conversion,
                            "items":d.GA4
                        });
                    }
                }
                alert(_jsLang.刪除成功);
                updatePage();
            }
            else
            {
                alert(_jsLang.資料庫忙線中);
            }
        }
    });

    setTimeout(function () {
        $('.emptyCartPrompt').fadeOut()
    }, 5000)
});

//修改數量
$("#Main_Content").on('click','.Prod_Plus',function(){
    var Amount = parseInt($(this).prev(".Prod_Amount").val())+1,
        Stock = parseInt($(this).attr("max"));
    if(Amount > 100 || Amount > Stock)
    {
        return false;
    }
    $(this).prev(".Prod_Amount").val(Amount).change();
});
$("#Main_Content").on('click','.Prod_Minus',function(){
    var Amount = parseInt($(this).next(".Prod_Amount").val())-1;
    if(Amount < 1)
    {
        return false;
    }
    $(this).next(".Prod_Amount").val(Amount).change();
});

$("#Main_Content").on('change','.Prod_Amount',function(){
    var ID = $(this).parents(".listbox-item").find(".product-del").attr("sid"),
        Amount = $(this).val(),
        Input = $(this);

    if(Amount > 100)
    {
        Amount = 100;
    }
    if(Amount < 1)
    {
        Amount = 1;
    }

    $.ajax({
        url:"/quickshop/ajax/ajax_change_cart.php",
        type:"POST",
        cache:false,
        data:{ID:ID,Amount:Amount,Page_Shop_ID:$("#Page_Shop_ID").val()},
        error:function(d){
            alert('網路連線過慢，網頁請重新整理');
        },
        success:function(d){
            var d = d.trim();
            switch(d){
                case "RET_SUCCESS":
                    updatePage();
                    break;
                case "RET_NO_MEMBER_NO":
                    alert(_jsLang.欲購買森粉元兌換商品請先登入會員並完成會員認證);
                    break;
                case "RET_RBONUS_OUT":
                    alert(_jsLang.森粉元不足);
                    break;
                case "RET_ERROR":
                    alert(_jsLang.資料庫忙線中);
                    break;
                case "RET_PROD_ERROR":
                    alert(_jsLang商品已下架);
                    break;
                case "RET_NO_PROD":
                    alert(_jsLang.請選擇商品);
                    break;
                case "RET_STOCK_ERROR":
                    alert(_jsLang.商品庫存不足);
                    break;
                case "RET_LIMIT_ERROR":
                    alert(_jsLang.數量超過限購量);
                    break;
				case "RET_OVER_SIT_MAX":
					alert(_jsLang.數量超過定期購限購量);
					break;
                default:
                    alert(_jsLang.資料庫忙線中);
                    break;
            };
        }
    });
});

//活動字串
$("#Main_Content").on('click','#Act_Str_Button',function(){
    var str = $("#Act_Str_Input").val();
    if(str)
    {
        updatePage('&Act_Str='+str);
    }
});
$("#Main_Content").on('click','#Act_Str_Cancel',function(){
    updatePage('&Act_Str=Cancel_Act_Str');
});

//儲值金
$("#Main_Content").on('click','#MemberMoney_Use',function(){
    var str = $("#MemberMoney_Input").val();
    if(str)
    {
        updatePage('&MemberMoney='+str);
    }
});
$("#Main_Content").on('click','#MemberMoney_Cancel',function(){
    updatePage('&MemberMoney=MemberMoney_Cancel');
});
$("#Main_Content").on('click','#MemberMoney_Unuse',function(){
    updatePage('&MemberMoney=MemberMoney_Cancel');
});

//切換配送國家
$("#Main_Content").on('change','#Send_Country',function(){
    updatePage('&Country='+$(this).val());
});

//切換配送方式
$("#Main_Content").on('click','input[name="Ship_Type"]',function(){
    updatePage('&Ship_Type='+$(this).val());
});

//門市取貨
$("#Main_Content").on("change","#Store_Pick",function(){
    updatePage('&CVSStoreID='+$(this).val());
});

//切換付款方式
$("#Main_Content").on('click','input[name="Pay_Type"]',function(){
    updatePage('&Pay_Type='+$(this).val());

    if(typeof ga == 'function')
    {
        var obj = JSON.parse($("#GA_Data").text());
        for(var key in obj)
        {
            ga('ec:addProduct',obj[key]);
        }
        ga('ec:setAction','checkout',{
            'step':3
        });
        ga('send','event','購物車','選擇付款方式');
    }
});

//切換配送城市
$("#Main_Content").on('change','#Send_City',function(){
    updatePage('&City='+$(this).val());
});

//切換配送地區
$("#Main_Content").on('change','#Send_Area',function(){
    updatePage('&Area='+$(this).val());
});

//選擇門市
$("#Main_Content").on("click","#Choose_Store", function(){
    var $return = encodeURIComponent($("#eMapReturnUrl").val()+'#s2'),
        $type = $(this).attr("type"),
        $coll = $(this).attr("coll");
    updatePage('&save=1');

    setTimeout(function(){
        window.location.href = '/shopcart/e_returns/emap-p.php?url='+$return+'&type='+$type+'&coll='+$coll+'&shop_id='+$("#Page_Shop_ID").val();
    },500);
});

//送出訂單
$("#Main_Content").on('click','#Form_Submit',function(){
    $("#Main_Form").submit();
});

//姓名、電話、Email、地址、備註
$("#Main_Content").on('change','#Send_Name,#Send_Cellphone,#Email,#Send_Address,#Send_Memo',function(){
    updatePage('&save=1');
});

//自動加入會員、收貨時間
$("#Main_Content").on('click',"#Auto_Add,input[name='Send_Time']",function(){
    updatePage('&save=1');
});

//切換載具類型
$("#Main_Content").on('change',"#CarrierType",function(){
    updatePage();
});
//切換發票類型
$("#Main_Content").on('click',"input[name='Invo_Mod']",function(){
    updatePage();
});

//同收件地址
$("#Main_Content").on('click','#Invo_Same_Button',function(){
    if($(this).prop("checked"))
    {
        var same = '1';
        $("#Invo_Address_Box").hide();
        $("#Invo_Address").attr("fun","");
    }
    else
    {
        var same = '2';
        $("#Invo_Address_Box").show();
        $("#Invo_Address").attr("fun","checkNull");
    }
    updatePage('&Invo_Same='+same+'&save=1');
    $("input[name='Invo_Same']").val(same);
});

$("#Main_Content").on('click','.title-big',function(){
    var num = $(this).parent('section').attr("num");
    if(num > '0')
    {
        $(this).parent('section').toggleClass("open",500);
    }
    else
    {
        $(".emptyCartPrompt").css("display","block");
        setTimeout(function () {
            $('.emptyCartPrompt').fadeOut()
        }, 5000)
    }
});

$("#Main_Content").on('click','.shopcart-link',function(){
    $('section').addClass("open",500);
});

$('body').on('click','.arrow .title-big', function(event) {
    // console.log($('.is-nowStep'));
    if(!$(this).is('.open')){
        $('.arrow').not(this).removeClass('open');
        $(this).parent('.arrow').addClass('open');
        updatePage('&Step='+$(this).parent('section').attr("id").substr(1,1)+'&save=1');
    }
});

$("#Main_Content").on('click','#step2',function(){
    $('#s2').addClass("open",500);
    $('#s2').addClass("arrow",500);
    // $(this).parents('.section-wrapper').parent('section').removeClass('open');
    updatePage('&Step=2&save=1&MoneyShow=1');

    if(typeof ga == 'function')
    {
        var obj = JSON.parse($("#GA_Data").text());
        for(var key in obj)
        {
            ga('ec:addProduct',obj[key]);
        }
        ga('ec:setAction','checkout',{
            'step':2
        });
        ga('send','event','購物車','我要結帳');
    }
});
$("#Main_Content").on('click','#step3',function(){
    $('#s3').addClass("open",500);
    $('#s3').addClass("arrow",500);
    // $(this).parents('section').removeClass('open');
    updatePage('&Step=3&save=1');
});

// 按下我要結帳後出現底部浮動
// $("#Main_Content").on('click', '#step2', function() {
//      $('.moneyPrompt').css('display', 'block').hide().fadeIn()
// });

//切換定期購期數
$("#Main_Content").on('change',"#SIT_Installment",function(){
    updatePage();
});

function updatePage(data) {
    //取得一般配送資料
    var send = '';
    var data = data || '';
    //寄送資料
    $("#Send_Name,#Send_Cellphone,#Email,#Send_Address,input[name='Send_Time']:checked,#Send_Memo,#Del_Type,#Auto_Add:checked,#SIT_Installment").each(function(){
        send += '&'+$(this).attr("name")+'='+$(this).val();
    });
    //發票資料
    $("input[name='Invo_Mod']:checked,#CarrierType,#CarrierId1,#CarrierId2,#NPOBAN,#Invo_Title,#Invo_No,#Invo_Address").each(function(){
        send += '&'+$(this).attr("name")+'='+$(this).val();
    });
    var $data = 'type=update'+data+send+'&Page_Shop_ID='+$("#Page_Shop_ID").val();
    $.ajax({
        url:"/quickshop/ajax/ajax_get_cart.php",
        type:"POST",
        async: true,
        data:$data,
        cache:false,
        error:function(d,e,f){
            alert('網路連線過慢，網頁請重新整理');
        },
        success:function(d){
            if(d)
            {
                $("#Ajax_Box").html(d);
                //活動字串訊息
                if($("#Coupon_Msg").val()){
                    alert($("#Coupon_Msg").val());
                }
                $("#Main_Form").fromsAuth({
                    type:'NONE',
                    callafter:function(){
                        if(typeof ga == 'function')
                        {
                            var obj = JSON.parse($("#GA_Data").text());
                            for(var key in obj)
                            {
                                ga('ec:addProduct',obj[key]);
                            }
                            ga('ec:setAction','checkout',{
                                'step':4
                            });
                            ga('send','event','購物車','確認訂單');
                        }
                        return true;
                    }
                });
                //加購按鈕
                var add = parseInt($("#CanAdd").val());
                if(add > 0)
                {
                    $("[data-atype='2']").removeClass('button-cant');
                    $(".Add_Button").html('<i class="icon icon-cart"></i>');
                    $(".Add_Button").attr('data-add',0);
                    //$(".Add_Box .PopupBtn1").removeClass('Add_Prod');
                }
                else
                {
                    $("[data-atype='2']").addClass('button-cant');
                    $(".Add_Button").html('');
                    $(".Add_Button").attr('data-add',1);
                    //$(".Add_Box .PopupBtn1").addClass('Add_Prod');
                }
                //滿額按鈕
                var gift = parseInt($("#CanGift").val());
                if(gift > 0)
                {
                    $("[data-atype='3']").removeClass('button-cant');
                    $(".Gift_Button").html('<i class="icon icon-cart"></i>');
                }
                else
                {
                    $("[data-atype='3']").addClass('button-cant');
                    $(".Gift_Button").html('');
                }

                var amount = parseInt($("#ChooseGift").val());
                $("#Gift_Amount").html(amount);
            }
        }
    })
}

// window trigger
;(function($) {
    $(window).trigger('resize, scroll')
})($)

