/home/bdqbpbxa/demo-subdomains/smt.goodface.com.ua/wp-content/themes/smt/js/script.js
$(function() {
$(document).on('wpcf7mailsent', function() {
$('.wpcf7-form.sent').find('.form-block').removeClass('form-focus');
$('.before-sent').addClass('sent-hide').delay(250).queue(function() {
$('.after-sent').removeClass('sent-hide');
$('.before-sent').parent().css('height', $('.after-sent').outerHeight() + 'px');
$('.before-sent').dequeue();
});
});
$(document).on('wpcf7submit', function() {
if ($('.name-block').find('input').hasClass('wpcf7-not-valid')) {
$('.name-block').addClass('invalid-block');
} else {
$('.name-block').removeClass('invalid-block');
}
if ($('.tel-block').find('input').hasClass('wpcf7-not-valid')) {
$('.tel-block').addClass('invalid-block tel-invalid');
} else {
$('.tel-block').removeClass('invalid-block tel-invalid');
}
});
$('.more').on('click', function() {
let $this = $(this),
$editor = $this.siblings('.text-more');
$editor.css('max-height', $editor.attr('data-height') + 'px')
$this.addClass('more-hide').delay(250).queue(function() {
$this.remove();
$this.dequeue();
});
});
$('.file').find('input').on('change', function() {
let fileValue = $(this).val().replace(/.*(\/|\\)/, '');
$(this).closest('.file').find('.file-info').addClass('file-show');
$(this).closest('.file').find('.file-info').children('.text1').text(fileValue);
});
$('.file').find('.remove').on('click', function() {
$(this).closest('.file').find('.file-info').removeClass('file-show');
$(this).closest('.file').find('.file-info').children('.text1').text('');
});
$('.form').find('input').not(':input[type="file"], :input[type="submit"]').on('focusin', function() {
if (!$(this).val()) {
$(this).closest('.form-block').addClass('form-focus');
}
});
$('.form').find('input').not(':input[type="file"], :input[type="submit"]').on('focusout', function() {
if (!$(this).val()) {
$(this).closest('.form-block').removeClass('form-focus');
}
});
$('.anchor').on('click', function(event) {
event.preventDefault();
let anchor = $(this).attr('href');
$('html, body').scrollTop($(anchor).offset().top - $('.header').outerHeight());
});
$('.toggle-label').on('click', function() {
let $toggle = $(this).closest('.toggle');
$toggle.siblings().removeClass('toggle-open');
$toggle.siblings().find('.toggle-content').css('max-height', '');
$toggle.addClass('toggle-open');
$toggle.find('.toggle-content').css('max-height', $(this).closest('.toggle').find('.toggle-content').attr('data-height') + 'px');
});
$(document).on('click', '.model-slider .slick-next', function() {
if (window.matchMedia('screen and (min-width: 1280px)').matches) {
$('html, body').scrollTop(modelOffset - ($('.header').outerHeight()/2));
}
});
$('.model-slider').on('init', function(event, slick) {
if (slick.slideCount > 1) {
let currentSlideSeparator = (slick.currentSlide + 1 < 10) ? '0' : '';
let slideCountSeparator = (slick.slideCount < 10) ? '0' : '';
$('.models').find('.slider-counter').removeClass('slider-counter-hide');
$('.models').find('.current-number').text(currentSlideSeparator + (slick.currentSlide + 1));
$('.models').find('.total-number').text(slideCountSeparator + slick.slideCount);
} else {
$('.models').find('.slider-counter').addClass('slider-counter-hide');
}
});
$('.model-slider').slick({
speed: 1000,
prevArrow: '',
nextArrow: '<div class="slick-next"></div>',
dots: false,
draggable: false,
touchMove: false,
swipe: false,
centerMode: true,
centerPadding: ($(window).width() - $('.container').width())/2 + ($('.container').width() - $('.model-viewer').width())/2 + 'px',
responsive: [
{
breakpoint: 1025,
settings: {
centerPadding: '32px'
}
},
{
breakpoint: 768,
settings: {
centerPadding: '10px',
prevArrow: '<div class="slick-prev"></div>',
draggable: true,
touchMove: true,
swipe: true
}
}
]
});
$('.model-slider').on('beforeChange', function(event, slick, currentSlide, nextSlide) {
if (window.matchMedia('screen and (min-width: 1280px)').matches) {
$(slick.$slides).find('.model-viewer').removeAttr('camera-orbit').attr('camera-orbit', '45deg 75deg 105%');
$(slick.$slides.get(nextSlide)).find('.model-viewer').removeAttr('camera-orbit').attr('camera-orbit', '45deg 75deg 105%');
$('.slider-content').find('.slide-content').slideUp(500, function() {
$('.slider-content').find('.slide-content').html($(slick.$slides.get(nextSlide)).find('.slide-content').html());
$('.slider-content').find('.slide-content').children().each(function() {
$(this).removeClass('effect effect-bottom');
});
$('.slider-content').find('.slide-content').slideDown(500);
});
}
let nextSlideSeparator = (nextSlide + 1 < 10) ? '0' : '';
$('.models').find('.current-number').text(nextSlideSeparator + (nextSlide + 1));
});
$('.model-slider').on('afterChange', function(event, slick, currentSlide) {
if (window.matchMedia('screen and (min-width: 1280px)').matches) {
$(slick.$slides).find('.slide').css('height', '');
$(slick.$slides).filter('.slick-center').find('.slide').css('height', $('.intro').outerHeight() + $('.models').outerHeight() + $('.header').outerHeight()/2 + 'px');
}
});
$('.photo-slider').on('init', function(event, slick) {
if (slick.slideCount > 1) {
let currentSlideSeparator = (slick.currentSlide + 1 < 10) ? '0' : '';
let slideCountSeparator = (slick.slideCount < 10) ? '0' : '';
$('.photos').find('.slider-counter').removeClass('slider-counter-hide');
$('.photos').find('.current-number').text(currentSlideSeparator + (slick.currentSlide + 1));
$('.photos').find('.total-number').text(slideCountSeparator + slick.slideCount);
} else {
$('.photos').find('.slider-counter').addClass('slider-counter-hide');
}
});
$('.photo-slider').slick({
speed: 1000,
autoplay: true,
autoplaySpeed: 5000,
prevArrow: '',
nextArrow: '<div class="slick-next"></div>',
dots: false,
draggable: false,
touchMove: false,
swipe: false,
centerMode: true,
centerPadding: ($(window).width() - $('.container').width())/2 + 'px',
responsive: [
{
breakpoint: 1025,
settings: {
centerPadding: '16px'
}
},
{
breakpoint: 768,
settings: {
centerPadding: '15px',
prevArrow: '<div class="slick-prev"></div>',
draggable: true,
touchMove: true,
swipe: true
}
}
]
});
$('.photo-slider').on('beforeChange', function(event, slick, currentSlide, nextSlide) {
let nextSlideSeparator = (nextSlide + 1 < 10) ? '0' : '';
$('.photos').find('.current-number').text(nextSlideSeparator + (nextSlide + 1));
});
$('.form').find('input[type="tel"]').inputmask({
'mask': '+380 (99) 999 99 99',
showMaskOnHover: false
});
});
var modelOffset;
$(window).on('load', function() {
modelOffset = $('.model-slider').find('.slick-slide').filter('.slick-center').find('.model').offset().top;
setTextHeight();
setToggleHeight();
if (window.matchMedia('screen and (min-width: 1280px)').matches) {
$('.model-slider').find('.slick-slide').filter('.slick-center').find('.slide').css('height', $('.intro').outerHeight() + $('.models').height() + 'px');
}
scrollEffect();
increaseNumbers();
});
$(window).on('resize', function() {
setTextHeight();
setToggleHeight();
});
$(window).on('scroll', function() {
if (window.matchMedia('screen and (min-width: 1280px)').matches) {
$('.model-slider').find('.slick-slide').filter('.slick-center').find('.model-viewer').removeAttr('camera-orbit').attr('camera-orbit', '45deg 75deg 105%');
if ($(window).scrollTop() > modelOffset - ($('.header').outerHeight()/2)) {
$('.model-slider').find('.slick-slide').filter('.slick-center').find('.model-viewer').attr('interaction-prompt', 'none');
} else {
$('.model-slider').find('.slick-slide').filter('.slick-center').find('.model-viewer').attr('interaction-prompt', 'auto');
}
}
if (window.matchMedia('screen and (max-width: 767px)').matches) {
$('.intro').find('.model-viewer').removeAttr('camera-orbit').attr('camera-orbit', '45deg 75deg 105%');
if ($(window).scrollTop() > 0) {
$('.header').addClass('header-scroll');
} else {
$('.header').removeClass('header-scroll');
}
}
scrollEffect();
increaseNumbers();
});
function setToggleHeight() {
$('.toggle').each(function() {
$(this).find('.toggle-content').attr('data-height', $(this).find('.toggle-content').children().outerHeight());
$(this).filter('.toggle-open').find('.toggle-content').css('max-height', $(this).filter('.toggle-open').find('.toggle-content').attr('data-height') + 'px');
});
}
function setTextHeight() {
if ($('.more').is(':visible')) {
let totalHeight = 0;
$('.text-more').children().each(function() {
totalHeight += $(this).outerHeight(true);
});
$('.text-more').attr('data-height', totalHeight);
}
}
function scrollEffect() {
let scroll = $(window).scrollTop();
$('.block').each(function() {
if (scroll > $(this).offset().top + $(this).outerHeight()) {
$(this).addClass('done-block');
}
});
$('.done-block').find('.effect').filter(':visible').addClass('visible-effect done');
$('.block').not('.done-block').find('.effect').filter(':visible').each(function() {
if (scroll > $(this).offset().top - $(window).height()) {
$(this).addClass('visible-effect');
let effects = $('.visible-effect').not('.done'),
index = 0;
let delay = setInterval(function() {
if (index < effects.length) {
$(effects[index]).addClass('done');
index++;
} else {
clearInterval(delay);
$(effects).addClass('done');
}
}, 250);
}
});
}
function increaseNumbers() {
let scroll = $(window).scrollTop();
$('.numbers').find('.number').each(function() {
let $this = $(this),
number = $(this).find('.character').children('span').attr('data-character');
if (!$(this).hasClass('complete') && $('.numbers').offset().top - $(window).height() <= scroll) {
$({counter: 0}).delay(250).animate({counter: number}, {
duration: 2500,
easing: 'linear',
step: function() {
$this.addClass('complete');
$this.find('.character').children('span').html(Math.floor(this.counter));
}, complete: function() {
$this.find('.character').children('span').html(this.counter);
}
});
}
});
}