$(document).ready(function () { // для таблицы кроссов, классы обозначаются через cross_ var cross_prefix = ''; // по умолчанию - цены в долларах, остальные скрываем var show_currency = ['usd']; var hidden_currency = ['uah', 'eur']; // первоначальная инициация цен priceInitialisation(); // привяжем обработчик смены валюты $(document).on("click", ".currency", changeCurrency); // привяжем обработчик обновления страницы pjax $(document).on('pjax:complete', function() { console.log(document.location); priceInitialisation(); }) function changeCurrency() { $('.currency').removeClass('active_button_purple1'); $(this).addClass('active_button_purple1'); // после смены валюты - покажем цены в выбранной валюте priceInitialisation(); } function priceInitialisation() { // найдем текущую установленную валюту, и пересчитаем цены в ней var current_currency = $('.active_button_purple1')[0]; if (typeof current_currency === 'object'){ if (current_currency.getAttribute('id') === 'grivna') { show_currency = ['uah']; hidden_currency = ['eur', 'usd']; } else if (current_currency.getAttribute('id') === 'euro') { show_currency = ['eur']; hidden_currency = ['uah', 'usd']; } else if (current_currency.getAttribute('id') === 'dollars') { show_currency = ['usd']; hidden_currency = ['uah', 'eur']; } setVisiblePrice(); } } function setVisiblePrice() { // элементы с классами из show_currency отобразим for (var i = 0; i < show_currency.length; i++) { var arr_elements = document.getElementsByClassName(show_currency[i] + cross_prefix); for (var j = 0; j < arr_elements.length; j++) { if (arr_elements[j].classList.contains('hidden')) arr_elements[j].classList.remove('hidden'); } } // элементы с классами из hidden_currency спрячем for (var i = 0; i < hidden_currency.length; i++) { var arr_elements = document.getElementsByClassName(hidden_currency[i] + cross_prefix); for (var j = 0; j < arr_elements.length; j++) { if (!arr_elements[j].classList.contains('hidden')) arr_elements[j].classList.add('hidden'); } } } //модальное окно для фото // ловим клик по ссылки с id="go" $(document).on("click", 'a#go_photo', function (event) { event.preventDefault(); // выключаем стандартную роль элемента var scrollTop = window.pageYOffset ? window.pageYOffset : (document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop); viewportHeight = $(window).height(); var modalWidth = $('#modal_form_photo').width() / 2; var modalHeight = $('#modal_form_photo').outerHeight() / 2; $('#overlay').fadeIn(400, // сначала плавно показываем темную подложку function () { // после выполнения предъидущей анимации $('#modal_form_photo') .css({'display': 'block', opacity: 1, marginTop: -modalHeight, marginLeft: -modalWidth}) // убираем у модального окна display: none; .animate({opacity: 1, top: scrollTop + (viewportHeight / 2)}, 200); // плавно прибавляем прозрачность одновременно со съезжанием вниз }); }); /* Закрытие модального окна, тут делаем то же самое но в обратном порядке */ $(document).on( "click",'#modal_close, #overlay', function () { // ловим клик по крестику или подложке $('#modal_form_photo') .animate({opacity: 0, top: '45%'}, 200, // плавно меняем прозрачность на 0 и одновременно двигаем окно вверх function () { // после анимации $(this).css('display', 'none'); // делаем ему display: none; $('#overlay').fadeOut(400); // скрываем подложку } ); }); //открытие-закрытие карточки товара и смена текста на бирке карточки товара function changeText() { e = document.getElementById('button_grey_card'); e.innerHTML = e.innerHTML == "Скрыть карточку товара" ? "Открыть карточку товара" : "Скрыть карточку товара"; } $(document).on( "click",'#button_grey_card' , function () { changeText(); $(this).toggleClass('change_b'); $('.tovar_card').toggleClass('tovar_card_visible'); $('.table').toggleClass('table_height'); }); // модальная форма с инфой по тех-доку $(document).on("click", '.tecdoc_id_info', function(e){ var tecdoc_id = $(this).data('id'); $.post( "/detail/get-details-for-item", {tecdoc_id:tecdoc_id},function( data ) { $('#details_content').empty(); $('#details_content').html(data); }); });});