JavaScript
JavaScript - функции
Описание функий, которые по ходу работы прийдется кастомно использовать на страницах.
Главный файл со всеми ф-ями и описанием находится по адресу
scripts/index.js
В проекте есть много legacy-кода на jQuery, но все новые фичи пиши на ES6. Наша аудитория использует современные браузеры, поэтому про совместимость можно не боятся.
- Показать\скрыть модальное окно
LP.CORE.showModal('selector');
LP.CORE.closeModal('selector');
- Установка выбраного пакета на страницах “Спасибо”
setTimeout(function () {
var obj = searchToObject();
if (obj.landing_id) {
LP.CORE.selectPackage($('[data-id="' + obj.landing_id + '"]'))
};
}, 1500);
- Обновить статическую информацию в footer
updateStaticInfo: function () {
// some replace
}
- Обновить глобальных мерчантов для оплаты fondy (детали - Оплата)
function setMerchant() {
// set custom values
if (item.value == KEY) {
item.value = VALUE;
}
}
- Вывести на странице цену мероприятия полную\со скидкой
let data = LP.CORE.getSearchJson();
LP.CORE.getPriceByID(data.landing_id);
$('.packages-item-price').each(function (i, el) {
LP.CORE.setPriceThanks($(this).data('id'), $(this).find('.price-full-redline'), $(this).find('.price-discount-big'))
});
// .packages-item-price - родительский блок.
// Ему нужно задать атрибут data-id=''
// и клас пакета, по которому с админблока через функции добавляется пакет мероприятия, например standard_price
// <div class="standard_price" data-id=''>
// <span class="count-price price-full-redline">со скидкой</span>
// <span class="count-price price-discount-big">полная цена</span>
// </div>
// class="count-price" нужен для устаноки валюты
- Получить цену из Zoho по id
LP.CORE.getPriceByID(t.data("id"))
- Высота первого экрана ‘.hero’ на весь viewport
LP.CORE.setSize()