Орла
Области
Компаний
Пользователи
Галерея
Фиксированные новости
Орла
Отзывы о фирмах
Тарифы
Пользователи
Области
Банкоматы
Торговые точки
Доска объявлений
Курсы валют
Скидки
организации Орла
организации области
товары
сайты
сайты Орел
Данные
Разделы
Поиск
Поиск запросы
Статистика
Показы каталога организаций
Статистика клиенты
Пользователи
Сайты
Управление сайтом
Анкета
Аптеки
Афиша
Афиша новая
Баннеры
Бизнес >
Викторина
Голосование
Гость на сайте
Истории
Календарь событий
Каталоги >
Конкурс красоты
Конкурс аудио
Консультации
Меню
Новое на сайте
Новости >
Организации >
Программа ТВ
Публикации
Разделы сайта
Рассылка
Рестораны
Секрет фирмы >
Сервисы >
Ссылки
Тесты
Файловый менеджер
Форум
Фотогалерея
Обратная связь
Недвижимость
Новый год
Тексты
Пользователи
Юридический рейтинг
Отзывы на товары
Бан пользователей
Жалобы
Новые тесты
Коронавирус
Файловый менеджер
Имя файла
cookie-consent.js
Содержимое
/** * Управление согласием на cookie (152-ФЗ). * Аналитика (Метрика, share2) и виджеты VK — только после согласия. */ window.CookieConsent = (function () { var COOKIE_NAME = 'cookie_consent'; var COOKIE_DAYS = 365; var METRIKA_ID = 26008341; var VK_GROUP_ID = 43225363; var metrikaLoaded = false; var shareLoaded = false; var vkLoaded = false; function isProd() { return /infoorel\.ru/i.test(window.location.hostname || ''); } function setCookie(name, value, days) { var expires = ''; if (days) { var date = new Date(); date.setTime(date.getTime() + days * 24 * 60 * 60 * 1000); expires = '; expires=' + date.toUTCString(); } document.cookie = name + '=' + value + expires + '; path=/; SameSite=Lax'; } function getCookie(name) { var nameEQ = name + '='; var ca = document.cookie.split(';'); for (var i = 0; i < ca.length; i++) { var c = ca[i]; while (c.charAt(0) === ' ') { c = c.substring(1); } if (c.indexOf(nameEQ) === 0) { return c.substring(nameEQ.length); } } return null; } function getConsent() { var raw = getCookie(COOKIE_NAME); if (raw) { try { return JSON.parse(decodeURIComponent(raw)); } catch (e) { return null; } } if (getCookie('children')) { return { necessary: true, analytics: true, social: true }; } return null; } function hasConsent(type) { var c = getConsent(); if (!c) { return false; } if (type === 'analytics') { return !!c.analytics; } if (type === 'social') { return !!c.social; } return true; } function applyConsent(c) { c = c || {}; if (c.analytics && isProd()) { loadYandexMetrika(); loadShare2(); document.dispatchEvent(new CustomEvent('analyticsConsentGranted')); } if (c.social) { loadVkWidgets(); document.dispatchEvent(new CustomEvent('socialConsentGranted')); } } function saveConsent(analytics, social) { var payload = encodeURIComponent(JSON.stringify({ necessary: true, analytics: !!analytics, social: !!social })); setCookie(COOKIE_NAME, payload, COOKIE_DAYS); if (getCookie('children')) { setCookie('children', '', -1); } hideBanner(); closeSettingsModal(); applyConsent({ analytics: !!analytics, social: !!social }); } function loadYandexMetrika() { if (metrikaLoaded || !isProd()) { return; } metrikaLoaded = true; (function (m, e, t, r, i, k, a) { m[i] = m[i] || function () { (m[i].a = m[i].a || []).push(arguments); }; m[i].l = 1 * new Date(); for (var j = 0; j < document.scripts.length; j++) { if (document.scripts[j].src === r) { return; } } k = e.createElement(t); a = e.getElementsByTagName(t)[0]; k.async = 1; k.src = r; a.parentNode.insertBefore(k, a); })(window, document, 'script', 'https://mc.yandex.ru/metrika/tag.js', 'ym'); window.ym(METRIKA_ID, 'init', { clickmap: true, trackLinks: true, accurateTrackBounce: true, webvisor: true, trackHash: true }); } function loadShare2() { if (shareLoaded) { return; } shareLoaded = true; if (document.querySelector('script[src*="share2/share.js"]')) { return; } var shim = document.createElement('script'); shim.src = 'https://yastatic.net/es5-shims/0.0.2/es5-shims.min.js'; shim.async = true; document.body.appendChild(shim); var s = document.createElement('script'); s.src = 'https://yastatic.net/share2/share.js'; s.async = true; s.onload = function () { if (window.ShareApp && typeof ShareApp.initApp === 'function') { ShareApp.initApp(); } }; document.body.appendChild(s); } function initVkGroupWidgets() { if (!window.VK || !window.VK.Widgets) { return; } var nodes = document.querySelectorAll('.js-vk-group-widget'); var i; for (i = 0; i < nodes.length; i++) { var el = nodes[i]; if (el.getAttribute('data-vk-mounted') === '1') { continue; } var groupId = parseInt(el.getAttribute('data-group-id') || VK_GROUP_ID, 10); el.setAttribute('data-vk-mounted', '1'); el.innerHTML = ''; try { window.VK.Widgets.Group(el.id || 'vk_groups', { mode: 0, width: 'auto', height: '500' }, groupId); } catch (e) { // ignore } } } function loadVkWidgets() { if (vkLoaded) { initVkGroupWidgets(); return; } if (document.querySelector('script[src*="userapi.com/js/api/openapi"]')) { vkLoaded = true; initVkGroupWidgets(); return; } vkLoaded = true; var s = document.createElement('script'); s.type = 'text/javascript'; s.src = 'https://userapi.com/js/api/openapi.js?52'; s.async = true; s.onload = function () { initVkGroupWidgets(); }; document.body.appendChild(s); } function showBanner() { var el = document.getElementById('cookie-consent-banner'); if (el) { el.classList.remove('d-none'); } } function hideBanner() { var el = document.getElementById('cookie-consent-banner'); if (el) { el.classList.add('d-none'); } } function syncSettingsToggles() { var c = getConsent(); var analyticsToggle = document.getElementById('cookie-consent-analytics-toggle'); var socialToggle = document.getElementById('cookie-consent-social-toggle'); if (analyticsToggle) { analyticsToggle.checked = c ? !!c.analytics : false; } if (socialToggle) { socialToggle.checked = c ? !!c.social : false; } } function openSettingsModal() { var modal = document.getElementById('cookie-consent-settings'); if (modal) { modal.classList.add('show'); } } function openSettings() { syncSettingsToggles(); openSettingsModal(); } function closeSettingsModal() { var modal = document.getElementById('cookie-consent-settings'); if (modal) { modal.classList.remove('show'); } } function bindUi() { var accept = document.getElementById('cookie-consent-accept'); var decline = document.getElementById('cookie-consent-decline'); var settingsOpen = document.getElementById('cookie-consent-settings-open'); var settingsClose = document.getElementById('cookie-consent-settings-close'); var settingsSave = document.getElementById('cookie-consent-settings-save'); var analyticsToggle = document.getElementById('cookie-consent-analytics-toggle'); var socialToggle = document.getElementById('cookie-consent-social-toggle'); if (accept) { accept.addEventListener('click', function (e) { e.preventDefault(); saveConsent(true, true); }); } if (decline) { decline.addEventListener('click', function (e) { e.preventDefault(); saveConsent(false, false); }); } if (settingsOpen) { settingsOpen.addEventListener('click', function (e) { e.preventDefault(); openSettings(); }); } var settingsLinks = document.querySelectorAll('.js-cookie-consent-open-settings'); var li; for (li = 0; li < settingsLinks.length; li++) { settingsLinks[li].addEventListener('click', function (e) { e.preventDefault(); openSettings(); }); } if (settingsClose) { settingsClose.addEventListener('click', function (e) { e.preventDefault(); closeSettingsModal(); }); } if (settingsSave) { settingsSave.addEventListener('click', function (e) { e.preventDefault(); var analyticsEnabled = analyticsToggle ? analyticsToggle.checked : false; var socialEnabled = socialToggle ? socialToggle.checked : false; saveConsent(analyticsEnabled, socialEnabled); }); } var modal = document.getElementById('cookie-consent-settings'); if (modal) { modal.addEventListener('click', function (e) { if (e.target === modal) { closeSettingsModal(); } }); } } function removeLegacyCookieBanner() { var legacyBtn = document.querySelector('.app-block-cookies'); if (legacyBtn) { var legacyBlock = legacyBtn.closest('.block-cookies'); if (legacyBlock && legacyBlock.id !== 'cookie-consent-banner') { legacyBlock.parentNode.removeChild(legacyBlock); } } var legacyOpen = document.getElementById('modalOpen'); var legacyModal = document.getElementById('myModal'); if (legacyModal && legacyOpen && legacyModal.querySelector('.modal-cookies-text')) { legacyModal.parentNode.removeChild(legacyModal); } } function init() { removeLegacyCookieBanner(); bindUi(); var c = getConsent(); if (c) { applyConsent(c); return; } showBanner(); } if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', init); } else { init(); } return { hasConsent: hasConsent, saveConsent: saveConsent, openSettings: openSettings, loadYandexMetrika: loadYandexMetrika, loadShare2: loadShare2, loadVkWidgets: loadVkWidgets }; })();
/js/2.0/
Имя
Дата
Размер
..
2019-02-14
afisha
2017-03-21
banners
2017-03-21
bootstrap
2019-03-15
comments
2017-06-08
consult
2017-04-06
core
2019-03-15
feedback
2017-03-21
forum
2019-01-16
fotogal
2019-04-15
news
2017-03-21
organizations
2020-02-04
realty
2017-03-21
restoran
2018-07-10
tests
2020-02-26
users
2019-03-06
vacancies
2017-03-27
vendor
2020-06-08
vk
2026-03-02
widgets
2018-07-10
FancyBoxApp.js
2019-02-13
662 байт
Menu.js
2017-02-14
482 байт
Mobile.js
2017-02-14
583 байт
captcha.js
2026-05-25
3 кб.
captcha.js~
2017-03-15
3 кб.
cookie-consent.js
2026-05-25
11 кб.
forum-previous.js
2024-03-22
1 кб.
grid.js
2017-03-22
17 кб.
grid.min.js
2017-06-13
6 кб.
highcharts.js
2017-03-20
150 кб.
main.js
2026-05-25
4 кб.
main.js~
2019-04-18
6 кб.
sticky.js
2017-06-22
13 кб.
tether.min.js
2026-03-02
23 кб.
ui.js
2019-02-15
6 кб.
uikit.min.js
2017-03-22
55 кб.
video.js
2019-02-08
42 байт
yandex-maps-loader.js
2026-05-25
2 кб.
/js/2.0
Загрузить файлы
Файл 1
Файл 2
Файл 3