/home/techb158/immovalet.com/platform/themes/shopwise/assets/js
NameSizeModeActions
components/-0755rm
app.js36430644editdlrm
backend.js294310644editdlrm
icons-field.js569480644editdlrm
scripts.js290620644editdlrm
Edit: /home/techb158/immovalet.com/platform/themes/shopwise/assets/js/scripts.js (29062B)
/*=================================== Author : Bestwebcreator. Template Name: Shopwise - eCommerce Bootstrap 4 HTML Template Version : 1.0 ===================================*/ /*===================================* PAGE JS *===================================*/ (function ($) { 'use strict'; /*===================================* 01. LOADING JS /*===================================*/ $(window).on('load', function () { setTimeout(function () { $(".preloader").delay(700).fadeOut(700).addClass('loaded'); }, 800); }); /*===================================* 02. BACKGROUND IMAGE JS *===================================*/ /*data image src*/ $(".background_bg").each(function () { var attr = $(this).attr('data-img-src'); if (typeof attr !== typeof undefined && attr !== false) { $(this).css('background-image', 'url(' + attr + ')'); } }); /*===================================* 03. ANIMATION JS *===================================*/ $(function () { function ckScrollInit(items, trigger) { items.each(function () { var ckElement = $(this), AnimationClass = ckElement.attr('data-animation'), AnimationDelay = ckElement.attr('data-animation-delay'); ckElement.css({ '-webkit-animation-delay': AnimationDelay, '-moz-animation-delay': AnimationDelay, 'animation-delay': AnimationDelay, opacity: 0 }); var ckTrigger = (trigger) ? trigger : ckElement; ckTrigger.waypoint(function () { ckElement.addClass("animated").css("opacity", "1"); ckElement.addClass('animated').addClass(AnimationClass); }, { triggerOnce: true, offset: '90%', }); }); } ckScrollInit($('.animation')); ckScrollInit($('.staggered-animation'), $('.staggered-animation-wrap')); }); /*===================================* 04. MENU JS *===================================*/ //Main navigation scroll spy for shadow $(window).on('scroll', function () { var scroll = $(window).scrollTop(); if (scroll >= 150) { $('header.fixed-top').addClass('nav-fixed'); } else { $('header.fixed-top').removeClass('nav-fixed'); } }); // Show Hide dropdown-menu Main navigation $(document).on('ready', function () { $('.dropdown-menu a.dropdown-toggler').on('click', function () { if (!$(this).next().hasClass('show')) { $(this).parents('.dropdown-menu').first().find('.show').removeClass("show"); } var $subMenu = $(this).next(".dropdown-menu"); $subMenu.toggleClass('show'); $(this).parent("li").toggleClass('show'); $(this).parents('li.nav-item.dropdown.show').on('hidden.bs.dropdown', function () { $('.dropdown-menu .show').removeClass("show"); }); return false; }); }); //Hide Navbar Dropdown After Click On Links var navBar = $('.header_wrap'); var navbarLinks = navBar.find(".navbar-collapse ul li a.page-scroll"); $.each(navbarLinks, function () { var navbarLink = $(this); navbarLink.on('click', function () { navBar.find(".navbar-collapse").collapse('hide'); $("header").removeClass("active"); }); }); // Main navigation Active Class Add Remove $('.navbar-toggler').on('click', function () { $("header").toggleClass("active"); if ($('.search-overlay').hasClass('open')) { $(".search-overlay").removeClass('open'); $(".search_trigger").removeClass('open'); } }); $(document).on('ready', function () { if ($('.header_wrap').hasClass("fixed-top") && !$('.header_wrap').hasClass("transparent_header") && !$('.header_wrap').hasClass("no-sticky")) { $(".header_wrap").before('
'); } }); $(window).on('scroll', function () { var scroll = $(window).scrollTop(); if (scroll >= 150) { $('.header_sticky_bar').removeClass('d-none'); $('header.no-sticky').removeClass('nav-fixed'); } else { $('.header_sticky_bar').addClass('d-none'); } }); var setHeight = function () { var height_header = $(".header_wrap").height(); $('.header_sticky_bar').css({'height': height_header}); }; $(window).on('load', function () { setHeight(); }); $(window).on('resize', function () { setHeight(); }); $('.sidetoggle').on('click', function () { $(this).addClass('open'); $('body').addClass('sidetoggle_active'); $('.sidebar_menu').addClass('active'); $("body").append('
'); }); $(document).on('click', '#header-overlay, .sidemenu_close', function () { $('.sidetoggle').removeClass('open'); $('body').removeClass('sidetoggle_active'); $('.sidebar_menu').removeClass('active'); $('#header-overlay').fadeOut('3000', function () { $('#header-overlay').remove(); }); return false; }); $(".categories_btn").on('click', function () { $('.side_navbar_toggler').attr('aria-expanded', 'false'); $('#navbarSidetoggle').removeClass('show'); }); $(".side_navbar_toggler").on('click', function () { $('.categories_btn').attr('aria-expanded', 'false'); $('#navCatContent').removeClass('show'); }); $(".pr_search_trigger").on('click', function () { $(this).toggleClass('show'); $('.product_search_form').toggleClass('show'); }); var rclass = true; $("html").on('click', function () { if (rclass) { $('.categories_btn').addClass('collapsed'); $('.categories_btn,.side_navbar_toggler').attr('aria-expanded', 'false'); $('#navCatContent,#navbarSidetoggle').removeClass('show'); } rclass = true; }); $(".categories_btn,#navCatContent,#navbarSidetoggle .navbar-nav,.side_navbar_toggler").on('click', function () { rclass = false; }); /*===================================* 05. SMOOTH SCROLLING JS *===================================*/ // Select all links with hashes var topheaderHeight = $(".top-header").innerHeight(); var mainheaderHeight = $(".header_wrap").innerHeight(); var headerHeight = mainheaderHeight - topheaderHeight - 20; $('a.page-scroll[href*="#"]:not([href="#"])').on('click', function () { $('a.page-scroll.active').removeClass('active'); $(this).closest('.page-scroll').addClass('active'); // On-page links if (location.pathname.replace(/^\//, '') === this.pathname.replace(/^\//, '') && location.hostname === this.hostname) { // Figure out element to scroll to var target = $(this.hash), speed = $(this).data("speed") || 800; target = target.length ? target : $('[name=' + this.hash.slice(1) + ']'); // Does a scroll target exist? if (target.length) { // Only prevent default if animation is actually gonna happen event.preventDefault(); $('html, body').animate({ scrollTop: target.offset().top - headerHeight }, speed); } } }); $(window).on('scroll', function () { var lastId, // All list items menuItems = $(".header_wrap").find("a.page-scroll"), topMenuHeight = $(".header_wrap").innerHeight() + 20, // Anchors corresponding to menu items scrollItems = menuItems.map(function () { var items = $($(this).attr("href")); if (items.length) { return items; } }); var fromTop = $(this).scrollTop() + topMenuHeight; // Get id of current scroll item var cur = scrollItems.map(function () { if ($(this).offset().top < fromTop) return this; }); // Get the id of the current element cur = cur[cur.length - 1]; var id = cur && cur.length ? cur[0].id : ""; if (lastId !== id) { lastId = id; // Set/remove active class menuItems.closest('.page-scroll').removeClass("active").end().filter("[href='#" + id + "']").closest('.page-scroll').addClass("active"); } }); $('.more_slide_open').slideUp(); $('.more_categories').on('click', function () { $(this).toggleClass('show'); $('.more_slide_open').slideToggle(); }); /*===================================* 06. SEARCH JS *===================================*/ $(".close-search").on("click", function () { $(".search_wrap,.search_overlay").removeClass('open'); $("body").removeClass('search_open'); }); var removeClass = true; $(".search_wrap").after('
'); $(".search_trigger").on('click', function () { $(".search_wrap,.search_overlay").toggleClass('open'); $("body").toggleClass('search_open'); removeClass = false; if ($('.navbar-collapse').hasClass('show')) { $(".navbar-collapse").removeClass('show'); $(".navbar-toggler").addClass('collapsed'); $(".navbar-toggler").attr("aria-expanded", false); } }); $(".search_wrap form").on('click', function () { removeClass = false; }); $("html").on('click', function () { if (removeClass) { $("body").removeClass('open'); $(".search_wrap,.search_overlay").removeClass('open'); $("body").removeClass('search_open'); } removeClass = true; }); /*===================================* 07. SCROLLUP JS *===================================*/ $(window).on('scroll', function () { if ($(this).scrollTop() > 150) { $('.scrollup').fadeIn(); } else { $('.scrollup').fadeOut(); } }); $(".scrollup").on('click', function (e) { e.preventDefault(); $('html, body').animate({ scrollTop: 0 }, 600); return false; }); /*===================================* 09. MASONRY JS *===================================*/ $(window).on("load", function () { var $grid_selectors = $(".grid_container"); if ($grid_selectors.length) { var filter_selectors = ".grid_filter > li > a"; if ($grid_selectors.length > 0) { $grid_selectors.imagesLoaded(function () { if ($grid_selectors.hasClass("masonry")) { $grid_selectors.isotope({ itemSelector: '.grid_item', percentPosition: true, layoutMode: "masonry", masonry: { columnWidth: '.grid-sizer' }, }); } else { $grid_selectors.isotope({ itemSelector: '.grid_item', percentPosition: true, layoutMode: "fitRows", }); } }); } //isotope filter $(document).on("click", filter_selectors, function () { $(filter_selectors).removeClass("current"); $(this).addClass("current"); var dfselector = $(this).data('filter'); if ($grid_selectors.hasClass("masonry")) { $grid_selectors.isotope({ itemSelector: '.grid_item', layoutMode: "masonry", masonry: { columnWidth: '.grid_item' }, filter: dfselector }); } else { $grid_selectors.isotope({ itemSelector: '.grid_item', layoutMode: "fitRows", filter: dfselector }); } return false; }); $('.portfolio_filter').on('change', function () { $grid_selectors.isotope({ filter: this.value }); }); $(window).on("resize", function () { setTimeout(function () { $grid_selectors.find('.grid_item').removeClass('animation').removeClass('animated'); // avoid problem to filter after window resize $grid_selectors.isotope('layout'); }, 300); }); } }); $('.link_container').each(function () { $(this).magnificPopup({ delegate: '.image_popup', type: 'image', mainClass: 'mfp-zoom-in', removalDelay: 500, gallery: { enabled: true } }); }); /*===================================* 10. SLIDER JS *===================================*/ function carousel_slider() { $('.carousel_slider').each(function () { var $carousel = $(this); $carousel.owlCarousel({ rtl: $('body').prop('dir') === 'rtl', dots: $carousel.data("dots"), loop: $carousel.data("loop"), items: $carousel.data("items"), margin: $carousel.data("margin"), mouseDrag: $carousel.data("mouse-drag"), touchDrag: $carousel.data("touch-drag"), autoHeight: $carousel.data("autoheight"), center: $carousel.data("center"), nav: $carousel.data("nav"), rewind: $carousel.data("rewind"), navText: ['', ''], autoplay: $carousel.data("autoplay"), animateIn: $carousel.data("animate-in"), animateOut: $carousel.data("animate-out"), autoplayTimeout: $carousel.data("autoplay-timeout"), smartSpeed: $carousel.data("smart-speed"), responsive: $carousel.data("responsive") }); }); } function slick_slider() { $('.slick_slider').each(function () { var $slick_carousel = $(this); $slick_carousel.slick({ rtl: $('body').prop('dir') === 'rtl', arrows: $slick_carousel.data("arrows"), dots: $slick_carousel.data("dots"), infinite: $slick_carousel.data("infinite"), centerMode: $slick_carousel.data("center-mode"), vertical: $slick_carousel.data("vertical"), fade: $slick_carousel.data("fade"), cssEase: $slick_carousel.data("css-ease"), autoplay: $slick_carousel.data("autoplay"), verticalSwiping: $slick_carousel.data("vertical-swiping"), autoplaySpeed: $slick_carousel.data("autoplay-speed"), speed: $slick_carousel.data("speed"), pauseOnHover: $slick_carousel.data("pause-on-hover"), draggable: $slick_carousel.data("draggable"), slidesToShow: $slick_carousel.data("slides-to-show"), slidesToScroll: $slick_carousel.data("slides-to-scroll"), asNavFor: $slick_carousel.data("as-nav-for"), focusOnSelect: $slick_carousel.data("focus-on-select"), responsive: $slick_carousel.data("responsive") }); }); } $(document).ready(function () { carousel_slider(); slick_slider(); }); /*===================================* 11. CONTACT FORM JS *===================================*/ $("#submitButton").on("click", function (event) { event.preventDefault(); var mydata = $("form").serialize(); $.ajax({ type: "POST", dataType: "json", url: "contact.php", data: mydata, success: function (data) { if (data.type === "error") { $("#alert-msg").removeClass("alert, alert-success"); $("#alert-msg").addClass("alert, alert-danger"); } else { $("#alert-msg").addClass("alert, alert-success"); $("#alert-msg").removeClass("alert, alert-danger"); $("#first-name").val("Enter Name"); $("#email").val("Enter Email"); $("#phone").val("Enter Phone Number"); $("#subject").val("Enter Subject"); $("#description").val("Enter Message"); } $("#alert-msg").html(data.msg); $("#alert-msg").show(); }, error: function (xhr, textStatus) { alert(textStatus); } }); }); /*===================================* 12. POPUP JS *===================================*/ $('.content-popup').magnificPopup({ type: 'inline', preloader: true, mainClass: 'mfp-zoom-in', }); $('.image_gallery').each(function () { // the containers for all your galleries $(this).magnificPopup({ delegate: 'a', // the selector for gallery item type: 'image', gallery: { enabled: true, }, }); }); $('.popup-ajax').magnificPopup({ type: 'ajax', callbacks: { ajaxContentAdded: function () { carousel_slider(); slick_slider(); } } }); $('.video_popup, .iframe_popup').magnificPopup({ type: 'iframe', removalDelay: 160, mainClass: 'mfp-zoom-in', preloader: false, fixedContentPos: false }); /*===================================* 13. Select dropdowns *===================================*/ if ($('select').length) { // Traverse through all dropdowns $.each($('select'), function (i, val) { var $el = $(val); if ($el.val() === "") { $el.addClass('first_null'); } if (!$el.val()) { $el.addClass('not_chosen'); } $el.on('change', function () { if (!$el.val()) $el.addClass('not_chosen'); else $el.removeClass('not_chosen'); }); }); } /*============================================================== 14. FIT VIDEO JS ==============================================================*/ if ($(".fit-videos").length > 0) { $(".fit-videos").fitVids({ customSelector: "iframe[src^='https://w.soundcloud.com']" }); } /*============================================================== 15. DROPDOWN JS ==============================================================*/ if ($(".custome_select").length > 0) { $(document).on('ready', function () { $(".custome_select").msDropdown(); }); } /*===================================* 17. COUNTDOWN JS *===================================*/ $('.countdown_time').each(function () { var endTime = $(this).data('time'); $(this).countdown(endTime, function (tm) { $(this).html(tm.strftime('
%D Days
%HHours
%MMinutes
%SSeconds
')); }); }); /*===================================* 18. List Grid JS *===================================*/ $(document).on('click', '.shorting_icon', function () { if ($(this).hasClass('grid')) { $('.shop_container').removeClass('list').addClass('grid'); $(this).addClass('active').siblings().removeClass('active'); } else if ($(this).hasClass('list')) { $('.shop_container').removeClass('grid').addClass('list'); $(this).addClass('active').siblings().removeClass('active'); } $(".shop_container").append('
'); setTimeout(function () { $('.loading_pr').remove(); }, 500); }); /*===================================* 19. TOOLTIP JS *===================================*/ $(function () { $('[data-toggle="tooltip"]').tooltip({ trigger: 'hover', }); }); $(function () { $('[data-toggle="popover"]').popover(); }); /*===================================* 20. PRODUCT COLOR JS *===================================*/ $('.product_color_switch span').each(function () { var get_color = $(this).attr('data-color'); $(this).css("background-color", get_color); }); $('.product_color_switch span,.product_size_switch span').on("click", function () { $(this).siblings(this).removeClass('active').end().addClass('active'); }); /*===================================* 21. QUICK VIEW POPUP + ZOOM IMAGE + PRODUCT SLIDER JS *===================================*/ var zoomProductImage = function () { var image = $('#product_img'); var zoomActive = false; if ($(image).data('zoom-enable') == true) { zoomActive = !zoomActive; if (zoomActive) { if ($(image).length > 0) { $(image).elevateZoom({ cursor: 'crosshair', easing: true, gallery: 'pr_item_gallery', zoomType: 'inner', galleryActiveClass: 'active' }); } } else { $.removeData(image, 'elevateZoom');//remove zoom instance from image $('.zoomContainer:last-child').remove();// remove zoom container from DOM } } } $.magnificPopup.defaults.callbacks = { open: function () { $('body').addClass('zoom_image'); }, close: function () { // Wait until overflow:hidden has been removed from the html tag setTimeout(function () { $('body').removeClass('zoom_image').removeClass('zoom_gallery_image'); $('.zoomContainer:last-child').remove();// remove zoom container from DOM $('.zoomContainer').slice(1).remove(); }, 100); } }; // Set up gallery on click var galleryZoom = $('#pr_item_gallery'); galleryZoom.magnificPopup({ delegate: 'a', type: 'image', gallery: { enabled: true }, callbacks: { elementParse: function (item) { item.src = item.el.attr('data-zoom-image'); } } }); // Zoom image when click on icon $('.product_img_zoom').on('click', function () { var actual = $('#pr_item_gallery a').attr('data-zoom-image'); $('body').addClass('zoom_gallery_image'); $('#pr_item_gallery .item').each(function () { if (actual == $(this).find('.product_gallery_item').attr('data-zoom-image')) { return galleryZoom.magnificPopup('open', $(this).index()); } }); }); $('.plus').on('click', function () { if ($(this).prev().val()) { $(this).prev().val(+$(this).prev().val() + 1); } }); $('.minus').on('click', function () { if ($(this).next().val() > 1) { if ($(this).next().val() > 1) $(this).next().val(+$(this).next().val() - 1); } }); /*===================================* 22. PRICE FILTER JS *===================================*/ $(document).ready(function () { function number_format(number, decimals, dec_point, thousands_sep) { let n = !isFinite(+number) ? 0 : +number, prec = !isFinite(+decimals) ? 0 : Math.abs(decimals), sep = (typeof thousands_sep === 'undefined') ? ',' : thousands_sep, dec = (typeof dec_point === 'undefined') ? '.' : dec_point, toFixedFix = function (n, prec) { // Fix for IE parseFloat(0.55).toFixed(0) = 0; let k = Math.pow(10, prec); return Math.round(n * k) / k; }, s = (prec ? toFixedFix(n, prec) : Math.round(n)).toString().split('.'); if (s[0].length > 3) { s[0] = s[0].replace(/\B(?=(?:\d{3})+(?!\d))/g, sep); } if ((s[1] || '').length < prec) { s[1] = s[1] || ''; s[1] += new Array(prec - s[1].length + 1).join('0'); } return s.join(dec); } var $filter_selector = $('#price_filter'); if ($filter_selector.length) { var a = $filter_selector.data('min-value'); var b = $filter_selector.data('max-value'); var c = $filter_selector.data('price-sign'); var currentExchangeRate = parseFloat($('div[data-current-exchange-rate]').data('current-exchange-rate')); var isPrefixSymbol = $('div[data-is-prefix-symbol]').data('is-prefix-symbol'); $filter_selector.slider({ isRTL: $('body').prop('dir') === 'rtl', range: true, min: $filter_selector.data('min'), max: $filter_selector.data('max'), values: [a, b], slide: function (event, ui) { var from = number_format(ui.values[0] * currentExchangeRate); var to = number_format(ui.values[1] * currentExchangeRate); if (isPrefixSymbol == '1') { from = c + from; to = c + to; } else { from = from + c; to = to + c; } $('#flt_price').html(from + ' - ' + to); $('#price_first').val(ui.values[0]); $('#price_second').val(ui.values[1]); }, stop: function () { $('#price_filter').closest('form').submit(); } }); var from = number_format($filter_selector.slider('values', 0) * currentExchangeRate); var to = number_format($filter_selector.slider('values', 1) * currentExchangeRate); if (isPrefixSymbol == '1') { from = c + from; to = c + to; } else { from = from + c; to = to + c; } $('#flt_price').html(from + ' - ' + to); } }); /*===================================* 23. RATING STAR JS *===================================*/ $(document).ready(function () { $('.star_rating span').on('click', function () { var onStar = parseFloat($(this).data('value'), 10); // The star currently selected var stars = $(this).parent().children('.star_rating span'); for (var i = 0; i < stars.length; i++) { $(stars[i]).removeClass('selected'); } for (i = 0; i < onStar; i++) { $(stars[i]).addClass('selected'); } $(this).closest('form').find('input[name=star]').val(onStar); }); }); $(document).ready(function () { zoomProductImage(); }); })(jQuery);