1jQuery(function($){ 2 "use strict"; 3 4 ts_register_carousel( null, $ ); 5 6 /*** Load Products In Category Tab ***/ 7 var ts_product_in_category_tab_data = []; 8 9 /* Change tab */ 10 $('.ts-product-in-category-tab-wrapper .column-tabs .tab-item, .ts-product-in-product-type-tab-wrapper .column-tabs .tab-item').on('click', function(){ 11 var element = $(this).parents('.ts-product-in-category-tab-wrapper'); 12 var is_product_type_tab = false; 13 if( element.length == 0 ){ 14 element = $(this).parents('.ts-product-in-product-type-tab-wrapper'); 15 is_product_type_tab = true; 16 } 17 18 var element_top = element.offset().top; 19 if( element_top > $(window).scrollTop() ){ 20 var admin_bar_height = $('#wpadminbar').length > 0?$('#wpadminbar').outerHeight():0; 21 var sticky_height = $('.is-sticky .header-sticky').length > 0?$('.is-sticky .header-sticky').outerHeight():0; 22 $('body, html').animate({ 23 scrollTop: element_top - sticky_height - admin_bar_height - 20 24 }, 500); 25 } 26 27 if( $(this).hasClass('current') || element.find('.column-products').hasClass('loading') ){ 28 return; 29 } 30 31 element.removeClass('generated-slider'); 32 33 var element_id = element.attr('id'); 34 var atts = element.data('atts'); 35 if( !is_product_type_tab ){ 36 var product_cat = $(this).data('product_cat'); 37 var shop_more_link = $(this).data('link'); 38 var is_general_tab = $(this).hasClass('general-tab')?1:0; 39 } 40 else{ 41 var product_cat = atts.product_cats; 42 var is_general_tab = 0; 43 atts.product_type = $(this).data('product_type'); 44 element.find('.column-products').removeClass('recent sale featured best_selling top_rated mixed_order').addClass(atts.product_type); 45 } 46 47 if( !is_product_type_tab && element.find('a.shop-more-button').length > 0 ){ 48 element.find('a.shop-more-button').attr('href', shop_more_link); 49 } 50 51 element.find('.column-tabs .tab-item').removeClass('current'); 52 $(this).addClass('current'); 53 54 /* Check cache */ 55 var tab_data_index = element_id + '-' + product_cat.toString().split(',').join('-'); 56 if( is_product_type_tab ){ 57 tab_data_index += '-' + atts.product_type; 58 } 59 if( ts_product_in_category_tab_data[tab_data_index] != undefined ){ 60 element.find('.column-products .products').remove(); 61 element.find('.column-products').append( ts_product_in_category_tab_data[tab_data_index] ).hide().fadeIn(600); 62 63 /* Shop more button handle */ 64 if( !is_product_type_tab ){ 65 ts_product_in_category_tab_shop_more_handle( element, atts ); 66 } 67 68 /* Generate slider */ 69 ts_register_carousel( element.parent(), $ ); 70 71 return; 72 } 73 74 element.find('.column-products').addClass('loading'); 75 76 $.ajax({ 77 type : "POST", 78 timeout : 30000, 79 url : themesky_params.ajax_uri, 80 data : {action: 'ts_get_product_content_in_category_tab', atts: atts, product_cat: product_cat, is_general_tab: is_general_tab}, 81 error: function(xhr,err){ 82 83 }, 84 success: function(response) { 85 if( response ){ 86 element.find('.column-products .products').remove(); 87 element.find('.column-products').append( response ).hide().fadeIn(600); 88 /* save cache */ 89 if( element.find('.counter-wrapper').length == 0 ){ 90 ts_product_in_category_tab_data[tab_data_index] = response; 91 } 92 else{ 93 ts_counter( element.find('.counter-wrapper') ); 94 } 95 /* Shop more button handle */ 96 if( !is_product_type_tab ){ 97 ts_product_in_category_tab_shop_more_handle( element, atts ); 98 } 99 /* Generate slider */ 100 ts_register_carousel( element.parent(), $ ); 101 } 102 element.find('.column-products').removeClass('loading'); 103 } 104 }); 105 }); 106 107 function ts_product_in_category_tab_shop_more_handle(element, atts){ 108 var hide_shop_more = element.find('.hide-shop-more').length; 109 element.find('.hide-shop-more').remove(); 110 111 if( element.find('.tab-item.current').hasClass('general-tab') && atts.show_shop_more_general_tab == 0 ){ 112 hide_shop_more = true; 113 } 114 115 if( element.find('.products .product').length == 0 ){ 116 hide_shop_more = true; 117 } 118 119 if( atts.show_shop_more_button == 1 ){ 120 if( hide_shop_more ){ 121 element.find('.shop-more').addClass('hidden'); 122 element.removeClass('has-shop-more-button'); 123 } 124 else { 125 element.find('.shop-more').removeClass('hidden'); 126 element.addClass('has-shop-more-button'); 127 } 128 } 129 } 130 131 $('.ts-product-in-category-tab-wrapper').each(function(){ 132 var element = $(this); 133 var atts = element.data('atts'); 134 ts_product_in_category_tab_shop_more_handle( element, atts ); 135 }); 136 137 setTimeout(function(){ 138 /*** Blog Shortcode ***/ 139 $('.ts-blogs-wrapper.ts-shortcode').each(function(){ 140 var element = $(this); 141 var atts = element.data('atts'); 142 143 var is_masonry = typeof $.fn.isotope == 'function' && element.hasClass('ts-masonry') ? true : false;
144 145 /* Show more */ 146 element.find('a.load-more').on('click', function(){ 147 var button = $(this); 148 if( button.hasClass('loading') ){ 149 return false; 150 } 151 152 button.addClass('loading'); 153 var paged = button.attr('data-paged'); 154 var total_pages = button.attr('data-total_pages'); 155 156 $.ajax({ 157 type : "POST", 158 timeout : 30000, 159 url : themesky_params.ajax_uri, 160 data : {action: 'ts_blogs_load_items', paged: paged, atts : atts}, 161 error: function(xhr,err){ 162 163 }, 164 success: function(response) { 165 if( paged == total_pages ){ 166 button.parent().remove(); 167 } 168 else{ 169 button.removeClass('loading'); 170 button.attr('data-paged', ++paged); 171 } 172 if( response != 0 && response != '' ){ 173 if( is_masonry ){ 174 element.find('.blogs').isotope('insert', $(response)); 175 setTimeout(function(){ 176 element.find('.blogs').isotope('layout'); 177 }, 500); 178 } 179 else{ 180 element.find('.blogs').append(response); 181 } 182 183 ts_register_carousel( element.parent(), $ ); 184 } 185 else{ /* No results */ 186 button.parent().remove(); 187 } 188 } 189 }); 190 191 return false; 192 }); 193 }); 194 195 }, 200); 196 197 /*** Counter ***/ 198 function ts_counter( elements ){ 199 if( elements.length > 0 ){ 200 var interval = setInterval(function(){ 201 elements.each(function(index, element){ 202 var wrapper = jQuery(element); 203 var second = parseInt( wrapper.find('.seconds .number').text() ); 204 if( second > 0 ){ 205 second--; 206 second = ( second < 10 )? zeroise(second, 2) : second.toString(); 207 wrapper.find('.seconds .number').text(second); 208 return; 209 } 210 211 var delta = 0; 212 var time_day = 60 * 60 * 24; 213 var time_hour = 60 * 60; 214 var time_minute = 60; 215 216 var day = parseInt( wrapper.find('.days .number').text() ); 217 var hour = parseInt( wrapper.find('.hours .number').text() ); 218 var minute = parseInt( wrapper.find('.minutes .number').text() ); 219 220 if( day != 0 || hour != 0 || minute != 0 || second != 0 ){ 221 delta = (day * time_day) + (hour * time_hour) + (minute * time_minute) + second; 222 delta--; 223 224 day = Math.floor(delta / time_day); 225 delta -= day * time_day; 226 227 hour = Math.floor(delta / time_hour); 228 delta -= hour * time_hour; 229 230 minute = Math.floor(delta / time_minute); 231 delta -= minute * time_minute; 232 233 second = delta > 0?delta:0; 234 235 day = ( day < 10 )? zeroise(day, 2) : day.toString(); 236 hour = ( hour < 10 )? zeroise(hour, 2) : hour.toString(); 237 minute = ( minute < 10 )? zeroise(minute, 2) : minute.toString(); 238 second = ( second < 10 )? zeroise(second, 2) : second.toString(); 239 240 wrapper.find('.days .number').text(day); 241 wrapper.find('.hours .number').text(hour); 242 wrapper.find('.minutes .number').text(minute); 243 wrapper.find('.seconds .number').text(second); 244 } 245 }); 246 }, 1000); 247 } 248 } 249 250 ts_counter( $('.product .counter-wrapper, .ts-countdown .counter-wrapper') ); 251 252 /*** Portfolio load more ***/ 253 $('.ts-portfolio-wrapper .load-more').on('click', function(){ 254 var element = $(this).parents('.ts-portfolio-wrapper'); 255 256 var atts = element.data('atts'); 257 var button = $(this); 258 if( button.hasClass('loading') ){ 259 return false; 260 } 261 262 button.addClass('loading'); 263 var paged = button.attr('data-paged'); 264 var total_pages = button.attr('data-total_pages'); 265 266 $.ajax({ 267 type: "POST", 268 timeout: 30000, 269 url: themesky_params.ajax_uri, 270 data: { action: 'ts_portfolio_load_items', paged: paged, atts: atts }, 271 error: function(xhr, err) { 272 273 }, 274 success: function(response) { 275 if( paged == total_pages ){ 276 button.parent().remove(); 277 } else { 278 button.removeClass('loading'); 279 button.attr('data-paged', ++paged); 280 } 281 282 if( response != 0 && response != '' ){ 283 var selector = element.find('.portfolio-wrapper-content'); 284 if( typeof $.fn.isotope == 'function'){ 285 selector.isotope('insert', $(response)); 286 element.find('.filter-bar li.current').trigger('click'); 287 setTimeout(function(){ 288 selector.isotope('layout'); 289 }, 500); 290 } 291 } 292 else { /* No results */ 293 button.parent().remove(); 294 } 295 } 296 }); 297 298 return false;
299 }); 300 301 /* Porfolio filter bar */ 302 $(document).on('click', '.ts-portfolio-wrapper .filter-bar li', function(){ 303 $(this).siblings('li').removeClass('current'); 304 $(this).addClass('current'); 305 306 var element = $(this).parents('.ts-portfolio-wrapper'); 307 var data_filter = $(this).data('filter'); 308 309 element.find('.portfolio-wrapper-content').isotope({ filter: data_filter }); 310 }); 311 312 /* Update like */ 313 $(document).on('click', '.ts-portfolio-wrapper .like, .single-portfolio .portfolio-like', function(e){ 314 if( $(this).hasClass('portfolio-like') ){ 315 var _this = $(this).find('.ic-like'); 316 } else { 317 var _this = $(this); 318 } 319 320 if( _this.hasClass('loading') ){ 321 return false; 322 } 323 _this.addClass('loading'); 324 325 var already_like = _this.hasClass('already-like'); 326 var is_single = _this.hasClass('ic-like'); 327 328 var post_id = _this.data('post_id'); 329 $.ajax({ 330 type : "POST", 331 timeout : 30000, 332 url : themesky_params.ajax_uri, 333 data : {action: 'ts_portfolio_update_like', post_id: post_id}, 334 error: function(xhr,err){ 335 _this.removeClass('loading'); 336 }, 337 success: function(response) { 338 if( response != '' ){ 339 if( already_like ){ 340 _this.removeClass('already-like'); 341 if( !is_single ){ 342 _this.attr('title', _this.data('like-title')); 343 } 344 } 345 else{ 346 _this.addClass('already-like'); 347 if( !is_single ){ 348 _this.attr('title', _this.data('liked-title')); 349 } 350 } 351 if( is_single ){ 352 var single_plural = '1' == response ? 'single' : 'plural'; 353 response += ' ' + _this.siblings('.like-num').data(single_plural); 354 _this.siblings('.like-num').text(response); 355 } 356 } 357 _this.removeClass('loading'); 358 } 359 }); 360 361 return false; 362 }); 363 364 /*** Widgets ***/ 365 /* Custom WP Widget Categories Dropdown */ 366 $('.widget_categories > ul').each(function(index, ele){ 367 var _this = $(ele); 368 var icon_toggle_html = '<span class="icon-toggle"></span>'; 369 var ul_child = _this.find('ul.children'); 370 ul_child.hide(); 371 ul_child.closest('li').addClass('cat-parent'); 372 ul_child.before( icon_toggle_html ); 373 }); 374 375 $('.widget_categories span.icon-toggle').on('click', function(){ 376 var parent_li = $(this).parent('li.cat-parent'); 377 if( !parent_li.hasClass('active') ){ 378 parent_li.find('ul.children:first').slideDown(); 379 parent_li.addClass('active'); 380 } 381 else{ 382 parent_li.find('ul.children').slideUp(); 383 parent_li.removeClass('active'); 384 parent_li.find('li.cat-parent').removeClass('active'); 385 } 386 }); 387 388 $('.widget_categories li.current-cat').parents('ul.children').siblings('.icon-toggle').trigger('click'); 389 $('.widget_categories li.current-cat.cat-parent > .icon-toggle').trigger('click'); 390 391 /* Product Categories widget */ 392 $('.ts-product-categories-widget .icon-toggle').on('click', function(){ 393 var parent_li = $(this).parent('li.cat-parent'); 394 if( !parent_li.hasClass('active') ){ 395 parent_li.addClass('active'); 396 parent_li.find('ul.children:first').slideDown(); 397 } 398 else{ 399 parent_li.find('ul.children').slideUp(); 400 parent_li.removeClass('active'); 401 parent_li.find('li.cat-parent').removeClass('active'); 402 } 403 }); 404 405 $('.ts-product-categories-widget').each(function(){ 406 var element = $(this); 407 element.find('ul.children').parent('li').addClass('cat-parent'); 408 element.find('li.current.cat-parent > .icon-toggle').trigger('click'); 409 element.find('li.current').parents('ul.children').siblings('.icon-toggle').trigger('click'); 410 }); 411 412 /* Product Filter By Availability */ 413 $('.product-filter-by-availability-wrapper > ul input[type="checkbox"]').on('change', function(){ 414 $(this).parent('li').siblings('li').find('input[type="checkbox"]').attr('checked', false); 415 var val = ''; 416 if( $(this).is(':checked') ){ 417 val = $(this).val(); 418 } 419 var form = $(this).closest('ul').siblings('form'); 420 if( val != '' ){ 421 form.find('input[name="stock"]').val(val); 422 } 423 else{ 424 form.find('input[name="stock"]').remove(); 425 } 426 form.submit(); 427 }); 428 429 /* Product Filter By Brand */ 430 $('.product-filter-by-brand-wrapper ul input[type="checkbox"]').on('change', function(){ 431 var wrapper = $(this).parents('.product-filter-by-brand-wrapper'); 432 var query_type = wrapper.find('> .query-type').val(); 433 var checked = $(this).is(':checked'); 434 var val = new Array(); 435 if( query_type == 'or' ){ 436 wrapper.find('ul input[type="checkbox"]').attr('checked', false); 437 if( checked ){ 438 $(this).off('change'); 439 $(this).attr('checked', true); 440 val.push( $(this).val() ); 441 } 442 } 443 else{ 444 wrapper.find('ul input[type="checkbox"]:checked').each(function(index, ele){ 445 val.push( $(ele).val() ); 446 }); 447 } 448 val = val.join(','); 449 var form = wrapper.find('form'); 450 if( val != '' ){ 451 form.find('input[name="product_brand"]').val( val ); 452 } 453 else{ 454 form.find('input[name="product_brand"]').remove(); 455 } 456 form.submit(); 457 }); 458}); 459 460function zeroise( str, max ){ 461 str = str.toString(); 462 return str.length < max ? zeroise('0' + str, max) : str; 463} 464 465class TS_Carousel{ 466 register( $scope, $ ){ 467 var carousel = this; 468 469 /* [wrapper selector, slider selector, slider options (remove dynamic columns at last)] */ 470 var data = [ 471 ['.ts-product-wrapper.grid', '.products', { breakpoints:{0:{slidesPerView:1},305:{slidesPerView:2},615:{slidesPerView:3},1000:{slidesPerView:4}} }] 472 ,['.ts-product-wrapper.list', '.products', { breakpoints:{0:{slidesPerView:1},600:{slidesPerView:2},1100:{slidesPerView:3}} }] 473 ,['.ts-product-in-category-tab-wrapper.grid, .ts-product-in-product-type-tab-wrapper.grid', '.products', { breakpoints:{0:{slidesPerView:1},305:{slidesPerView:2},615:{slidesPerView:3},1000:{slidesPerView:4}} }] 474 ,['.ts-product-in-category-tab-wrapper.list, .ts-product-in-product-type-tab-wrapper.list', '.products', { breakpoints:{0:{slidesPerView:1},600:{slidesPerView:2},1100:{slidesPerView:3}} }] 475 ,['.ts-product-deals-wrapper.grid', '.products', { breakpoints:{0:{slidesPerView:1},305:{slidesPerView:2},615:{slidesPerView:3},1000:{slidesPerView:4}} }] 476 ,['.ts-product-deals-wrapper.list', '.products', { breakpoints:{0:{slidesPerView:1},600:{slidesPerView:2},1100:{slidesPerView:3}} }] 477 ,['.ts-product-category-wrapper.style-1', '.products', { breakpoints:{0:{slidesPerView:1},300:{slidesPerView:2},450:{slidesPerView:3},600:{slidesPerView:4},750:{slidesPerView:5},1000:{slidesPerView:6},1090:{slidesPerView:7}} }] 478 ,['.ts-product-category-wrapper.style-2', '.products', { breakpoints:{0:{slidesPerView:1},320:{slidesPerView:2},720:{slidesPerView:3},960:{slidesPerView:4},1200:{slidesPerView:5}} }] 479 ,['.ts-product-category-wrapper.style-3', '.products', { breakpoints:{0:{slidesPerView:1},600:{slidesPerView:2},900:{slidesPerView:3}
479,1200:{slidesPerView:4}} }] 480 ,['.ts-product-category-wrapper.show-icon', '.products', { breakpoints:{0:{slidesPerView:1},260:{slidesPerView:2},340:{slidesPerView:3},480:{slidesPerView:4},600:{slidesPerView:5},840:{slidesPerView:6},980:{slidesPerView:7},1120:{slidesPerView:8},1200:{slidesPerView:9}} }] 481 ,['.ts-product-brand-wrapper', '.content-wrapper', { breakpoints:{0:{slidesPerView:1},320:{slidesPerView:2},600:{slidesPerView:3},800:{slidesPerView:4},1100:{slidesPerView:5}} }] 482 ,['.ts-products-widget-wrapper', null, { spaceBetween: 10, breakpoints:{0:{slidesPerView:1}} }] 483 ,['.ts-blogs-wrapper', '.blogs', { breakpoints:{0:{slidesPerView:1},760:{slidesPerView:2},1200:{slidesPerView:3}} }] 484 ,['.ts-logo-slider-wrapper', '.items', { breakpoints:{0:{slidesPerView:1},280:{slidesPerView:2},540:{slidesPerView:3},700:{slidesPerView:4},900:{slidesPerView:5},1100:{slidesPerView:6},1400:{slidesPerView:7},1600:{slidesPerView:8}} }] 485 ,['.ts-team-members', '.items', { breakpoints:{0:{slidesPerView:1},300:{slidesPerView:2},620:{slidesPerView:3},1000:{slidesPerView:4}} }] 486 ,['.ts-instagram-wrapper', null, { breakpoints: {0:{slidesPerView:1},280:{slidesPerView:2},420:{slidesPerView:3},560:{slidesPerView:4},720:{slidesPerView:5},1000:{slidesPerView:6}} }] 487 ,['.ts-testimonial-wrapper', '.items', { breakpoints: {0:{slidesPerView:1},600:{slidesPerView:2},900:{slidesPerView:3}} }] 488 ,['.ts-portfolio-wrapper.ts-slider', '.portfolio-wrapper-content', { breakpoints: {0:{slidesPerView:1},600:{slidesPerView:2},1020:{slidesPerView:3}} }] 489 ,['.ts-blogs-widget-wrapper', null, { spaceBetween: 10, breakpoints: {0:{slidesPerView:1}} }] 490 ,['.ts-recent-comments-widget-wrapper', null, { spaceBetween: 10, breakpoints: {0:{slidesPerView:1}} }] 491 ,['.ts-blogs-wrapper .thumbnail.gallery', 'figure', { effect: 'fade', fadeEffect: {crossFade: true}, spaceBetween: 10, breakpoints:{0:{slidesPerView:1}}, simulateTouch: false, allowTouchMove: false, autoplay: true }] 492 ]; 493 494 $.each(data, function(index, value){ 495 carousel.run( value, $ ); 496 }); 497 } 498 499 run( data, $ ){ 500 $(data[0]).each(function( index ){ 501 if( ! $(this).hasClass('ts-slider') || $(this).hasClass('generated-slider') ){ 502 return; 503 } 504 505 var wrapper = $(this); 506 if( typeof data[1] != 'undefined' && data[1] != null ){ 507 var swiper = wrapper.find( data[1] ); 508 } else { 509 var swiper = wrapper; 510 } 511 512 if( swiper.find('> *').length <= 1 ){ 513 wrapper.removeClass('loading'); 514 wrapper.find('.loading').removeClass('loading'); 515 516 return; 517 } 518 519 var unique_class = 'swiper-'+ Math.floor( Math.random() * 10000 ) +'-'+ index; 520 var show_nav = typeof wrapper.attr('data-nav') != 'undefined' && wrapper.attr('data-nav') == 1?true:false; 521 var show_dots = typeof wrapper.attr('data-dots') != 'undefined' && wrapper.attr('data-dots') == 1?true:false; 522 var auto_play = typeof wrapper.attr('data-autoplay') != 'undefined' && wrapper.attr('data-autoplay') == 1?true:false; 523 var columns = typeof wrapper.attr('data-columns') != 'undefined'?parseInt(wrapper.attr('data-columns')):5; 524 var disable_responsive = typeof wrapper.attr('data-disable_responsive') != 'undefined' && wrapper.attr('data-disable_responsive') == 1?true:false; 525 526 wrapper.addClass('generated-slider'); 527 swiper.addClass('swiper ' + unique_class); 528 swiper.find('> *').addClass('swiper-slide'); 529 swiper.wrapInner('<div class="swiper-wrapper"></div>'); 530 531 var slider_options = { 532 loop: true 533 ,spaceBetween: 0 534 ,pauseOnMouseEnter: true 535 ,breakpointsBase: 'container' 536 ,on: { 537 init: function() { 538 wrapper.removeClass('loading'); 539 wrapper.find('.loading').removeClass('loading'); 540 } 541 } 542 }; 543 544 /* RTL */ 545 if( $('body').hasClass('rtl') ){ 546 swiper.attr( 'dir', 'rtl' ); 547 } 548 549 /* Navigation */ 550 if( show_nav ){ 551 swiper.append('<div class="swiper-button-prev"></div><div class="swiper-button-next"></div>'); 552 553 slider_options.navigation = { 554 nextEl: '.swiper-button-next' 555 ,prevEl: '.swiper-button-prev' 556 }; 557 } 558 559 /* Pagination */ 560 if( show_dots ){ 561 swiper.append('<div class="swiper-pagination"></div>'); 562 563 slider_options.pagination = { 564 el: '.swiper-pagination' 565 ,clickable: true 566 }; 567 } 568 569 /* Autoplay */ 570 if( auto_play ){ 571 slider_options.autoplay = { 572 delay: 4000 573 ,disableOnInteraction: false 574 ,pauseOnMouseEnter: true 575 }; 576 } 577 578 if( typeof data[2] != 'undefined' && data[2] != null ){ 579 $.extend( slider_options, data[2] ); 580 581 if( typeof data[2].breakpoints != 'undefined' ){ /* change breakpoints => add dynamic columns at last */ 582 switch( data[0] ){ 583 case '.ts-product-wrapper.grid': 584 slider_options.breakpoints[1100] = {slidesPerView:columns}; 585 break; 586 case '.ts-product-wrapper.list': 587 slider_options.breakpoints[1100] = {slidesPerView:columns}; 588 break; 589 case '.ts-product-in-category-tab-wrapper.grid, .ts-product-in-product-type-tab-wrapper.grid': 590 slider_options.breakpoints[1100] = {slidesPerView:columns}; 591 break; 592 case '.ts-product-in-category-tab-wrapper.list, .ts-product-in-product-type-tab-wrapper.list': 593 slider_options.breakpoints[1100] = {slidesPerView:columns}; 594 break; 595 case '.ts-product-deals-wrapper.grid': 596 slider_options.breakpoints[1100] = {slidesPerView:columns}; 597 break; 598 case '.ts-product-deals-wrapper.list': 599 slider_options.breakpoints[1100] = {slidesPerView:columns}; 600 break; 601 case '.ts-blogs-wrapper': 602 slider_options.breakpoints[1000] = {slidesPerView:columns}; 603 break; 604 case '.ts-product-category-wrapper.style-1': 605 slider_options.breakpoints[1200] = {slidesPerView:columns}; 606 break; 607 case '.ts-product-category-wrapper.style-2': 608 slider_options.breakpoints[1200] = {slidesPerView:columns}; 609 break; 610 case '.ts-product-category-wrapper.style-3': 611 slider_options.breakpoints[1200] = {slidesPerView:columns}; 612 break; 613 case '.ts-product-category-wrapper.show-icon': 614 slider_options.breakpoints[1200] = {slidesPerView:columns}; 615 break; 616 case '.ts-product-brand-wrapper': 617 slider_options.breakpoints[1100] = {slidesPerView:columns}; 618 break; 619 case '.ts-team-members': 620 slider_options.breakpoints[1000] = {slidesPerView:columns}; 621 break; 622 case '.ts-testimonial-wrapper': 623 slider_options.breakpoints[1200] = {slidesPerView:columns}; 624 break; 625 case '.ts-instagram-wrapper': 626 slider_options.breakpoints[1000] = {slidesPerView:columns}; 627 break; 628 case '.ts-portfolio-wrapper': 629 slider_options.breakpoints[1200] = {slidesPerView:columns}; 630 break; 631 default: 632 } 633 } 634 } 635 636 if( wrapper.hasClass('use-logo-setting') ){ /* Product Brands - Logos */ 637 var break_point = wrapper.data('break_point'); 638 var item = wrapper.data('item'); 639 640 if( break_point.length > 0 ){ 641 slider_options.breakpoints = {}; 642 for( var i = 0; i < break_point.length; i++ ){ 643 slider_options.breakpoints[ break_point[i] ] = { slidesPerView: item[i] }; 644 } 645 } 646 } 647 648 if( disable_responsive ){ 649 slider_options.breakpoints = {0:{slidesPerView: columns}}; 650 } 651 652 if( columns == 1 ){ 653 slider_options.breakpoints = {0:{slidesPerView:1}}; 654 } 655 656 if( data[0] == '.ts-blogs-wrapper' ){ 657 switch( columns ){ 658 case '1': 659 slider_options.breakpoints = {0:{slidesPerView:columns}}; 660 break; 661 case '2': 662 slider_options.breakpoints = {0:{slidesPerView:1},700:{slidesPerView:columns}}; 663 break; 664 default: 665 slider_options.breakpoints = {0:{slidesPerView:1},700:{slidesPerView:2},1000:{slidesPerView:columns}}; 666 break; 667 } 668 } 669 670 new Swiper( '.' + unique_class, slider_options ); 671 }); 672 } 673} 674 675function ts_register_carousel( $scope, $ ){ 676 var carousel = new TS_Carousel(); 677 678 setTimeout(function(){ 679 carousel.register( $scope, $ ); 680 }, 100); 681} 682 683function ts_register_masonry( $scope, $ ){ 684 if( typeof $.fn.isotope == 'function' ){ 685 /* Blog */ 686 setTimeout(function(){ 687 $('.ts-blogs-wrapper.ts-masonry .blogs').isotope(); 688 }, 10); 689 690 $('.ts-blogs-wrapper.ts-masonry').removeClass('loading'); 691 692 /* Portfolio */ 693 $('.ts-portfolio-wrapper.ts-masonry').each(function (i, el){ 694 var loadmore = $(el).data('loadmore'); 695 /* is Pagination */ 696 if( loadmore == '2' ){ 697 var selector = $(el).find('.portfolio-inner'); 698 } else { 699 var selector = $(el).find('.portfolio-wrapper-content'); 700 } 701 702 selector.isotope({ filter: '*' }); 703 $(el).removeClass('loading'); 704 }); 705 } 706} 707 708jQuery(window).on('elementor/frontend/init', function(){ 709 var elements = ['ts-products', 'ts-product-deals', 'ts-product-categories', 'ts-product-brands', 'ts-blogs'
710 ,'ts-logos', 'ts-team-members', 'ts-testimonial', 'ts-portfolios' 711 ,'ts-products-in-category-tabs', 'ts-products-in-product-type-tabs' 712 ,'wp-widget-ts_products', 'wp-widget-ts_blogs', 'wp-widget-ts_recent_comments', 'wp-widget-ts_instagram']; 713 jQuery.each(elements, function(index, name){ 714 elementorFrontend.hooks.addAction( 'frontend/element_ready/' + name + '.default', ts_register_carousel ); 715 }); 716 717 elements = ['ts-blogs', 'ts-portfolios']; 718 jQuery.each(elements, function(index, name){ 719 elementorFrontend.hooks.addAction( 'frontend/element_ready/' + name + '.default', ts_register_masonry ); 720 }); 721});
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.