fgcslider_1.js 9.36 KB
function preSlider(a){productBoxWidth = 220, productBoxHeight = 140; var b = jQuery(".fgc-slider"); if (totalProduct = b.find(".slide-frame").length, b.find(".slide-frame").addClass("add_to_cart_button").addClass("ajax_add_to_cart"), $isMobile || $isDesktop?numProduct = 4:(numProduct = 3, jQuery(".outbox-slider").css("width", "auto")), totalProduct = b.find(".slide-frame").length, a){var c = jQuery("ul.products"); if (totalProduct = c.find("li").length, $isMobile)for (j = totalProduct + 1; j > 0; j--)moveToSlider(j); else for (j = 1; j < totalProduct + 1; j++)moveToSlider(j); jQuery(".slide-frame").addClass("ajax_add_to_cart")}for (i = 1; i < numProduct + 1; i++); b.find(".popular").parent().addClass("popular-product"), b.find(".slide-frame").each(function(){jQuery(this).hasClass("popular-product") && jQuery(this).find("h3").before('<span class="popular">MOST POPULAR</span>')})}function moveSlider(a, b, c, d, e){var f = jQuery(".fgc-slider"); if (!$isMobile){if ("-10px" === f.css("left") && "pre" === a)return; if ("-2230px" === f.css("left") && "next" === a)return}}function moveNext(a, b, c, d){moveSlider("next", a, b, c, d)}function movePre(a, b, c, d){moveSlider("pre", a, b, c, d)}function moveToSlider(a){if (jQuery(".products").length > 0){var b = jQuery(".fgc-slider .fgc_slider_products"), c = jQuery("ul.products"); thisLi = c.find("li:nth-child(" + a + ")"), toMove = thisLi.find("a .price").parent(), toMove.addClass("slide-frame"), priceHtml = toMove.find(".amount").text().replace(".00", "").replace(".99", "<small>.99</small>"), toMove.find(".short-description").after('<input type="hidden" value="' + toMove.find(".amount").text().replace("jQuery", "") + '" class="price-value" />'), toMove.find(".price").html(priceHtml), thisLi.hasClass("pa_popular") && toMove.find("h3").before('<span class="popular"></span>'), toMove.attr("href", String(thisLi.find(".add_to_cart_button").attr("href"))), toMove.attr("data-product_id", String(thisLi.find(".add_to_cart_button").attr("data-product_id"))), b.append(toMove)}}function setWidthSlider(a, b, c){var d = jQuery(".fgc-slider"); if (totalSlide = d.find(".slide-frame").length, sizeSlider = 0, $isMobile)for (d.find(".slide-frame").each(function(){sizeSlider += jQuery(this).outerHeight() + 20}), d.css("height", sizeSlider + "px"), thisTop = 0, i = 1; i < a + 1; i++)thisTop += d.find(".slide-frame:nth-child(" + i + ")").outerHeight() + 20; else d.find(".slide-frame").each(function(){sizeSlider += jQuery(this).outerWidth() + 20}), d.css("width", sizeSlider + "px"), fgcBoxSlider = (d.find(".slide-frame:first-child").outerWidth() + 20) * a, leftBoxSlider = (jQuery(".outbox-slider").width() - fgcBoxSlider) / 2, jQuery(".fgc-box-slider").css("width", fgcBoxSlider + "px"), thisLeft = (d.find(".slide-frame:first-child").outerWidth() + 20) * a}function setAuto(a, b, c){return setInterval(function(){moveNext(a, b, c)}, 5e3)}function getTotalFrameAndPositionFrames(){return totalFrame = 0, leftFrameArray = [], $isMobile?(leftFirstFrame = - 20, jQuery(".outbox-slider[slider='1'] .slide-frame").each(function(){leftFrameArray.push(leftFirstFrame + "px"), leftFirstFrame -= jQuery(this).outerHeight(), leftFirstFrame -= 20, totalFrame++})):(leftFirstFrame = - 10, jQuery(".outbox-slider[slider='1'] .slide-frame").each(function(){leftFrameArray.push(leftFirstFrame + "px"), leftFirstFrame -= jQuery(this).outerWidth(), leftFirstFrame -= 20, totalFrame++})), {totalFrame:totalFrame, leftFrameArray:leftFrameArray}}function clickNextButton(a, b, c, d){jQuery(".next-button").hasClass("disabled") || (jQuery(".next-button").addClass("disabled"), $isMobile?(indexFrame = a.indexOf(c.css("top")), nextIndex = indexFrame, 0 !== indexFrame && (indexFrame < numProduct?nextIndex = 0:nextIndex = indexFrame - numProduct), jQuery(".fgc-slider").animate({top:a[nextIndex]}, d, function(){jQuery(".next-button").removeClass("disabled")})):(indexFrame = a.indexOf(c.css("left")), nextIndex = indexFrame, b - indexFrame < 2 * numProduct?nextIndex = b - numProduct:nextIndex = indexFrame + numProduct, nextIndex = indexFrame, b - indexFrame < 2 * numProduct?nextIndex = b - numProduct:nextIndex = indexFrame + numProduct, jQuery(".fgc-slider").animate({left:a[nextIndex]}, d, function(){jQuery(".next-button").removeClass("disabled")})))}function clickPreButton(a, b, c, d){jQuery(".pre-button").hasClass("disabled") || (jQuery(".pre-button").addClass("disabled"), $isMobile?(indexFrame = a.indexOf(c.css("top")), nextIndex = indexFrame, b - indexFrame < 2 * numProduct?nextIndex = b - numProduct:nextIndex = indexFrame + numProduct, jQuery(".fgc-slider").animate({top:a[nextIndex]}, d, function(){jQuery(".pre-button").removeClass("disabled")})):(indexFrame = a.indexOf(c.css("left")), nextIndex = indexFrame, 0 !== indexFrame && (indexFrame < numProduct?nextIndex = 0:nextIndex = indexFrame - numProduct), jQuery(".fgc-slider").animate({left:a[nextIndex]}, d, function(){jQuery(".pre-button").removeClass("disabled")})))}function singleProductAddToCart(a){jQuery.ajax({type:"POST", dataType:"html", url:a, success:function(a){jQuery("#show_login").length > 0?(jQuery.cookie("initiateCheckout", "step1", {expires:10, path:"/"}), window.location = "/login-page"):window.location = "/checkout", disableBlurPage()}})}function subscriptionProductAddToCart(a, b){jQuery.ajax({type:"POST", url:a + "&ajax_add_cart=yes", contentType:"application/json; charset=utf-8", data:{"add-to-cart":b}, success:function(a){var a = JSON.parse(a); "yes" == a.error?window.location = window.location.href:(jQuery("#show_login").length > 0?(jQuery.cookie("step_2", 1, {expires:10, path:"/"}), jQuery.cookie("initiateCheckout", "step1", {expires:10, path:"/"}), window.location = "/login-page"):window.location = "/checkout", disableBlurPage())}})}function enableBlurPage(){jQuery(".blur-main").fadeIn(), jQuery(".outbox-slider > .ajax-loader.small").removeClass("hide")}function disableBlurPage(){jQuery(".blur-main").fadeOut()}jQuery(document).ready(function(a){if (screenWidth = a(window).width(), $isMobile = !1, $isDesktop = !0, screenWidth < 746 && ($isMobile = !0), screenWidth < 1024 && ($isDesktop = !1), $isSingleProduct = !1, a("body").hasClass("single-purchase")?$isSingleProduct = !0:(a(".fgc_slider_products").prependTo(".fgc-slider"), $isMobile?a(".fgc_slider_products.desktop").remove():a(".fgc_slider_products.mobile").remove()), a("body").hasClass("category_page")){$isMobile && a(".img-below-slider").closest("p").insertBefore(a(".outbox-slider")), mainPadding = a(".col-full").css("padding"), a(".shop-step-1 ").css("padding", mainPadding), a(".img-below-slider").closest("p").css("padding", mainPadding).css("padding-bottom", "0").css("margin-bottom", "0"), $isDesktop || a(".outbox-slider").css("margin", mainPadding), a(".single_variation_wrap").hide(), preSlider($isSingleProduct); var b = a(".fgc-slider"); $totalFrameAndPositionFrames = getTotalFrameAndPositionFrames(), totalFrame = $totalFrameAndPositionFrames.totalFrame, leftFrameArray = $totalFrameAndPositionFrames.leftFrameArray, time = 1e3, $isMobile && a(".pre-button").length > 0 && ($isMobile && a(".fgc-slider").css("top", leftFrameArray[totalFrame - 4]), time = 1e3), a(".next-button").click(function(){clickNextButton(leftFrameArray, totalFrame, b, time)}), a(".pre-button").click(function(){clickPreButton(leftFrameArray, totalFrame, b, time)}), a(".single_add_to_cart_button").addClass("add_to_cart_button").addClass("ajax_add_to_cart").addClass("product-type-variable"), a(".outbox-slider").append('<div class="blur-main"></div>').append('<i class="ajax-loader small animate-spin hide"></i>'), a(".outbox-slider > .ajax-loader.small").css("position", "absolute").css("top", "50%").css("left", "50%").css("z-index", "9"), a(".blur-main").css("width", "100%").css("height", "100%").css("position", "absolute").css("top", "0").css("left", "0").css("background", "#fff").css("opacity", "0.6").css("z-index", "9").css("display", "none"), $isSingleProduct?$isMobile?a(".slide-frame").on("tap", function(b){b.preventDefault(), enableBlurPage(), $href = a(this).attr("href"), singleProductAddToCart($href)}):a(".slide-frame").click(function(b){b.preventDefault(), enableBlurPage(), $href = a(this).attr("href"), singleProductAddToCart($href)}):$isMobile?a(".ajax_add_to_cart_variation").on("tap", function(b){b.preventDefault(), enableBlurPage(), $addToCartVal = a(this).find('input[name="add-to-cart"]').val(), $href = a(this).attr("href"), subscriptionProductAddToCart($href, $addToCartVal)}):a(".ajax_add_to_cart_variation").click(function(b){b.preventDefault(), enableBlurPage(), $addToCartVal = a(this).find('input[name="add-to-cart"]').val(), $href = a(this).attr("href"), subscriptionProductAddToCart($href, $addToCartVal)}), a(".nav-text-pre").click(function(b){a(".pre-button").click()}), a(".nav-text-next").click(function(b){a(".next-button").click()})}a("body").hasClass("subscription_category_page") && a("#make_change_subscription").length > 0 && a("#need_move").length > 0 && (need_move = a("#need_move").val(), !$isMobile && need_move > 1?(need_move > 12 && (need_move = 12), move_width = 0 - (a(".slide-frame").outerWidth() + 20) * (need_move - 2) - 10, a(".fgc-slider").animate({left:move_width}, 0, function(){})):need_move > 12?(move_height = - 10, a(".fgc-slider").animate({top:move_height}, 0, function(){})):need_move > 1 && (need_move = 12 - need_move, move_height = 0 - (a(".slide-frame").outerHeight() + 20) * need_move - 10, 9 === need_move && (move_height -= 10), a(".fgc-slider").animate({top:move_height}, 0, function(){})))});