1;if(typeof(jQueryIWD) == "undefined"){if(typeof(jQuery) != "undefined") {jQueryIWD = jQuery;}} $ji = jQueryIWD; 2(function(b){b.waitForImages={hasImageProperties:["backgroundImage","listStyleImage","borderImage","borderCornerImage","cursor"]};b.expr[":"].uncached=function(a){if(!b(a).is('img[src!=""]'))return!1;var c=new Image;c.src=a.src;return!c.complete};b.fn.waitForImages=function(a,c,d){var f=0,g=0;b.isPlainObject(a)&&(d=a.waitForAll,c=a.each,a=a.finished);a=a||b.noop;c=c||b.noop;d=!!d;if(!b.isFunction(a)||!b.isFunction(c))throw new TypeError("An invalid callback was supplied.");return this.each(function(){var h=b(this),e=[],l=b.waitForImages.hasImageProperties||[],m=/url\(\s*(['"]?)(.*?)\1\s*\)/g;d?h.find("*").addBack().each(function(){var a=b(this);a.is("img:uncached")&&e.push({src:a.attr("src"),element:a[0]});b.each(l,function(b,c){var d=a.css(c),f;if(!d)return!0;for(;f=m.exec(d);)e.push({src:f[2],element:a[0]})})}):h.find("img:uncached").each(function(){e.push({src:this.src,element:this})});f=e.length;g=0;0===f&&a.call(h[0]);b.each(e,function(d,e){var k=new Image;b(k).on("load.waitForImages error.waitForImages",function(b){g++;c.call(e.element,g,f,"load"==b.type);if(g==f)return a.call(h[0]),!1});k.src=e.src})})}})(jQueryIWD); 3window.hasOwnProperty = function (obj) {return (this[obj]) ? true : false;}; 4if (!window.hasOwnProperty('IWD')) {IWD = {};} 5iwdChangeHashFlag = true; 6 7IWD.InfinityScroll = { 8 div_category_products: ".category-products", 9 div_pager: ".pager", 10 div_limiter: ".limiter", 11 paginationPath: ".pager .pages a", 12 div_toolbar_bottom: ".toolbar-bottom", 13 14 whenBeginLoad: 1000, 15 isHidePaginationBlock: true, 16 isSmartUrl: true, 17 isPageBlockHead: true, 18 isButtonMode: false,
19 loadMoreButtonLabel: 'Load more...', 20 uploadMode: 'scroll', 21 ajaxUrl: null, 22 currentPage: 1, 23 pagesCount: 1, 24 preLoad: false, 25 hashTop: 0, // cannot use top position by responsive themes 26 hashPage: 1, 27 loadingFlag: false, 28 scrollToBlockTop: false, 29 loadedPages: 0, 30 31 first_page: function(){ 32 var pageBlockId = 'iwd_uploaded_page_' + IWD.InfinityScroll.currentPage; 33 $ji("#iwd_uploaded_pages").append('<div id="' + pageBlockId + '"></div>'); 34 }, 35 36 init: function () { 37 IWD.InfinityScroll.div_pager = IWD.InfinityScroll.paginationPath.split(' ')[0]; 38 39 switch(IWD.InfinityScroll.uploadMode){ 40 case 'button': 41 IWD.InfinityScroll.first_page(); 42 IWD.InfinityScroll.isButtonMode = true; 43 IWD.InfinityScroll.button(); 44 break; 45 case 'scroll': 46 IWD.InfinityScroll.first_page(); 47 IWD.InfinityScroll.scroll(); 48 break; 49 case 'pagination': 50 IWD.InfinityScroll.preparePagination(); 51 IWD.InfinityScroll.pagination(); 52 break; 53 default: 54 return false; 55 } 56 57 IWD.InfinityScroll.hidePagination(); 58 59 return true; 60 }, 61 62 preparePagination: function() { 63 IWD.InfinityScroll.isHidePaginationBlock = false; 64 65 var page = IWD.InfinityScroll.getUrlParam(window.location.href, "p"); 66 IWD.InfinityScroll.currentPage = !page ? 1 : page; 67 68 IWD.InfinityScroll.getHashParams(); 69 70 if(IWD.InfinityScroll.hashPage != IWD.InfinityScroll.currentPage){ 71 var url = IWD.InfinityScroll.setUrlParam(window.location.href, 'p', IWD.InfinityScroll.hashPage); 72 IWD.InfinityScroll.pagination_uploadPage(url); 73 } 74 }, 75 76 hidePagination: function () { 77 if (IWD.InfinityScroll.isHidePaginationBlock) { 78 $ji(IWD.InfinityScroll.div_pager).css("display", "none"); 79 $ji(IWD.InfinityScroll.div_limiter).css("display", "none"); 80 } 81 }, 82 83 loadBarShow: function () { 84 IWD.InfinityScroll.loadingFlag = true; 85 $ji('#iwd_load_bar').css("display", "block"); 86 $ji('#iwd_load_more_pages').css("display", "none"); 87 }, 88 89 loadBarHide: function () { 90 IWD.InfinityScroll.loadingFlag = false; 91 $ji('#iwd_load_bar').css("display", "none"); 92 93 if (IWD.InfinityScroll.isButtonMode) { 94 if (IWD.InfinityScroll.pagesCount > IWD.InfinityScroll.currentPage) { 95 $ji('#iwd_load_more_pages').css("display", "block"); 96 } 97 } 98 }, 99 100 appendPageBlockHead: function (page_block) { 101 102 if (IWD.InfinityScroll.isPageBlockHead) { 103 //console.log(page_block.id); 104 var current_page = page_block.attr('id').split('_').last(); 105 $ji(page_block).prepend('<div class="page-block-head">Page ' + 106 current_page + ' from ' + 107 IWD.InfinityScroll.pagesCount + '</div>'); 108 } 109 110 if (IWD.InfinityScroll.loadedPages == IWD.InfinityScroll.scrollToBlockTop - 1) 111 IWD.InfinityScroll.scrollToTopBlock(); 112 }, 113 114 scrollToTopBlock: function () { 115 var top = $ji("#iwd_uploaded_page_" + IWD.InfinityScroll.hashPage).offset().top; 116 window.scrollTo(0, top); 117 }, 118 119 //upload and append products 120 uploadProducts: function () { 121 if (IWD.InfinityScroll.ajaxUrl && (IWD.InfinityScroll.currentPage < IWD.InfinityScroll.pagesCount)) { 122 IWD.InfinityScroll.loadBarShow(); 123 124 IWD.InfinityScroll.currentPage++; 125 var pageBlockId = 'iwd_uploaded_page_' + IWD.InfinityScroll.currentPage; 126 127 $ji("#iwd_uploaded_pages").append('<div id="' + pageBlockId + '"></div>'); 128 console.log(IWD.InfinityScroll.div_category_products); 129 console.log(IWD.InfinityScroll.div_category_products+'+script'); 130 console.log(IWD.InfinityScroll.div_category_products +', '+ IWD.InfinityScroll.div_category_products+'+script'); 131 this.loadPageAjax(pageBlockId, function (pageBlockId, block) { 132 $ji("#" + pageBlockId).append(block).promise().done(function(){ 133 $ji("#" + pageBlockId).find('.toolbar').remove(); 134 IWD.InfinityScroll.loadBarHide(); 135 IWD.InfinityScroll.loadedPages++; 136 IWD.InfinityScroll.appendPageBlockHead($ji("#" + pageBlockId)); 137 // after 138 if (IWD.InfinityScroll.uploadMode == 'scroll') { 139 IWD.InfinityScroll.scrollAfter(); 140 } else if (IWD.InfinityScroll.uploadMode == 'button') { 141 IWD.InfinityScroll.buttonAfter(); 142 } 143 jQuery(window).resize(); 144 window.dispatchEvent(new Event('resize')); 145 }); 146 }); 147 } 148 }, 149 150 loadPageAjax: function (pageBlockId, callback) { 151 $ji.post( 152 IWD.InfinityScroll.ajaxUrl, 153 { 154 'p': IWD.InfinityScroll.currentPage 155 }, 156 function (response) { 157 //console.log($ji(response).find(IWD.InfinityScroll.div_category_products +', '+ IWD.InfinityScroll.div_category_products+'+script')); 158 //return false;
159 var block = $ji(response).find(IWD.InfinityScroll.div_category_products +', '+ IWD.InfinityScroll.div_category_products+'+script'); 160 callback(pageBlockId, block); 161 // $ji("#" + pageBlockId).append(block).promise().done(function(){ 162 163 // $j(document).trigger('product-media-loaded', ProductMediaManager); 164 // IWD.QuickView.Decorator.updateButton(); 165 // }); 166 167 } 168 ); 169 }, 170 uploadFirstPage: function () { 171 IWD.InfinityScroll.currentPage = 1; 172 var currentBlock = $ji('.products-container'); 173 $ji("#iwd_uploaded_pages").html(''); 174 this.loadPageAjax(null, function (pageBlockId, block) { 175 block.find('.toolbar').remove(); 176 block.find('.toolbar-bottom').remove(); 177 currentBlock.replaceWith(block); 178 IWD.InfinityScroll.first_page(); 179 $j('.super-attribute-select-block').selectpicker(); 180 $j('.selectpicker').selectpicker(); 181 $j('.block-layered-nav .toggle-block-btn').addClass('content-opened'); 182 $j('.amshopby-overlay').hide(); 183 }); 184 }, 185 186 smartUrl: function () { 187 if (!IWD.InfinityScroll.isSmartUrl) 188 return null; 189 190 IWD.InfinityScroll.getHashParams(); 191 192 if (IWD.InfinityScroll.hashPage > 1 && IWD.InfinityScroll.hashPage <= IWD.InfinityScroll.pagesCount) { 193 if(IWD.InfinityScroll.uploadMode == 'button' || IWD.InfinityScroll.uploadMode == 'scroll'){ 194 IWD.InfinityScroll.scrollToBlockTop = IWD.InfinityScroll.hashPage; 195 196 for (var i = 1; i < IWD.InfinityScroll.hashPage; i++) { 197 IWD.InfinityScroll.loadingFlag = false; 198 IWD.InfinityScroll.uploadProducts(); 199 } 200 201 IWD.InfinityScroll.preLoad = 0; 202 } 203 } 204 205 return true; 206 }, 207 208 getHashParams: function () { 209 var hash = window.location.hash; 210 211 if (hash != "") { 212 var regPage = /[?|&|#]page=([0-9]+)/i; 213 var param = regPage.exec(hash); 214 IWD.InfinityScroll.hashPage = (!param || !param[1]) ? 1 : param[1]; 215 } 216 }, 217 218 setHashParams: function (viewing_page) { 219 if (IWD.InfinityScroll.isSmartUrl && iwdChangeHashFlag) { 220 window.location.hash = "page=" + viewing_page; 221 } 222 }, 223 224 viewingPage: function () { 225 if (IWD.InfinityScroll.currentPage <= 1) 226 return 1; 227 228 for (var i = 2; i <= IWD.InfinityScroll.currentPage; i++) { 229 var elem = $ji("#iwd_uploaded_page_" + i); 230 var elemTop = elem.offset().top; 231 var elemBottom = elemTop + elem.height(); 232 if (elemTop <= $ji(window).scrollTop() && elemBottom > $ji(window).scrollTop()) 233 return i; 234 } 235 236 return 1; 237 }, 238 239 addUploadBlock: function () { 240 $ji(IWD.InfinityScroll.div_toolbar_bottom).before($ji("#iwd_load_next_page").show()); 241 }, 242 243 prepare: function () { 244 IWD.InfinityScroll.addUploadBlock(); 245 246 if (IWD.InfinityScroll.isSmartUrl) { 247 IWD.InfinityScroll.smartUrl(); 248 } 249 250 if (IWD.InfinityScroll.preLoad && !IWD.InfinityScroll.isButtonMode) { 251 IWD.InfinityScroll.uploadProducts(); 252 } 253 }, 254 255 addLoadingMask: function () { 256 $ji(IWD.InfinityScroll.div_category_products).append('<div id="iwd_page_loading_mask"><div class="loader"></div></div>'); 257 $ji("#iwd_page_loading_mask").show(); 258 }, 259 260 getUrlParam: function(url, key){ 261 var results = new RegExp('[\?&]' + key + '=([^&#]*)').exec(url); 262 if(results) 263 return results[1] || null; 264 return null 265 }, 266 267 setUrlParam: function (url, key, value) { 268 var re = new RegExp("([?&])" + key + "=.*?(&|$)", "i"); 269 var separator = url.indexOf('?') !== -1 ? "&" : "?"; 270 if (url.match(re)){ 271 return url.replace(re, '$1' + key + "=" + value + '$2'); 272 } else { 273 var _url = url.split('#'); 274 if(_url[1]) 275 return _url[0] + separator + key + "=" + value + "#" + _url[1]; 276 return _url[0] + separator + key + "=" + value; 277 } 278 }, 279 280 /****************** M O D E *******************/ 281 scroll: function () { 282 IWD.InfinityScroll.prepare(); 283 284 $ji(window).scroll(function () { 285 if (!IWD.InfinityScroll.loadingFlag && IWD.InfinityScroll.currentPage < IWD.InfinityScroll.pagesCount) { 286 var currentPageBlock = $ji("#iwd_uploaded_page_"+IWD.InfinityScroll.currentPage); 287 if(currentPageBlock.length && currentPageBlock.offset().top < $ji(window).scrollTop() + $ji(window).height()) { 288 //if ((($ji(window).scrollTop() + $ji(window).height()) + IWD.InfinityScroll.whenBeginLoad) >= $ji(document).height()) { 289 IWD.InfinityScroll.uploadProducts(); 290 } 291 } 292 var viewing_page = IWD.InfinityScroll.viewingPage(); 293 IWD.InfinityScroll.setHashParams(viewing_page); 294 }); 295 }, 296 297 button: function () { 298 IWD.InfinityScroll.prepare(); 299 300 $ji('#iwd_load_more_pages').on('click', function () { 301 IWD.InfinityScroll.uploadProducts(); 302 }); 303 304 $ji(window).scroll(function () { 305 var viewing_page = IWD.InfinityScroll.viewingPage(); 306 IWD.InfinityScroll.setHashParams(viewing_page); 307 }); 308 }, 309 310 pagination: function () { 311 $ji(IWD.InfinityScroll.paginationPath).on('click', function (event) { 312 event.preventDefault(); 313 314 var url = $ji(this).attr('href'); 315 316 IWD.InfinityScroll.pagination_uploadPage(url); 317 }); 318 }, 319 320 pagination_uploadPage: function(url){ 321 IWD.InfinityScroll.addLoadingMask(); 322 $ji.post( 323 url, 324 { 325 326 }, 327 function (response) { 328 //console.log($ji(response).find(IWD.InfinityScroll.div_category_products +', '+ IWD.InfinityScroll.div_category_products+'+script')); 329 //return false;
330 $ji(IWD.InfinityScroll.div_category_products).html(''); 331 $ji(IWD.InfinityScroll.div_category_products).append($ji(response).find(IWD.InfinityScroll.div_category_products + ' > *' +', '+ IWD.InfinityScroll.div_category_products+'+script')). 332 promise(). 333 done(function(){ 334 IWD.InfinityScroll.pagination(); 335 336 var page = IWD.InfinityScroll.getUrlParam(url, 'p'); 337 var viewing_page = !page ? 1 : page; 338 IWD.InfinityScroll.setHashParams(viewing_page); 339 340 IWD.InfinityScroll.paginationAfter(); 341 jQuery(window).resize(); 342 window.dispatchEvent(new Event('resize')); 343 // $j(document).trigger('product-media-loaded', ProductMediaManager); 344 // IWD.QuickView.Decorator.updateButton(); 345 }); 346 347 } 348 ); 349 //$ji(IWD.InfinityScroll.div_category_products).load( 350 // url + " " + IWD.InfinityScroll.div_category_products + " > *", 351 // {}, 352 // function () { 353 // IWD.InfinityScroll.pagination(); 354 // 355 // var page = IWD.InfinityScroll.getUrlParam(url, 'p'); 356 // var viewing_page = !page ? 1 : page; 357 // IWD.InfinityScroll.setHashParams(viewing_page); 358 // 359 // IWD.InfinityScroll.paginationAfter(); 360 // } 361 //); 362 }, 363 364 //custom logic after load page 365 scrollAfter: function () { 366 //by infortis them 367 //$ji(IWD.InfinityScroll.div_category_products).waitForImages(function() { 368 // setGridItemsEqualHeight($ji); 369 //}); 370 }, 371 buttonAfter: function () { 372 //by infortis them 373 //$ji(IWD.InfinityScroll.div_category_products).waitForImages(function() { 374 // setGridItemsEqualHeight($ji); 375 //}); 376 }, 377 paginationAfter: function () { 378 //by infortis them 379 //$ji(IWD.InfinityScroll.div_category_products).waitForImages(function() { 380 // setGridItemsEqualHeight($ji); 381 // setGridItemsEqualHeight($ji); 382 //}); 383 } 384};
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.