1 2//-------------------------------------------------------------------------// 3// ÐÐµÐ½Ñ Ð² Ñапке 4//-------------------------------------------------------------------------// 5document.addEventListener('DOMContentLoaded', function() { 6 // ÐбÑабоÑÑик кликов по пÑнкÑам Ð¼ÐµÐ½Ñ 7 document.querySelectorAll('#desktop-menu .menu-item-has-children').forEach(item => { 8 const link = item.querySelector('a'); 9 const submenu = item.querySelector('.menu__subMenu'); 10 11 link.addEventListener('click', function(e) { 12 e.preventDefault(); 13 e.stopPropagation(); 14 15 const isActive = submenu.classList.contains('active'); 16 17 // ÐакÑÑваем вÑе Ð¿Ð¾Ð´Ð¼ÐµÐ½Ñ 18 document.querySelectorAll('.menu__subMenu').forEach(menu => { 19 if(menu !== submenu) { 20 menu.classList.remove('active'); 21 menu.parentElement.classList.remove('active'); 22 } 23 }); 24 25 // ÐеÑеклÑÑаем ÑекÑÑее Ð¼ÐµÐ½Ñ 26 submenu.classList.toggle('active', !isActive); 27 item.classList.toggle('active', !isActive); 28 }); 29 }); 30 31 // ÐакÑÑÑие пÑи клике вне Ð¼ÐµÐ½Ñ 32 document.addEventListener('click', function(e) { 33 if(!e.target.closest('#desktop-menu .menu-item-has-children')) { 34 document.querySelectorAll('.menu__subMenu').forEach(menu => { 35 menu.classList.remove('active'); 36 menu.parentElement.classList.remove('active'); 37 }); 38 } 39 }); 40}); 41 42// ÐÐµÐ½Ñ Ð² Ñапке ÐºÐ¾Ð½ÐµÑ 43//-------------------------------------------------------------------------// 44// ÐобилÑное Ð¼ÐµÐ½Ñ 45//-------------------------------------------------------------------------// 46 47document.addEventListener('DOMContentLoaded', function() { 48 const mobileMenu = document.querySelector('.mobile-menu-block'); 49 const mobileMenuClose = document.querySelector('.mobile-menu-close'); 50 const mobileMenuOverlay = document.querySelector('.mobile-menu-overlay'); 51 52 // ÐÑкÑÑÑие Ð¼ÐµÐ½Ñ 53 document.querySelector('.mobile-menu-button').addEventListener('click', function(e) { 54 e.preventDefault(); 55 mobileMenu.style.transform = 'translateX(0)'; 56 mobileMenuOverlay.style.display = 'block'; 57 setTimeout(() => mobileMenuOverlay.classList.add('active'), 10); 58 }); 59 60 // ÐакÑÑÑие Ð¼ÐµÐ½Ñ 61 function closeMobileMenu() { 62 mobileMenu.style.transform = 'translateX(100%)'; 63 mobileMenuOverlay.classList.remove('active'); 64 setTimeout(() => mobileMenuOverlay.style.display = 'none', 300); 65 } 66 67 mobileMenuClose.addEventListener('click', closeMobileMenu); 68 mobileMenuOverlay.addEventListener('click', closeMobileMenu); 69 70 71 document.querySelectorAll('.mobile-menu .menu-item-has-children > a').forEach(item => { 72 item.addEventListener('click', function(e) { 73 e.preventDefault(); 74 const parent = this.parentElement; 75 const submenu = this.nextElementSibling; 76 77 // ÐакÑÑваем дÑÑгие Ð¿Ð¾Ð´Ð¼ÐµÐ½Ñ 78 document.querySelectorAll('.mobile-menu .menu-item-has-children').forEach(menu => { 79 if (menu !== parent) { 80 menu.classList.remove('active'); 81 menu.querySelector('.sub-menu').style.maxHeight = '0'; 82 menu.querySelector('a svg').style.transform = 'rotate(0)'; 83 } 84 }); 85 86 // ÐеÑеклÑÑаем ÑекÑÑее 87 const isActive = parent.classList.toggle('active'); 88 submenu.style.maxHeight = isActive ? submenu.scrollHeight + 'px' : '0'; 89 this.querySelector('svg').style.transform = isActive ? 'rotate(180deg)' : 'rotate(0)'; 90 }); 91 }); 92}); 93 94// ÐобилÑное Ð¼ÐµÐ½Ñ ÐºÐ¾Ð½ÐµÑ 95//-------------------------------------------------------------------------// 96// AJAX загÑÑзка на главной (firstpage-2.php) 97//-------------------------------------------------------------------------// 98 99 var current_category = 'news'; 100 var c_taxterm = 0; 101 var loading = false; 102 103 function load_posts(current_category, c_taxterm, offset) { 104 if (loading) { 105 return; 106 } 107 loading = true; 108 jQuery('#loaderajax').show(); 109 offset = offset || 0; 110 jQuery.ajax({ 111 url: '/wp-admin/admin-ajax.php', 112 type: 'POST', 113 data: { 114 action: 'load_posts', 115 category: current_category, 116 taxterm: c_taxterm, 117 offset: offset, 118 }, 119 120 beforeSend: function () { 121 loading = true; 122 }, 123 124 success: function (data) { 125 if (data.trim()) { 126 var new_items = jQuery(data); 127 jQuery('#newsblock').append(new_items); 128 offset += 4; 129 loading = false; 130 } else { 131 jQuery(window).off('scroll'); 132 } 133 jQuery('#loaderajax').hide(); 134 }, 135 136 error: function (xhr, status, error) { 137 console.log(xhr.responseText); 138 }, 139 140 complete: function () { 141 setTimeout(function () { 142 loading = false; 143 }, 1000); 144 jQuery('#morenews').attr('data-offset', offset); 145 }, 146 }); 147 } 148
149 // Файл подклÑÑаеÑÑÑ Ð³Ð»Ð¾Ð±Ð°Ð»Ñно, но AJAX-блок ÑÑÑеÑÑвÑÐµÑ ÑолÑко на главной. 150 if (document.getElementById('newsblock') && !window.rybarFrontNewsBooted) { 151 window.rybarFrontNewsBooted = true; 152 load_posts('news', 0, 0); 153 } 154 155 156// AJAX загÑÑзка на главной (firstpage-2.php) ÐºÐ¾Ð½ÐµÑ 157//-------------------------------------------------------------------------// 158// AJAX кнопки вÑбоÑа каÑегоÑии на главной (firstpage-2.php) 159//-------------------------------------------------------------------------// 160 161jQuery(document).ready(function() { 162 jQuery('.cat-choose').off('click.rybarFrontNews').on('click.rybarFrontNews', function(e) { 163 e.preventDefault(); 164 const category = jQuery(this).data('category'); 165 166 jQuery('#newsblock') 167 .css('opacity', '0.5') 168 .empty(); 169 170 load_posts(category); 171 172 jQuery('.cat-choose') 173 .not(this) 174 .removeClass('bg-accent-orange text-white') 175 .addClass('bg-dark-700 theme-text-primary hover:bg-accent-orange/10'); 176 177 jQuery(this) 178 .addClass('bg-accent-orange text-white') 179 .removeClass('bg-dark-700 theme-text-primary hover:bg-accent-orange/10'); 180 181 182 jQuery('#morenews') 183 .data('category', category) 184 .data('offset', 4); 185 186 setTimeout(() => { 187 jQuery('#newsblock').css('opacity', '1'); 188 }, 300); 189 }); 190 191 jQuery('#morenews').off('click.rybarFrontNews').on('click.rybarFrontNews', function(e) { 192 const category = jQuery(this).data('category'); 193 const moreoffset = parseInt(jQuery(this).data('offset')) || 0; // ÐаÑиÑа Ð¾Ñ NaN 194 195 load_posts(category, 0, moreoffset); 196 mrfst = moreoffset+4; 197 jQuery('#morenews').data('offset', mrfst); 198 }); 199 200 jQuery(document).on('click', '.socialicons-button', function(e) { 201 e.preventDefault(); 202 jQuery(this).children('.socialicons').fadeToggle(300); 203 jQuery(this).children('.socialicons').toggleClass('active'); 204 205 }); 206 207 jQuery(document).on('click', '#opensearchbtn', function(e) { 208 e.preventDefault(); 209 jQuery(this).hide(); 210 jQuery('#searchform').toggleClass('active'); 211 jQuery('#searchform').fadeIn(); 212 jQuery('#searchform').css('display','flex'); 213 214 }); 215}); 216 217// AJAX кнопки вÑбоÑа каÑегоÑии на главной (firstpage-2.php) ÐºÐ¾Ð½ÐµÑ 218// ================================================ 219// ÐниÑиализаÑÐ¸Ñ Fancybox 220// ================================================ 221 Fancybox.bind("[data-fancybox]", {}); 222 223// ÐниÑиализаÑÐ¸Ñ Fancybox ÐºÐ¾Ð½ÐµÑ 224// ================================================ 225// 226// ================================================ 227jQuery('.facetwp-date-min').attr('placeholder', 'ÐаÑалÑÐ½Ð°Ñ Ð´Ð°Ñа'); 228jQuery('.facetwp-date-max').attr('placeholder', 'ÐонеÑÐ½Ð°Ñ Ð´Ð°Ñа');
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.