|
|
|
|
@ -44,64 +44,67 @@ $(document).ready(function () { |
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
//===========REVIEWS===============
|
|
|
|
|
const $reviews = $('.reviews'); |
|
|
|
|
const $reviewsWrap = $('.reviews__wrap'); |
|
|
|
|
const reviewImages = $reviews.data('review-images').split(','); |
|
|
|
|
const reviewsHeight = $reviews.height(); |
|
|
|
|
let reviewsScrollInterval = null; |
|
|
|
|
let reviewsScrollActive = false; |
|
|
|
|
let currentReviewNum = 10; |
|
|
|
|
let reviewsLoading = 0; |
|
|
|
|
const reviewsScrollFn = () => { |
|
|
|
|
if(! reviewsScrollActive){ |
|
|
|
|
clearInterval(reviewsScrollInterval); |
|
|
|
|
reviewsScrollInterval = null; |
|
|
|
|
} |
|
|
|
|
for(let item of $reviewsWrap.find('.reviews__item')){ |
|
|
|
|
let $item = $(item); |
|
|
|
|
if(window.LIL_STORE.isIndexPage){ |
|
|
|
|
const $reviews = $('.reviews'); |
|
|
|
|
const $reviewsWrap = $('.reviews__wrap'); |
|
|
|
|
const reviewImages = $reviews.data('review-images').split(','); |
|
|
|
|
const reviewsHeight = $reviews.height(); |
|
|
|
|
let reviewsScrollInterval = null; |
|
|
|
|
let reviewsScrollActive = false; |
|
|
|
|
let currentReviewNum = 10; |
|
|
|
|
let reviewsLoading = 0; |
|
|
|
|
const reviewsScrollFn = () => { |
|
|
|
|
if(! reviewsScrollActive){ |
|
|
|
|
clearInterval(reviewsScrollInterval); |
|
|
|
|
reviewsScrollInterval = null; |
|
|
|
|
} |
|
|
|
|
for(let item of $reviewsWrap.find('.reviews__item')){ |
|
|
|
|
let $item = $(item); |
|
|
|
|
let top = parseFloat($reviewsWrap.css('top')); |
|
|
|
|
let marginTop = parseFloat($reviewsWrap.css('marginTop')); |
|
|
|
|
if(marginTop + top + $item.outerHeight(true) >= 0){ |
|
|
|
|
break; |
|
|
|
|
} |
|
|
|
|
$reviewsWrap.css('marginTop', (marginTop + $item.outerHeight(true)) + 'px'); |
|
|
|
|
$item.remove(); |
|
|
|
|
} |
|
|
|
|
let top = parseFloat($reviewsWrap.css('top')); |
|
|
|
|
let marginTop = parseFloat($reviewsWrap.css('marginTop')); |
|
|
|
|
if(marginTop + top + $item.outerHeight(true) >= 0){ |
|
|
|
|
break; |
|
|
|
|
} |
|
|
|
|
$reviewsWrap.css('marginTop', (marginTop + $item.outerHeight(true)) + 'px'); |
|
|
|
|
$item.remove(); |
|
|
|
|
} |
|
|
|
|
let top = parseFloat($reviewsWrap.css('top')); |
|
|
|
|
let marginTop = parseFloat($reviewsWrap.css('marginTop')); |
|
|
|
|
$reviewsWrap.css('top', top - 100 + 'px'); |
|
|
|
|
if(($reviewsWrap.height() + top + marginTop < reviewsHeight + 500) && ! reviewsLoading){ |
|
|
|
|
for(let i=0; i<5; i++){ |
|
|
|
|
currentReviewNum = (currentReviewNum >= (reviewImages.length - 1)) ? 0 : (currentReviewNum + 1); |
|
|
|
|
let $img = $(`<img class="reviews__item">`); |
|
|
|
|
$img[0].src = `${window.LIL_STORE.staticUrl}img/reviews/${reviewImages[currentReviewNum]}.png`; |
|
|
|
|
reviewsLoading++; |
|
|
|
|
$reviewsWrap.css('top', top - 100 + 'px'); |
|
|
|
|
if(($reviewsWrap.height() + top + marginTop < reviewsHeight + 500) && ! reviewsLoading){ |
|
|
|
|
for(let i=0; i<5; i++){ |
|
|
|
|
currentReviewNum = (currentReviewNum >= (reviewImages.length - 1)) ? 0 : (currentReviewNum + 1); |
|
|
|
|
let $img = $(`<img class="reviews__item">`); |
|
|
|
|
$img[0].src = `${window.LIL_STORE.staticUrl}img/reviews/${reviewImages[currentReviewNum]}.png`; |
|
|
|
|
reviewsLoading++; |
|
|
|
|
|
|
|
|
|
$img[0].onload = () => { |
|
|
|
|
reviewsLoading--; |
|
|
|
|
$reviewsWrap.append($img); |
|
|
|
|
}; |
|
|
|
|
$img[0].onload = () => { |
|
|
|
|
reviewsLoading--; |
|
|
|
|
$reviewsWrap.append($img); |
|
|
|
|
}; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
const checkScroll = e => { |
|
|
|
|
const scrollTop = window.pageYOffset; |
|
|
|
|
const reviewsTop = $reviews[0].offsetTop; |
|
|
|
|
if(scrollTop + window.innerHeight > reviewsTop - 200 && scrollTop < reviewsTop + reviewsHeight){ |
|
|
|
|
if(! reviewsScrollInterval){ |
|
|
|
|
reviewsScrollActive = true; |
|
|
|
|
reviewsScrollInterval = setInterval(reviewsScrollFn, 3000); |
|
|
|
|
reviewsScrollFn(); |
|
|
|
|
const checkScroll = e => { |
|
|
|
|
const scrollTop = window.pageYOffset; |
|
|
|
|
const reviewsTop = $reviews[0].offsetTop; |
|
|
|
|
if(scrollTop + window.innerHeight > reviewsTop - 200 && scrollTop < reviewsTop + reviewsHeight){ |
|
|
|
|
if(! reviewsScrollInterval){ |
|
|
|
|
reviewsScrollActive = true; |
|
|
|
|
reviewsScrollInterval = setInterval(reviewsScrollFn, 3000); |
|
|
|
|
reviewsScrollFn(); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
else{ |
|
|
|
|
reviewsScrollActive = false; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
else{ |
|
|
|
|
reviewsScrollActive = false; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
$(window).scroll(checkScroll); |
|
|
|
|
checkScroll(); |
|
|
|
|
$(window).scroll(checkScroll); |
|
|
|
|
checkScroll(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if(window.LIL_STORE.flags.isReferralUrl){ |
|
|
|
|
if(window.LIL_STORE.user.id){ |
|
|
|
|
|