PageSourceSearch

https://static.tonkosti.ru/js/ttscripts_top.js?ver=66c719

js tonkosti.ru collected 2026-10-02 03:58:43 UTC 32,159 bytes, 1 lines download raw bytes

1(()=>{"use strict";const e={menuTTList:document.querySelector(".menu-tt__list"),moreElement:document.querySelector(".menu-tt__view-more"),menuOpenElement:document.querySelector(".menu-tt__view-more-item"),menuTTMoreList:document.querySelector(".menu-tt__popup"),MORE_ELEMENT_WIDTH:100},t=e.menuTTList?Array.from(e.menuTTList.children).filter((e=>!e.classList.contains("menu-tt__view-more"))):null,n={menus:[],register(e){this.menus.push(e)},closeAllExcept(e){this.menus.forEach((t=>{t!==e&&t.isOpen&&t.close()}))}},i=function(){e.menuOpenElement.classList.contains("is-popup-menu")?(e.menuOpenElement.classList.remove("is-popup-menu"),e.menuTTMoreList.style.display="none"):(e.menuOpenElement.classList.add("is-popup-menu"),e.menuTTMoreList.style.display="block")},s=function(){const n=e.menuTTList.offsetWidth-e.MORE_ELEMENT_WIDTH;let s=0,o=!1;const r=e.menuTTMoreList.children;if(r){e.moreElement.style.display="none",e.menuOpenElement.classList.remove("is-popup-menu"),e.menuTTMoreList.style.display="none",e.moreElement.removeEventListener("click",i);for(let t of r)e.menuTTList.append(t)}t.forEach((t=>{s+=t.offsetWidth,s>n&&(e.menuTTMoreList.append(t),o=!0)})),o&&(e.moreElement.style.display="block",e.moreElement.addEventListener("click",i))},o=(e,t={},...n)=>{const i=document.createElement(e);return Object.entries(t).forEach((([e,t])=>{if("className"===e||"class"===e)Array.isArray(t)?i.classList.add(...t.filter(Boolean)):i.className=t;else if("dataset"===e||"data"===e)Object.entries(t).forEach((([e,t])=>{i.dataset[e]=t}));else if(e.startsWith("on")&&"function"==typeof t){const n=e.toLowerCase().substring(2);i.addEventListener(n,t)}else i.setAttribute(e,t)})),n.forEach((e=>{"string"==typeof e?i.appendChild(document.createTextNode(e)):e instanceof Node&&i.appendChild(e)})),i},r=5e3,a=80,l=40,c=".csr-uniq1",d=5,u=100,m=700;async function h(e){const t=function(e){const t=e.querySelectorAll("svg");for(const n of t){const{width:t,height:i}=n.getBoundingClientRect();if(t<=a&&i<=l){let t=n,i=n.parentElement;for(;i&&i!==e;){const e=i.getBoundingClientRect();if(!(e.width<=a&&e.height<=l))break;t=i,i=i.parentElement}return t}}return null}(e);if(!t)return void console.warn("Catfish: Элемент закрытия (крестик) не найден.");t.style.opacity="0",t.style.pointerEvents="none";const n=await function(e){return new Promise((t=>{let n=0;const i=()=>{const s=e.getBoundingClientRect(),o=document.documentElement.clientHeight;Math.abs(o-s.bottom)>=u?t(!0):(n++,n<d?setTimeout(i,m):t(!1))};i()}))}(t);if(!n)return;const i=o("div",{class:"floor-catfish__info"}),s=o("b",{class:"floor-catfish__sec"});let c=r;s.textContent=Math.ceil(c/1e3).toString(),i.append("Можно закрыть через ",s," сек."),t.before(i);let h=null;h=setInterval((()=>{c-=1e3,document.contains(e)?c>0?s.textContent=Math.ceil(c/1e3).toString():(h&&clearInterval(h),i.remove(),t.style.opacity="1",t.style.pointerEvents="auto",t.style.cursor="pointer"):clearInterval(h)}),1e3)}const p={CLOSE_TIME_MS:5e3,SELECTOR:"#flscrvd",MAX_RETRIES:5,RETRY_DELAY_MS:700,CLICK_DELAY_MS:1e3};let f=[];class g{constructor(e){this.container=e,this.video=e.querySelector("video"),this.bodyBlock=e.querySelector(".flscrvd__body"),this.config={...p},this.trackingEvents=f.map((e=>({...e}))),this.timers={main:null,clickDelay:null},this.isStarted=!1,this.onTimeUpdateTracker=this.onTimeUpdateTracker.bind(this),this.startLogic=this.startLogic.bind(this),this.init()}init(){this.video?(this.applyCustomCloseTime(),this.video.loop&&(this.video.loop=!1),this.bodyBlock.style.pointerEvents="none",this.createTimerInterface(),this.video.addEventListener("playing",this.startLogic,{once:!0}),this.video.addEventListener("timeupdate",this.onTimeUpdateTracker),this.video.addEventListener("ended",(()=>{this.fireEvent(adfoxUrls.event4),this.destroy()}))):console.warn("Элемент video не найден")}applyCustomCloseTime(){const e=Number.parseInt(this.container.dataset.flscrCross,10);Number.isNaN(e)||(this.config.CLOSE_TIME_MS=e)}createTimerInterface(){this.infoBlock=o("div",{class:"flscrvd__info"}),this.timeValEl=o("b",{class:"flscrvd__sec"}),this.infoBlock.style.display="none",this.timeLeft=this.config.CLOSE_TIME_MS,this.timeValEl.textContent=Math.ceil(this.timeLeft/1e3).toString(),this.infoBlock.append("Можно закрыть через ",this.timeValEl," сек."),this.bodyBlock.prepend(this.infoBlock)}
1startLogic(){this.isStarted||(this.isStarted=!0,this.infoBlock.style.display="block",this.timers.clickDelay=setTimeout((()=>{this.bodyBlock&&(this.bodyBlock.style.pointerEvents="auto")}),this.config.CLICK_DELAY_MS),this.timeLeft<=0?this.showCloseButton():this.timers.main=setInterval((()=>{this.timeLeft-=1e3,document.contains(this.container)?this.timeLeft>0?this.timeValEl.textContent=Math.ceil(this.timeLeft/1e3).toString():this.showCloseButton():this.destroy()}),1e3))}showCloseButton(){this.timers.main&&clearInterval(this.timers.main),this.infoBlock&&this.infoBlock.remove();const e=this.container.querySelector(".flscrvd__close");e&&(e.style.display="flex",e.style.cursor="pointer",e.addEventListener("click",(e=>{e.stopPropagation(),this.destroy()}),{once:!0}))}onTimeUpdateTracker(){const e=this.video.currentTime,t=this.video.duration||0,n=t>0?e/t*100:0;this.trackingEvents.forEach((t=>{if(t.fired)return;("time"===t.type&&e>=t.value||"percent"===t.type&&n>=t.value)&&(t.fired=!0,this.fireEvent(t.url))}))}fireEvent(e){(new Image).src=e}destroy(){Object.values(this.timers).forEach((e=>{e&&clearTimeout(e)})),this.video&&this.video.removeEventListener("timeupdate",this.onTimeUpdateTracker),this.container&&document.contains(this.container)&&this.container.remove()}}function y(e,t){if(e.dataset.tooltipCreated)return;const n=document.createElement("span");n.classList.add("tooltip"),n.innerText=t||e.dataset.tooltip,n.style.display="none",e.append(n),e.dataset.tooltipCreated="true"}function v(e){const t=e.currentTarget,n=t.querySelector(".tooltip"),i=function(e,t){const n=t?.dataset.tooltipPosition,i=n?n.match(/top|bottom|middle/):null,s=i?i[0]:null,o=n?n.match(/left|right/):null,r=o?o[0]:null;let a;return a=s?s+"-":e.top<80?"top-":document.documentElement.clientHeight-e.bottom<80?"bottom-":"middle-",r?a+=r:e.left>document.documentElement.clientWidth/2?a+="right":a+="left",a}(t.getBoundingClientRect(),t),s=t.offsetHeight;n.style.display="inline-flex",function(e,t,n,i=10){switch(t){case"top-left":e.classList.add("tooltip--bottom-left"),e.style.top=`${n+i}px`,e.style.left="0";break;case"top-right":e.classList.add("tooltip--bottom-right"),e.style.top=`${n+i}px`,e.style.right="0";break;case"bottom-left":e.classList.add("tooltip--top-left"),e.style.top=`-${i}px`,e.style.left="0",e.style.transform="translateY(-100%)";break;case"bottom-right":e.classList.add("tooltip--top-right"),e.style.top=`-${i}px`,e.style.right="0",e.style.transform="translateY(-100%)";break;case"middle-right":e.classList.add("tooltip--left"),e.style.top="-12px",e.style.left=`-${i}px`,e.style.transform="translateX(-100%)";break;default:e.classList.add("tooltip--right"),e.style.top="-6px",e.style.right=`-${i}px`,e.style.transform="translateX(100%)"}}(n,i,s)}function w(e){const t=e.currentTarget.querySelector(".tooltip");var n;(n=t).classList.remove("tooltip--bottom-left","tooltip--bottom-right","tooltip--top-left","tooltip--top-right","tooltip--left","tooltip--right"),n.style.top="",n.style.bottom="",n.style.left="",n.style.right="",n.style.transform="translate(0,0)",t.style.display="none"}const b={version:"2.0.0",recalculateTopMenuDesktop:s,catfish:function(){let e=0;const t=()=>{const n=document.querySelector(c);n?setTimeout((()=>h(n)),300):(e++,e<d?setTimeout(t,m):console.warn(`Catfish: Не удалось найти контейнер catfish после ${d} попыток.`))};t()},catfishClose:function(){const e=document.querySelector(c);e&&e.remove()},videoFullscreen:function(){let e=0;const t=()=>{const n=document.querySelector(p.SELECTOR);n?(!function(){const e=window.ADFOX_EVENTS||{};f=[{type:"percent",value:25,url:e.event1,fired:!1},{type:"percent",value:50,url:e.event2,fired:!1},{type:"percent",value:75,url:e.event3,fired:!1},{type:"time",value:3,url:e.event5,fired:!1},{type:"time",value:5,url:e.event6,fired:!1},{type:"time",value:10,url:e.event7,fired:!1}]}(),new g(n)):(e++,e<p.MAX_RETRIES&&setTimeout(t,p.RETRY_DELAY_MS))};t()},videoFullscreenClose:function(){const e=document.querySelector(p.SELECTOR);e&&e.remove()},adfoxTooltip:()=>{const e=document.querySelectorAll("[data-adfox-tooltip]");for(let t of e){if(t.dataset.tooltipCreated)return;let e=getComputedStyle(t);"absolute"!==e.position&&"fixed"!==e.position&&"sticky"!==e.position&&(t.style.position="relative"),y(t,t.dataset.adfoxTooltip),t.addEventListener("mouseenter",(e=>v(e))),t.addEventListener("mouseleave",(e=>w(e))),t.addEventListener("focus",(e=>v(e))),t.addEventListener("blur",(e=>w(e)))}}};class E{constructor(e,t,i){this.menuElement=document.querySelector(e),this.buttonElement=document.querySelector(t),this.menuElement&&this.buttonElement&&(this.t
1ype=i,this.isOpen=!1,this.isLoaded=!1,this.isLoading=!1,this.init(),n.register(this))}init(){const e=this.menuElement.querySelector(".js-menu-popup__close"),t=this.menuElement.querySelector(".js-menu-popup__close-link");e&&e.addEventListener("click",(()=>this.close())),t&&t.addEventListener("click",(()=>this.close())),this.buttonElement.addEventListener("click",(e=>{e.preventDefault(),this.handleButtonClick()}))}handleButtonClick(){this.isOpen?this.close():this.type&&!this.isLoaded?this.downloadContent().catch((e=>console.error("Не получилось загрузить меню:",e))):this.open()}toggle(){this.isOpen?this.close():this.open()}close(){const e=document.querySelector(".menu-tt-resizer");this.menuElement.classList.remove("is-open"),this.buttonElement.classList.remove("is-menu"),this.buttonElement.setAttribute("aria-expanded","false"),this.buttonElement.setAttribute("title","Развернуть"),this.isOpen=!1,e&&window.scrollTo({top:e.offsetTop,behavior:"smooth"})}open(){n.closeAllExcept(this),this.menuElement.classList.add("is-open"),this.buttonElement.classList.add("is-menu"),this.buttonElement.setAttribute("aria-expanded","true"),this.buttonElement.setAttribute("title","Свернуть"),this.isOpen=!0}async downloadContent(){if(this.isLoading)return;this.isLoading=!0;const e=this.menuElement.querySelector(".js-menu-items");if(!e)return;this.open(),e.innerHTML='<div class="loader loader--cntr loader--large" aria-label="Подождите"><svg xmlns="http://www.w3.org/2000/svg" x="0" y="0" viewBox="0 0 40 40" xml:space="preserve"><path opacity="0.2" class="loader__track" d="M20.201,5.169c-8.254,0-14.946,6.692-14.946,14.946c0,8.255,6.692,14.946,14.946,14.946s14.946-6.691,14.946-14.946C35.146,11.861,28.455,5.169,20.201,5.169z M20.201,31.749c-6.425,0-11.634-5.208-11.634-11.634c0-6.425,5.209-11.634,11.634-11.634c6.425,0,11.633,5.209,11.633,11.634C31.834,26.541,26.626,31.749,20.201,31.749z"/><path class="loader__runner" d="M26.013,10.047l1.654-2.866c-2.198-1.272-4.743-2.012-7.466-2.012h0v3.312h0C22.32,8.481,24.301,9.057,26.013,10.047z"><animateTransform attributeType="xml" attributeName="transform" type="rotate" from="0 20 20" to="360 20 20" dur=".7s" repeatCount="indefinite"/></path></svg></div>';const t="https://"+window.location.hostname.replace("guides.","")+"/web/dm-get-items?type_menu="+this.type;try{const n=await fetch(t,{method:"GET",headers:{"X-Requested-With":"XMLHttpRequest"}});e.innerHTML=await n.text(),this.isLoaded=!0}catch(t){console.error("Ошибка загрузки:",t),e.innerHTML='<div class="g-message g-message--warning">Ошибка загрузки</div>'}finally{this.isLoading=!1}}}const L=function(){new E("#js-menu-country-popup",".menu-tt__countries .js-menu-tt__btn","Страны"),new E("#js-menu-cities-popup",".menu-tt__cities .js-menu-tt__btn","Города"),new E("#js-menu-tourtype-popup",".menu-tt__tourtypes .js-menu-tt__btn");const e=document.querySelector(".tt-grid__middle-header");if(e){s();new ResizeObserver(s).observe(e)}};function T(e,t,n,i,s,o,r,a){if("true"===e.dataset.adfoxCreate)return;const l=document.createElement("div");l.id="adfox_"+t;const c=document.createElement("script");let d="window.yaContextCb.push(()=>{\n";d+="Ya.adfoxCode.create({\n",d+="ownerId: "+a+",\n",d+="containerId: 'adfox_"+t+"',\n",i&&(d+="type: '"+i+"',\n"),s&&(d+="platform: '"+s+"',\n"),o&&(d+="onRender: function() {"+o+"},\n"),r&&(d+="onVideoEnd: function() {"+r+"},\n"),d+="params: {"+n+"}\n",d+="})\n",d+="})\n";const u=document.createTextNode(d);c.append(u),e.append(l),e.append(c),e.dataset.adfoxCreate="true"}function _(e){const t=e.dataset.adviewId,n=e.dataset.adviewParams,i=e.dataset.adviewOwnerId?e.dataset.adviewOwnerId:1511406,s=e.dataset.adviewType?e.dataset.adviewType:null,o=e.dataset.adviewPlatform?e.dataset.adviewPlatform:null,r=e.dataset.adviewRender?e.dataset.adviewRender:null,a=e.dataset.adviewVideoEnd?e.dataset.adviewVideoEnd:null;let l=e.dataset.adviewScreen;t&&n?l?(l=l.toLowerCase(),(l.includes("mobile")&&"mobile"===screenType||l.includes("tablet")&&"tablet"===screenType||l.includes("desktop")&&"desktop"===screenType)&&T(e,t,n,s,o,r,a,i)):T(e,t,n,s,o,r,a,i):console.error(`Неверное подключение кода Adfox: id = ${t}, params = ${n}`)}function S(e){if("true"===e.dataset.otmCreate)return;const t=e.dataset.adviewId;if(!t)return void console.error(`Неверное подключение кода OTM BB: id = ${t}`);let n=document.createElement("script");n.src="https://static.videonow.ru/vn_init.js?profileId="+t+"&url=https%3A%2F%2Finit.videonow.ru%2F%3Finit",n.setAttribute("defer",""),e.append(n),e.dataset.otmCreate="true"}function x(e,t,n){if("true"===e.dataset.buzzoolaCreate)return;let i=document.createElement("div");i.className="buzzplayer-"+t+"-"+n;let s=document.createElement("script"),o=document.createTextNode(`(window.buzzoolaAdUnits = window.buzzoolaAdUnits || []).push({\n                                                         slot: document.querySelector('.buzzplayer-${t}-${n}'),\n                                                         placementId: ${t}});`);s.append(o),e.append(i),e.append(s),e.dataset.buzzoolaCreate="true"}function C(e){const t=e.dataset.adviewId;let n=e.dataset.adviewScreen;const i=e.dataset.adviewNum;t?n?(n=n.toLowerCase(),(n.includes("mobile")&&"mobile"===screenType||n.includes("tablet")&&"tablet"===screenType||n.includes("desktop")&&"desktop"===screenType)&&x(e,t,i)):x(e,t,i):console.error(`Неверное подключение кода Buzzoola: id = ${t}`)}const k=function(e=document){const t=e.querySelectorAll("[data-adview]"),n=new IntersectionObserver(((e,t)=>{e.forEach((e=>{if(e.isIntersecting){switch(e.target.dataset.adview.toLowerCase()){case"adfox":_(e.target),n.unobserve(e.target);break;case"buzzoola":C(e.target),n.unobserve(e.target);break;case"otmbb":S(e.target),n.unobserve(e.target)}t.unobserve(e.target)}}))}),{rootMargin:"50px 0px",threshold:0});for(let e of t)if("true"===e.dataset.adviewPromptly)switch(e.dataset.adview.toLowerCase()){case"adfox":_(e);break;case"buzzoola":C(e);break;case"otmbb":S(e)}else if(e.dataset.adviewDelay){const t=Number(e.dataset.adviewDelay);if(t||0===t)switch(e.dataset.adview.toLowerCase()){case"adfox":setTimeout(_,t,e);break;case"buzzoola":setTimeout(C,t,e);break;case"otmbb":setTimeout(S,t,e)}else console.error("Неверно задана задержка показа рекламы, допускается только число в мс, указанное сейчас значение: ",e.dataset.adviewDelay)}else n.observe(e)},I=function(){const e=document.querySelector(".mobile-header__hamburger button");e&&e.addEventListener("click",(function t(){k(document.querySelector(".sidebar-mobile")),e.removeEventListener("click",t)}))},M=document.body,D=e=>{e?M.classList.add("fixed"):M.classList.remove("fixed")},q=(e,t)=>
1{e&&(e.style.display=t?"block":"none")},A={mainContent:document.getElementById("js-tt-grid"),pageWidePlace:document.getElementById("wikiheader"),menuHamburger:{main:document.getElementById("js-sidebar-mobile"),inner:document.querySelector(".sidebar-mobile__inner--hamburger")},menuLeft:{main:document.getElementById("js-sidebar-mobile-LM"),inner:document.querySelector(".sidebar-mobile__inner--left-menu")},search:{panel:document.querySelector(".mobile-search-overlay"),wrapper:document.querySelector(".desktop-header__search"),input:document.getElementById("tt_searchInput")}};let O=!1,R=0;const B=e=>{e?window.scrollTo(0,0):window.scrollTo(0,R)};function N(e){e?(q(A.menuHamburger.main,!0),q(A.menuHamburger.inner,!0)):(q(A.menuHamburger.main,!1),q(A.menuHamburger.inner,!1))}function H(e){e?(q(A.search.panel,!0),A.search.wrapper&&A.search.wrapper.classList.add("is-mobile-search")):(q(A.search.panel,!1),A.search.wrapper&&A.search.wrapper.classList.remove("is-mobile-search"))}function $(e){e?(q(A.menuLeft.main,!0),q(A.menuLeft.inner,!0)):(q(A.menuLeft.main,!1),q(A.menuLeft.inner,!1))}function z(e){q(A.mainContent,!!e)}function P(e){q(A.pageWidePlace,!!e)}const j=()=>{O||(R=window.scrollY),z(!1),P(!1),H(!1),$(!1),N(!0),D(!0),B(!0),O=!0},F=()=>{N(!1),z(!0),P(!0),D(!1),B(!1),O=!1},U=()=>{O||(R=window.scrollY),N(!1),P(!1),$(!1),z(!0),H(!0),D(!0),setTimeout((()=>A.search.input?.focus()),100),B(!0),O=!0},Y=()=>{H(!1),z(!0),P(!0),D(!1),B(!1),O=!1},W=()=>{O||(R=window.scrollY),z(!1),N(!1),P(!1),H(!1),$(!0),D(!0),B(!0),O=!0},X=()=>{$(!1),z(!0),P(!0),D(!1),B(!1),O=!1},V=function(){const e=document.querySelector(".left-menu"),t=A.menuLeft.inner;if(!e||!t)return;document.body.classList.add("is-mobile-menu");const n=document.querySelector(".mobile-menu"),i=document.querySelector(".left-menu__close");q(n,!0);const s=e.cloneNode(!0);s.removeAttribute("id"),t.append(s);const r=e.dataset.mobileMenuName||"",[a,l]=r.split("|"),c=document.getElementById("js-mobile-menu-span");c&&a&&(c.textContent=a,q(c,!0));const d=A.menuLeft.inner.querySelector(".left-menu__country");if(l&&d){const e=o("span",{},l),n=o("button",{class:["mobile-menu","mobile-menu--bottom"],type:"button"},e);t.append(n),n.addEventListener("click",(()=>{const e=d.offsetTop-45;t.scrollTo({top:e,behavior:"smooth"})}));new IntersectionObserver((e=>{e.forEach((e=>{e.isIntersecting?n.style.display="none":e.boundingClientRect.top>0&&(n.style.display="block")}))}),{threshold:0}).observe(d)}n&&i&&(n.addEventListener("click",W),i.addEventListener("click",X))},K=function(e,t){const n=document.querySelector(t),i=document.querySelectorAll(e);n&&i.forEach((e=>{const t=e.cloneNode(!0);n.appendChild(t)}))};K(".top-menu__list > li",".hamburger-menu--top"),K(".menu-tt__list > li",".hamburger-menu--tt");const J=function(){let e=!1,t=0,n=0,i=!1;const s=document.querySelector(".mobile-header");s&&window.addEventListener("scroll",(()=>{i||(window.requestAnimationFrame((()=>{const o=window.scrollY||document.documentElement.scrollTop;O||(n=o);const r=t-o;if(!O&&!e&&Math.abs(r)>150){t=o;const n=parseInt(window.getComputedStyle(s).top)||0;r<0&&n>-100?(e=!0,s.style.top="-100px",setTimeout((()=>{e=!1}),200)):r>0&&n<0&&(e=!0,s.style.top="0px",setTimeout((()=>{e=!1}),200))}i=!1})),i=!0)}))},Q=function(){K(),function(){const e=document.querySelectorAll(".mobile-header__hamburger button"),t=document.querySelector(".mobile-header__close button");if(e&&t){for(let t of e)t.addEventListener("click",j);t.addEventListener("click",F)}const n=document.querySelectorAll(".mobile-header__search-icon-button"),i=document.querySelector(".mobile-search-overlay__close button");if(n&&i){for(let e of n)e.addEventListener("click",U);i.addEventListener("click",Y)}}(),V(),J(),function(){const e=document.querySelectorAll("#js-go2category-form select");for(let t of e)t.addEventListener("change",(function(e){const t=e.target.value;if(t)if(0===t.indexOf("/"))window.location.href=t;else{const e=document.getElementById(t);if(e){const t=e.closest("div");t&&(t.style.display="block")}}}))}(),I()},G={container:document.getElementById("flscr"),resetSessionTime:6e5,firstDelayFullscreen:0,firstPageInterval:12e4,intervalFullscreen:3e4,id1:"170255656984854816",params1:'{p1: "danoz", p2: "hiuq"}',id2:"170255656984854816",params2:'{p1: "danoz", p2: "hiuq"}',timerId1:void 0,timerId2:void 0};function Z(){localStorage.getItem("timeStampOnePage")||(G.id1===G.id2?G.timerId2=setTimeout(ie,G.firstPageInterval,G.id2,G.timerId2,"timeStampOnePage"):G.timerId2=setTimeout(ne,G.firstPageInterval,G.id2,G.params2,G.timerId2,"timeStampOnePage"))}function ee(e){localStorage.getItem(e)&&localStorage.removeItem(e);const t=(new Date).getTime().toString();localStorage.setItem(e,t);(new Date).setTime(Number(t))}function te(e,t,n){const i=document.createElement("div");i.id="adfox_"+e;const s=document.createElement("script"),o=document.createTextNode(`window.yaContextCb.push(()=>{\n    Ya.adfoxCode.create({\n        ownerId: 1511406,\n        containerId: 'adfox_${e}',\n        params: ${t},\n        onVideoEnd: () => {TTJS.videoFullscreenClose()},\n        onRender: () => {TTJS.videoFullscreen()}\n    })\n    })`);s.append(o),n.append(i),i.after(s)}function ne(e,t,n,i="timerFullscreen"){te(e,t,G.container),clearTimeout(n),ee(i)}function ie(e,t,n="timerFullscreen"){Ya.adfoxCode.destroy("adfox_"+e),setTimeout((()=>{Ya.adfoxCode.initialize("adfox_"+e)}),300),clearTimeout(t),ee(n)}function se(){localStorage.getItem("timeStampOnePage")&&localStorage.removeItem("timeStampOnePage"),ne(G.id1,G.params1,G.timerId1),Z()}const oe=function(){if(G.container&&"desktop"!==screenType){const e=function(){const e=localStorage.getItem("timerFullscreen");if(e)return(new Date).getTime()-Number(e);return!1}();e?e>G.resetSessionTime?G.timerId1=setTimeout(se,G.firstDelayFullscreen):e>=G.intervalFullscreen&&(te(G.id1,G.params1,G.container),ee("timerFullscreen"),Z()):G.timerId1=setTimeout(se,G.firstDelayFullscreen)}},re=function(e){let t=document.cookie.match(new RegExp("(?:^|; )"+e.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g,"\\$1")+"=([^;]*)"));return t?decodeURIComponent(t[1]):void 0};function ae(e){const t=e.toString().split("");let n=0;for(const e of t)n+=Number(e);return n}function le(e){let t;const n=Math.floor(1e4*Math.random()),i=Math.floor(1e4*Math.random()),s=ae(n),o=ae(i);return t=e?s<o?n.toString().padStart(4,"0")+i.toString().padStart(4,"0"):i.toString().padStart(4,"0")+n.toString().padStart(4,"0"):s>=o?n.toString().padStart(4,"0")+i.toString().padStart(4,"0"):i.toString().padStart(4,"0")+n.toString().padStart(4,"0"),t}const ce=function(){const e=re("tt_cd");if(e)(function(e){return ae(e.slice(0,4))>=ae(e.slice(-4))})(e)&&(k(),oe());else{let e=new AbortController;setTimeout((()=>e.abort()),2e3),async function(e){try{const t=await fetch("/web/dom-chk",{signal:e.signal});if(!t.ok)throw new Error(t.status);{const e=await t.json();document.cookie=`tt_cd=${e.bot?le(!0):le(!1)}; max-age=604800`,e.bot||(k(),"mobile"!==screenType&&"tablet"!==screenType||oe())}}catch(e){"AbortError"===e.name?console.error("Fetch /web/dom-chk не успел отдать ответ",e):console.error("Fetch /web/dom-chk",e)}}(e)}};let de=0;const ue=()=>{"undefined"!=typeof mw&&mw.config&&mw.config.get?async function(){const e="[WikiMenu Debug]:";if("object"!=typeof mw||"function"!=typeof mw.config.get)return void console.warn(`${e} MediaWiki core (mw) не найден или не инициализирован.`);const t={p:mw.config.get("wgPageName")||"",revid:mw.config.get("wgCurRevisionId")!==mw.config.get("wgRevisionId")?mw.config.get("wgRevisionId"):""};try{const n=await fetch("/service/get_wikimenu.php",{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded","X-Requested-With":"XMLHttpRequest"},body:new URLSearchParams(t).toString()});if(!n.ok)throw new Error(`Ошибка сервера: ${n.status} ${n.statusText}`);const i=await n.json();if(i.LINKHTML&&i.LINKHTML.length>0){const t=document.querySelector("#nocacheUserLoginLink");t?(t.innerHTML=i.LINKHTML,document.body.classList.add("is-tonkosti-login")):console.warn(`${e} Контейнер #nocacheUserLoginLink не найден в DOM.`)}if(i.MENUHTML&&i.MENUHTML.length>0){const t=document.querySelector("#nocacheUserTopMenu");t?t.innerHTML=i.MENUHTML:console.warn(`${e} Контейнер #nocacheUserTopMenu не найден в DOM.`)}}catch(t){console.error(`${e} критическая ошибка:`,t.message)}}():de<20?(de++,setTimeout(ue,50)):console.warn("[WikiMenu Debug]: исчерпано количество попыток загрузок меню...")},me=ue,he=function(){return"ontouchstart"in window||navigator.maxTouchPoints>0},pe={escapeRegExp:function(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")},splitAndHighlight:function(e,t){const n=t.split(" ");for(let t=0;t<n.length;t++)0!==n[t].length&&pe.innerHighlight(e,n[t]);return e},innerHighlight:function(e,t){if(e.nodeType===Node.TEXT_NODE){const n=e.data.match(new RegExp("(^|\\s)"+pe.escapeRegExp(t),"i"));if(n){const i=n.index+n[1].length,s=o("span",{class:"highlight"}),r=e.splitText(i);r.splitText(t.length);const a=r.cloneNode(!0);s.appendChild(a),r.parentNode.replaceChild(s,r)}}else if(e.nodeType===Node.ELEMENT_NODE&&e.childNodes&&!/(script|style)/i.test(e.tagName)&&("span"!==e.tagName.toLowerCase()||!e.className.match(/\bhighlight/)))for(let n=0;n<e.childNodes.length;++n)pe.innerHighlight(e.childNodes[n],t)},apply:function(e,t){(e instanceof NodeList||Array.isArray(e)?e:[e]).forEac
1h((e=>{e.dataset.highlightOriginalText=e.textContent,pe.splitAndHighlight(e,t)}))}},fe=pe;const ge=class{constructor(e,t={}){this.input="string"==typeof e?document.querySelector(e):e,this.input&&(this.config={maxRows:10,delay:120,cache:!0,cacheMaxAge:6e4,minLength:3,highlightInput:!0,fetch:null,...t},this.state={timerID:null,prevText:"",cache:new Map,selectedIndex:-1,resultsData:[]},this.initDOM(),this.bindEvents())}initDOM(){this.container=o("div",{class:"tt-suggestions",style:"display: none"}),this.resultsContainer=o("div",{class:"tt-suggestions__results"}),this.resultsContainerInner=o("div",{class:"tt-suggestions__results-inner"}),this.specialContainer=o("div",{class:"tt-suggestions__special"}),this.container.appendChild(this.resultsContainer),this.resultsContainer.appendChild(this.resultsContainerInner),this.container.appendChild(this.specialContainer),document.body.appendChild(this.container),this.input.setAttribute("autocomplete","off")}updatePosition(){const e=this.input.closest("span"),t=e?e.getBoundingClientRect():this.input.getBoundingClientRect();this.container.style.top=`${t.bottom+window.scrollY}px`,this.container.style.left=`${t.left+window.scrollX}px`,this.container.style.width=`${t.width}px`}bindEvents(){this.input.addEventListener("input",(e=>{this.handleInput(e.target.value)})),this.input.addEventListener("keydown",(e=>this.handleKeydown(e))),this.container.addEventListener("keydown",(e=>{["ArrowUp","ArrowDown","ArrowLeft","ArrowRight","Enter","Escape"].includes(e.key)&&this.handleKeydown(e)}),{capture:!0}),this.input.addEventListener("focus",(()=>{this.input.value.length>0&&this.resultsContainerInner.children.length>0&&this.show()})),document.addEventListener("mousedown",(e=>{this.container.contains(e.target)||e.target===this.input||this.hide()}))}handleInput(e){if(0===e.length)return this.hide(),void(this.state.prevText="");e!==this.state.prevText&&(this.state.prevText=e,clearTimeout(this.state.timerID),e.trim().length<this.config.minLength?this.hide():this.state.timerID=setTimeout((()=>{if(this.config.cache&&this.state.cache.has(e)){const t=this.state.cache.get(e);if(Date.now()-t.timestamp<this.config.cacheMaxAge)return void this.renderResults(t.data);this.state.cache.delete(e)}"function"==typeof this.config.fetch&&this.config.fetch(e,(t=>{this.config.cache&&this.state.cache.set(e,{data:t,timestamp:Date.now()}),this.renderResults(t)}),this.config.maxRows)}),this.config.delay))}renderResults(e){if(this.resultsContainerInner.innerHTML="",this.specialContainer.innerHTML="",this.state.resultsData=e.S||[],this.state.selectedIndex=-1,!this.state.resultsData.length){const e=o("a",{class:"tt-suggestions__special-link",href:"/%D0%A1%D0%BB%D1%83%D0%B6%D0%B5%D0%B1%D0%BD%D0%B0%D1%8F:%D0%9F%D0%BE%D0%B8%D1%81%D0%BA?search="+this.state.prevText+"&amp;fulltext=1"},"Ничего не найдено, уточните поиск");return this.specialContainer.appendChild(e),this.updatePosition(),void this.show()}const t=document.createDocumentFragment();this.state.resultsData.slice(0,this.config.maxRows).forEach(((e,n)=>{const i=o("div",{class:"tt-suggestions__result",dataset:{index:n,text:e.title}}),s=o("a",{href:e.url,title:e.title,class:"tt-suggestions__result-link"},e.title);if(i.appendChild(s),this.config.highlightInput&&fe.apply(i,this.state.prevText),e.btn&&Array.isArray(e.btn)&&e.btn.length>0){const t=o("div",{class:"tt-suggestions__sections"});e.btn.forEach((e=>{const n=o("button",{type:"button",class:"tt-suggestions__result-btn",title:e.title},e.txt);n.addEventListener("click",(t=>{t.stopPropagation(),this.input.value=e.title,window.location.href=e.url})),t.appendChild(n)})),i.appendChild(t)}i.addEventListener("click",(t=>{t.preventDefault(),this.input.value=e.title,window.location.href=e.url})),t.appendChild(i)})),this.resultsContainerInner.appendChild(t),this.updatePosition(),this.show()}handleKeydown(e){const t=this.resultsContainerInner.querySelectorAll(".tt-suggestions__result");if(!t.length||"block"!==this.container.style.display)return;const n=()=>this.state.selectedIndex>-1?t[this.state.selectedIndex].querySelectorAll(".tt-suggestions__result-btn"):[];if("ArrowDown"===e.key)e.preventDefault(),this.state.selectedIndex=(this.state.selectedIndex+1)%t.length,this.highlightItem(t),this.input.focus();else if("ArrowUp"===e.key)e.preventDefault(),this.state.selectedIndex=this.state.selectedIndex<=0?t.length-1:this.state.selectedIndex-1,this.highlightItem(t),this.input.focus();else if("ArrowRight"===e.key){const t=n();if(!t.length)return;e.preventDefault();const i=Array.from(t).indexOf(document.activeElement);-1===i?t[0].focus():i<t.length-1?t[i+1].focus():this.input.focus()}else if("ArrowLeft"===e.key){const t=n();if(!t.length)return;e.preventDefault();const i=Array.from(t).indexOf(document.activeElement);-1===i?t[t.length-1].focus():i>0?t[i-1].focus():this.input.focus()}else if("Enter"===e.key){if(document.activeElement.classList.contains("tt-suggestions__result-btn"))return;if(this.state.selectedIndex>-1){e.preventDefault();const n=t[this.state.selectedIndex].querySelector(".tt-suggestions__result-link");n&&n.click()}}else"Escape"===e.key&&this.hide()}highlightItem(e){if(e.forEach((e=>e.classList.remove("is-focus"))),this.state.selectedIndex>-1){const t=e[this.state.selectedIndex];t.classList.add("is-focus"),this.input.value=t.dataset.text}}show(){this.container.style.display="block"}hide(){this.container.style.display="none"}},ye=function(){const e=document.getElementById("tt_searchInput"),t=document.getElementById("js-tt_section"),n=t?t.dataset.val:"";let i=null;e&&new ge(e,{highlightInput:!0,fetch:async(e,t,s)=>{i&&i.abort(),i=new AbortController;const o=document.querySelector(".loader--search");o&&(o.style.display="block");
1try{const r=new URLSearchParams;r.append("s",e),r.append("limit",s),r.append("pt",n);const a=await fetch("/service/tt_search.php",{method:"POST",body:r,signal:i.signal,credentials:"same-origin",headers:{"Content-Type":"application/x-www-form-urlencoded","X-Requested-With":"XMLHttpRequest",Accept:"application/json, text/javascript, */*; q=0.01"}});if(!a.ok)throw new Error("Network response was not ok");const l=await a.text();if(!l||""===l.trim())return void t({S:[]});t(JSON.parse(l))}catch(e){"AbortError"!==e.name&&console.error("Search fetch error:",e)}finally{o&&(o.style.display="none")}}})};"mobile"===screenType&&document.addEventListener("DOMContentLoaded",(()=>{Q()})),"mobile"!==screenType&&document.addEventListener("DOMContentLoaded",(()=>{L()})),document.addEventListener("DOMContentLoaded",(()=>{ce(),me(),ye(),he&&document.documentElement.classList.add("touch")})),window.TTJS=b,window.jQtnk=window.jQuery})();

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.