(function () { var isInited = false function initAnimation() { isInited = true var elementsWithCounts = [ { dom: document.querySelector('.js-animation-clients'), number: 20000 }, { dom: document.querySelector('.js-animation-products'), number: 51000 }, { dom: document.querySelector('.js-animation-orders'), number: 9000 }, { dom: document.querySelector('.js-animation-rating'), number: 99.5 } ] elementsWithCounts.forEach(function (item) { var isPercent = item.dom.classList.contains('js-animation-rating') var options = { separator: ' ', startVal: round(item.number / 2), duration: 3.5, suffix: isPercent ? ' %' : '', decimal: isPercent ? '.' : null, decimalPlaces: isPercent ? 1 : 0, } if (!isPercent) { options.formattingFn = function(num) { var result = Math.round(num / 100) * 100; return result } } var instance = new CountUp(item.dom, item.number, options) if (!instance.error) { instance.start() } else { console.error(instance.error) } }) } function showTotalBlock(dom) { dom.classList.add('s-partner-total__list_active') } document.addEventListener('DOMContentLoaded', function () { var formTpl = document.getElementById('request_from_partner'); var formInsert = document.querySelector('.s-partner-form-wrap') if (formTpl) { setTimeout(function () { formInsert.innerHTML = formTpl.innerHTML; }, 1000); } var targetDom = document.querySelector('.s-partner-total__list') var waypoint = new Waypoint({ element: $('.s-partner-total__list')[0], handler: function (direction) { showTotalBlock(targetDom) initAnimation() waypoint.destroy() }, offset: '55%' }) $(document.body) .on('partner_request_created', function (event, data) { if (data.res === 'fail') { hide_indicator($('.s-partner-form')) $('.s-partner-form__footer').before(build_flash({ text: data.error })) } else { location.reload(true) } }) .on('submit', '.s-partner-form', function (event) { var csrfInput = document.querySelector('.js-csrf-wrap') this.appendChild(csrfInput) var $form = $(this); $form.find('.s-flash').remove() show_indicator($form, { centering: true }) }) .on('click', '.js-partner-claim-btn', function (e) { e.preventDefault() $('.s-partner-form-wrap').velocity('scroll', { duration: 300, offset: -72, easing: 'easeInSine' }) }) }) })()