1new class ProductsOfDay extends RsJsCore.classes.component { 2 constructor() { 3 super(); 4 this.timer = null; 5 } 6 7 initSwipers() { 8 if (document.querySelector('.swiper-products-of-day')) { 9 document.querySelectorAll('.swiper-products-of-day').forEach(element => { 10 const swiper = new Swiper(element, { 11 slidesPerView: 1, 12 spaceBetween: 0, 13 navigation: { 14 nextEl: '.carousel__arrow--next', 15 prevEl: '.carousel__arrow--prev', 16 }, 17 breakpoints: { 18 1200: { 19 spaceBetween: 0, 20 slidesPerView: 1 21 }, 22 992: { 23 spaceBetween: 12, 24 slidesPerView: 3 25 }, 26 768: { 27 slidesPerView: 2, 28 spaceBetween: 12 29 }, 30 } 31 }); 32 }); 33 } 34 } 35 36 updateTimer = () => { 37 clearTimeout(this.timer); 38 39 if (document.querySelector('.product-card-timer__header-counter')) { 40 document.querySelectorAll('.product-card-timer__header-counter').forEach(element => { 41 let days = parseInt(element.dataset.days); 42 let hours = parseInt(element.dataset.hours); 43 let minutes = parseInt(element.dataset.minutes); 44 let seconds = parseInt(element.dataset.seconds); 45 46 let delta = (seconds + (minutes * 60) + (hours * 60 * 60) + (days * 60 * 60 * 24)) - 1; 47 48 let arr = {}; 49 50 if (delta > 0) { 51 arr['days'] = 0; 52 if (delta > (60 * 60 * 24)) { 53 arr['days'] = Math.floor(delta / (60 * 60 * 24)); 54 } 55 56 let last_time = 0; 57 58 if (arr['days'] > 0) { 59 last_time = arr['days'] * (60 * 60 * 24); 60 } 61 62 if (arr['days'] < 10) { 63 arr['days'] = "0" + arr['days']; 64 } 65 66 delta = delta - last_time; 67 68 arr['hours'] = 0; 69 70 if (delta > (60 * 60)) { 71 arr['hours'] = Math.floor(delta / (60 * 60)); 72 } 73 74 last_time = 0; 75 76 if (arr['hours'] > 0) { 77 last_time = arr['hours'] * (60 * 60); 78 } 79 80 if (arr['hours'] < 10) { 81 arr['hours'] = "0" + arr['hours']; 82 } 83 84 delta = delta - last_time; 85 86 arr['minutes'] = 0; 87 if (delta > (60)) { 88 arr['minutes'] = Math.floor(delta / (60)); 89 } 90 91 last_time = 0; 92 93 if (arr['minutes'] > 0) { 94 last_time = arr['minutes'] * (60); 95 } 96 97 if (arr['minutes'] < 10) { 98 arr['minutes'] = "0" + arr['minutes']; 99 } 100 101 delta = delta - last_time; 102 103 arr['seconds'] = delta; 104 if (arr['seconds'] < 10) { 105 arr['seconds'] = "0" + arr['seconds']; 106 } 107 108 element.dataset.days = arr['days']; 109 element.dataset.hours = arr['hours']; 110 element.dataset.minutes = arr['minutes']; 111 element.dataset.seconds = arr['seconds']; 112 113 element.innerText = arr['hours'] + ' : ' + arr['hours'] + ' : ' + arr['seconds']; 114 115 } else { 116 element.innerText = '00 : 00 : 00'; 117 } 118 }); 119 } 120 121 this.timer = setTimeout(this.updateTimer, 1000); 122 } 123 124 onDocumentReady() { 125 this.initSwipers(); 126 127 clearTimeout(this.timer); 128 this.timer = setTimeout(this.updateTimer, 1000); 129 } 130};
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.