1var woodmartThemeModule = {}; 2/* global woodmart_settings */ 3 4(function($) { 5 woodmartThemeModule.supports_html5_storage = false; 6 7 try { 8 woodmartThemeModule.supports_html5_storage = ('sessionStorage' in window && window.sessionStorage !== null); 9 window.sessionStorage.setItem('wd', 'test'); 10 window.sessionStorage.removeItem('wd'); 11 } 12 catch (err) { 13 woodmartThemeModule.supports_html5_storage = false; 14 } 15 16 woodmartThemeModule.$window = $(window); 17 18 woodmartThemeModule.$document = $(document); 19 20 woodmartThemeModule.$body = $('body'); 21 22 woodmartThemeModule.windowWidth = woodmartThemeModule.$window.width(); 23 24 woodmartThemeModule.removeURLParameter = function(url, parameter) { 25 var urlParts = url.split('?'); 26 27 if (urlParts.length >= 2) { 28 var prefix = encodeURIComponent(parameter) + '='; 29 var pars = urlParts[1].split(/[&;]/g); 30 31 for (var i = pars.length; i-- > 0;) { 32 if (pars[i].lastIndexOf(prefix, 0) !== -1) { 33 pars.splice(i, 1); 34 } 35 } 36 37 return urlParts[0] + (pars.length > 0 ? '?' + pars.join('&') : ''); 38 } 39 40 return url; 41 }; 42 43 woodmartThemeModule.removeDuplicatedStylesFromHTML = function(html, callback) { 44 var $data = $('<div class="temp-wrapper"></div>').append(html); 45 var $links = $data.find('link'); 46 var counter = 0; 47 var timeout = false; 48 49 if (0 === $links.length || 'yes' === woodmart_settings.combined_css) { 50 callback(html); 51 return; 52 } 53 54 setTimeout(function() { 55 if (counter <= $links.length && !timeout) { 56 callback($($data.html())); 57 timeout = true; 58 } 59 }, 500); 60 61 $links.each(function() { 62 var $link = $(this); 63 var id = $link.attr('id'); 64 var href = $link.attr('href'); 65 66 $link.remove(); 67 68 if ('undefined' === typeof woodmart_page_css[id]) { 69 $('head').append($link.on('load', function() { 70 counter++; 71 72 woodmart_page_css[id] = href; 73 74 if (counter >= $links.length && !timeout) { 75 callback($($data.html())); 76 timeout = true; 77 } 78 })); 79 } else { 80 counter++; 81 82 if (counter >= $links.length && !timeout) { 83 callback($($data.html())); 84 timeout = true; 85 } 86 } 87 }); 88 }; 89 90 woodmartThemeModule.debounce = function(func, wait, immediate) { 91 var timeout; 92 return function() { 93 var context = this; 94 var args = arguments; 95 var later = function() { 96 timeout = null; 97 98 if (!immediate) { 99 func.apply(context, args); 100 } 101 }; 102 var callNow = immediate && !timeout; 103 104 clearTimeout(timeout); 105 timeout = setTimeout(later, wait); 106 107 if (callNow) { 108 func.apply(context, args); 109 } 110 }; 111 }; 112 113 woodmartThemeModule.wdElementorAddAction = function(name, callback) { 114 woodmartThemeModule.$window.on('elementor/frontend/init', function() { 115 if (!elementorFrontend.isEditMode()) { 116 return; 117 } 118 119 elementorFrontend.hooks.addAction(name, callback); 120 }); 121 }; 122 123 woodmartThemeModule.wdElementorAddAction('frontend/element_ready/section', function($wrapper) { 124 $wrapper.removeClass('wd-animated'); 125 $wrapper.data('wd-waypoint', ''); 126 $wrapper.removeClass('wd-anim-ready'); 127 woodmartThemeModule.$document.trigger('wdElementorSectionReady'); 128 }); 129 130 woodmartThemeModule.wdElementorAddAction('frontend/element_ready/global', function($wrapper) { 131 if ($wrapper.attr('style') && $wrapper.attr('style').indexOf('transform:translate3d') === 0 && !$wrapper.hasClass('wd-parallax-on-scroll')) { 132 $wrapper.attr('style', ''); 133 } 134 $wrapper.removeClass('wd-animated'); 135 $wrapper.data('wd-waypoint', ''); 136 $wrapper.removeClass('wd-anim-ready'); 137 woodmartThemeModule.$document.trigger('wdElementorGlobalReady'); 138 }); 139 140 woodmartThemeModule.wdElementorAddAction('frontend/element_ready/column', function($wrapper) { 141 if ($wrapper.attr('style') && $wrapper.attr('style').indexOf('transform:translate3d') === 0 && !$wrapper.hasClass('wd-parallax-on-scroll')) { 142 $wrapper.attr('style', ''); 143 } 144 $wrapper.removeClass('wd-animated'); 145 $wrapper.data('wd-waypoint', ''); 146 $wrapper.removeClass('wd-anim-ready'); 147 148 setTimeout(function() { 149 woodmartThemeModule.$document.trigger('wdElementorColumnReady'); 150 }, 100); 151 }); 152 153 woodmartThemeModule.ajaxLinks = '.wd-nav-product-cat a, .widget_product_categories a, .widget_layered_nav_filters a, .woocommerce-widget-layered-nav a, .filters-area:not(.custom-content) a, body.post-type-archive-product:not(.woocommerce-account) .woocommerce-pagination a, body.tax-product_cat:not(.woocommerce-account) .woocommerce-pagination a, .wd-shop-tools a, .woodmart-woocommerce-layered-nav a, .woodmart-price-filter a, .wd-clear-filters a, .woodmart-woocommerce-sort-by a, .woocommerce-widget-layered-nav-list a, .wd-widget-stock-status a'; 154 155 woodmartThemeModule.shopLoadMoreBtn = '.wd-products-load-more.load-on-scroll'; 156 157 woodmartThemeModule.mainCarouselArg = {
158 rtl : woodmartThemeModule.$body.hasClass('rtl'), 159 items : woodmart_settings.product_gallery.thumbs_slider.position === 'centered' ? 2 : 1, 160 autoplay : woodmart_settings.product_slider_autoplay, 161 autoplayTimeout: 3000, 162 loop : woodmart_settings.product_slider_autoplay, 163 center : woodmart_settings.product_gallery.thumbs_slider.position === 'centered', 164 startPosition : woodmart_settings.product_gallery.thumbs_slider.position === 'centered' ? woodmart_settings.centered_gallery_start : 0, 165 dots : false, 166 nav : true, 167 autoHeight : woodmart_settings.product_slider_auto_height === 'yes', 168 navText : false, 169 navClass : [ 170 'owl-prev wd-btn-arrow', 171 'owl-next wd-btn-arrow' 172 ] 173 }; 174 175 woodmartThemeModule.$window.on('elementor/frontend/init', function() { 176 if (!elementorFrontend.isEditMode()) { 177 return; 178 } 179 180 if ('enabled' === woodmart_settings.elementor_no_gap) { 181 elementorFrontend.hooks.addAction('frontend/element_ready/section', function($wrapper) { 182 var cid = $wrapper.data('model-cid'); 183 184 if (typeof elementorFrontend.config.elements.data[cid] !== 'undefined') { 185 var size = elementorFrontend.config.elements.data[cid].attributes.content_width.size; 186 187 if (!size) { 188 $wrapper.addClass('wd-negative-gap'); 189 } 190 } 191 }); 192 193 elementor.channels.editor.on('change:section', function(view) { 194 var changed = view.elementSettingsModel.changed; 195 196 if (typeof changed.content_width !== 'undefined') { 197 var sectionId = view._parent.model.id; 198 var $section = $('.elementor-element-' + sectionId); 199 var size = changed.content_width.size; 200 201 if (size) { 202 $section.removeClass('wd-negative-gap'); 203 } else { 204 $section.addClass('wd-negative-gap'); 205 } 206 } 207 }); 208 } 209 }); 210 211 woodmartThemeModule.$window.on('load', function() { 212 $('.wd-preloader').delay(parseInt(woodmart_settings.preloader_delay)).addClass('preloader-hide'); 213 $('.wd-preloader-style').remove(); 214 setTimeout(function() { 215 $('.wd-preloader').remove(); 216 }, 200); 217 }); 218})(jQuery); 219 220window.onload = function() { 221 var events = [ 222 'keydown', 223 'scroll', 224 'mouseover', 225 'touchmove', 226 'touchstart', 227 'mousedown', 228 'mousemove' 229 ]; 230 231 var triggerListener = function(e) { 232 jQuery(window).trigger('wdEventStarted'); 233 removeListener(); 234 }; 235 236 var removeListener = function() { 237 events.forEach(function(eventName) { 238 window.removeEventListener(eventName, triggerListener); 239 }); 240 }; 241 242 var addListener = function(eventName) { 243 window.addEventListener(eventName, triggerListener); 244 }; 245 246 events.forEach(function(eventName) { 247 addListener(eventName); 248 }); 249};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.