(function(){"use strict";const E="5.0.9",o={FONBET:"fonbet",FONBET_BEL:"fonbetBel",BETBOOM:"betboom",BETCITY:"betcity",OLIMPBET:"olimpbet",WINLINE:"winline",PARIBET:"paribet",LIGASTAVOK:"ligastavok"};Object.values(o);const b={[o.BETBOOM]:"https://special.matchtv.ru/feeds/betboom/matchtv",[o.BETCITY]:"https://special.matchtv.ru/feeds/betcity/matchtv",[o.FONBET]:"https://special.matchtv.ru/feeds/fonbet/matchtv",[o.FONBET_BEL]:"https://special.matchtv.ru/feeds/fonbet/matchtvBel",[o.LIGASTAVOK]:"https://special.matchtv.ru/feeds/ligastavok/matchtv",[o.OLIMPBET]:"https://special.matchtv.ru/feeds/olimpbet/matchtv",[o.PARIBET]:"https://special.matchtv.ru/feeds/paribet/matchtv",[o.WINLINE]:"https://special.matchtv.ru/feeds/winline/matchtv"},m="COEFS_PARSER_RENDER_DONE";class y{addCustomEventListener(e,t,s){window.addEventListener(e,t,s)}sendRenderDoneMessage(e){window.dispatchEvent(new CustomEvent(m,{detail:{element:e}}))}}const v=new y,u={MATCHTV:"matchtv",SPORTBOX:"sportbox"},O={[o.FONBET]:!0,[o.WINLINE]:!0,[o.BETBOOM]:!0},T={[u.MATCHTV]:{[o.FONBET]:{bonusUrl:"https://clicks.af-ru2e2e.com/click?offer_id=1121&partner_id=24785&landing_id=4898&utm_medium=media&sub_1={match}&sub_2={bonusm}&sub_3={fb15k}",logoUrl:"https://clicks.af-ru2e2e.com/click?offer_id=1121&partner_id=24785&landing_id=4898&utm_medium=media&sub_1={match}&sub_2={logom}&sub_3={fb15k}"},[o.WINLINE]:{bonusUrl:"https://p.winline.ru/s/6io_HqjCbD?statid=4292_coeff&sub=coeff&sub2=bonus",logoUrl:"https://p.winline.ru/s/6io_HqjCbD?statid=4292_coeff/?erid=2W5zFJJCKYC&sub=coeff&sub2=logo"},[o.BETBOOM]:{bonusUrl:"https://betboom.ru/land/UFCMedia?utm_source=matchtv&utm_medium=cpm&utm_campaign=ufc&utm_term=odds_bonus&utm_content=MATCHTV&erid=2W5zFJWvxCG",logoUrl:"https://betboom.ru/land/UFCMedia?utm_source=matchtv&utm_medium=cpm&utm_campaign=ufc&utm_term=odds_logo&utm_content=MATCHTV&erid=2W5zFJWvxCG"}},[u.SPORTBOX]:{[o.FONBET]:{bonusUrl:"https://clicks.af-ru2e2e.com/click?offer_id=1121&partner_id=24785&landing_id=4898&utm_medium=media&sub_1=%7Bsportbox%7D&sub_2=%7Bbonussp%7D&sub_3=%7Bfb15k%7D",logoUrl:"https://clicks.af-ru2e2e.com/click?offer_id=1121&partner_id=24785&landing_id=4898&utm_medium=media&sub_1=%7Bsportbox%7D&sub_2=%7Blogosp%7D&sub_3=%7Bfb15k%7D"},[o.WINLINE]:{bonusUrl:"https://p.winline.ru/s/Cr83dD0Ubo?statid=4293_coeff&sub=coeff&sub2=bonus",logoUrl:"https://p.winline.ru/s/Cr83dD0Ubo?statid=4293_coeff/?erid=2W5zFJJCKYC&sub=coeff&sub2=logo"},[o.BETBOOM]:{bonusUrl:"https://betboom.ru/land/UFCMedia?utm_source=sportbox&utm_medium=cpm&utm_campaign=ufc&utm_term=odds_bonus&utm_content=SPORTBOX&erid=2W5zFHDKvJc",logoUrl:"https://betboom.ru/land/UFCMedia?utm_source=sportbox&utm_medium=cpm&utm_campaign=ufc&utm_term=odds_logo&utm_content=SPORTBOX&erid=2W5zFHDKvJc"}}};class w{getExceptionsLinksBySiteVariants({siteVariants:e,ratesProvider:t}){const s={bonusUrl:null,logoUrl:null};return(e===u.MATCHTV||e===u.SPORTBOX)&&this.isExceptionRatesProvider(t)?T[e][t]:s}isExceptionRatesProvider(e){return e in O}}const h=new w,B=({logo:n,game:e,siteVariants:t,ratesProvider:s})=>{const{bonusUrl:a,logoUrl:i}=h.getExceptionsLinksBySiteVariants({siteVariants:t,ratesProvider:s});return`
`},P=({logo:n,game:e})=>`
`,N=({logo:n,game:e})=>`
`;class ${isMobile(){return"userAgentData"in navigator&&navigator.userAgentData?.mobile?!0:/Mobi|Android|iPhone|iPad|iPod/i.test(navigator.userAgent)}}const R=new $,I=({logo:n,game:e})=>{const s=R.isMobile()?"https://l.pari.ru/mEiY/feedapp":"https://www.pari.ru/?utm_source=matchtv&utm_medium=cpm&utm_campaign=feedmatchtv&utm_term=&utm_content=";return`
`},F=({logo:n,game:e})=>e.p1&&e.x&&e.p2?``:``,M=({logo:n,game:e,siteVariants:t,ratesProvider:s})=>{const{bonusUrl:a,logoUrl:i}=h.getExceptionsLinksBySiteVariants({siteVariants:t,ratesProvider:s});return`
`},_=({game:n,logo:e,siteVariants:t,ratesProvider:s})=>{const{bonusUrl:a,logoUrl:i}=h.getExceptionsLinksBySiteVariants({siteVariants:t,ratesProvider:s});return`
`},C={[o.PARIBET]:I,[o.FONBET]:_,[o.FONBET_BEL]:_,[o.BETBOOM]:B,[o.BETCITY]:P,[o.OLIMPBET]:F,[o.WINLINE]:M,[o.LIGASTAVOK]:N},S=Object.values(o).map(n=>`#${n}`).join(", ");class x{constructor(){this.showRates=this.showRates.bind(this),this.removeRates=this.removeRates.bind(this),this.includeStyles=this.includeStyles.bind(this)}includeStyles(e){if(!e)return;const t=document.querySelector("head"),s=document.createElement("link");s.setAttribute("href",e),s.setAttribute("rel","stylesheet"),t.append(s)}showRates(e,t,s){for(const{node:a,game:i,params:r}of e){const d=(s[r.provider]||C[r.provider])({game:i,logo:r.logoUrl,marking:r.marking,siteVariants:t,ratesProvider:r.provider});a.insertAdjacentHTML("afterend",d),a.classList.add("no_border")}}removeRates(e=document){const t=e.querySelectorAll(S);for(const s of t)s.parentNode&&s.remove()}}const f=new x;class A{pickProvider(e){const t=Object.entries(e),s=t.reduce((i,[,r])=>i+r.percentShow,0);let a=Math.random()*s;for(const[i,r]of t)if(a-=r.percentShow,a<=0)return i;return t[t.length-1][0]}}const U=new A;class D{constructor(){this.chosenProvidersOnPage={},this.getNodesWithRates=this.getNodesWithRates.bind(this)}getEventNodes(e=document){return e.querySelectorAll("[data-rates-json]")}chooseProvidersForEntities(e,t=!1){return e.forEach(s=>{if(!s.dataset.ratesJson)return;const{entityId:a,providers:i}=JSON.parse(s.dataset.ratesJson);(!this.getChosenProviderByEntityId(a)||t)&&this.setChosenProviderByEntityId(a,U.pickProvider(i))}),this.chosenProvidersOnPage}getProvidersFromChosen(){return[...new Set(Object.values(this.chosenProvidersOnPage))]}pickDemandedFeedUrls(e,t){return Object.fromEntries(Object.entries(e).filter(([s])=>t.includes(s)))}getNodesWithRates(e,t,s){const a=[];for(const i of t){const r=this.getNodeParams(i,s);if(!r)continue;const c=this.getRelevantGame(r,e);c&&a.push({node:i,game:c,params:r})}return a}getNodeParams(e,t){const{entityId:s,providers:a,date:i,homeName:r,guestName:c}=JSON.parse(e.dataset.ratesJson),d=new Date(i),g=t[s],k=a[g];if(!k)return null;const{eventId:J,marking:X,logoUrl:z}=k;return{eventId:J,marking:X,logoUrl:z,homeName:r.toLowerCase(),guestName:c.toLowerCase(),provider:g,date:d}}getRelevantGame(e,t){if(new Date>e.date)return;const i=t.filter(r=>{if(e.provider!==r.provider)return;const c=this.checkMatchById(e.eventId,r.event_id);return c||(this.checkMatchByTeamName(e,r)?this.checkMatchByDate(e,r):!1)});return i.length>0?i[0]:!1}checkMatchById(e,t){return!e||!t?!1:e==t}checkMatchByTeamName(e,t){const{homeName:s,guestName:a}=e,i=t.team1_name.toLowerCase(),r=t.team2_name.toLowerCase();return s===i&&a===r||s===r&&a===i}checkMatchByDate(e,t){const s=t.date.slice(0,Math.max(0,t.date.indexOf("T"))),a=new Date(s);return e.date.getDate()===a.getDate()}getChosenProviderByEntityId(e){return this.chosenProvidersOnPage[e]}setChosenProviderByEntityId(e,t){this.chosenProvidersOnPage[e]=t}}const l=new D;class L{constructor(){this.archivedFeeds={},this.getUpdatedFeed=this.getUpdatedFeed.bind(this),this.getArchivedFeed=this.getArchivedFeed.bind(this)}async getUpdatedFeed(e,t){try{const s=await this.loadGames(t);return this.archivedFeeds[e]=s,s}catch{return this.archivedFeeds[e]}}async loadGames(e){const t=await window.fetch(e,{method:"GET"});if(!t.ok)throw new Error(`Код ошибки: ${t.status}`);return t.json()}getArchivedFeed(e){return this.archivedFeeds[e]||null}async getCombinedFeed(e){const t=Object.keys(e).map(a=>this.getFeed(a,e[a]));return(await Promise.all(t)).flat()}async getFeed(e,t){const s=this.getArchivedFeed(e);return s||this.getUpdatedFeed(e,t)}}const H=new L;class V{constructor(){}showMarkingOfChosenProvider(e){this.hideAllMarking(),Object.entries(e).forEach(([t,s])=>{const a=this.findMarkingNodes(t,s);this.showMarkingOfNodes(a)})}findMarkingNodes(e,t){const s=`[data-rates-marking-entity-id="${e}"][data-rates-marking-provider="${t}"]`;return document.querySelectorAll(s)}showMarkingOfNodes(e){e.forEach(t=>t.classList.remove("is-hidden"))}hideAllMarking(){document.querySelectorAll("[data-rates-marking-entity-id]").forEach(t=>t.classList.add("is-hidden"))}}const W=new V;class j{constructor(){this.VERSION=E,this.feedUrls=b,this.messages=[],this.isFeedsLoading=!1,this.siteVariants=null,this.isInitialized=!1,this.htmlRenderers={}}dirtyHack(e){setTimeout(()=>{this.launch(e)},100)}init(e){this.isInitialized||(document.readyState==="complete"?this.dirtyHack(e):document.addEventListener("readystatechange",()=>{document.readyState==="complete"&&this.dirtyHack(e)}),this.isInitialized=!0)}reInit(e){this.isInitialized=!1,this.init(e)}launch({feedUrls:e,messages:t,stylesUrl:s=null,siteVariants:a,htmlRenderers:i}){e&&Object.keys(e).length>0&&(this.feedUrls=e),Array.isArray(t)&&t.length>0&&(this.messages=t),s&&f.includeStyles(s),typeof i=="object"&&i!==null&&(this.htmlRenderers=i),a&&(this.siteVariants=a),this.update(),this.constantlyUpdate(),this.setMessageHandlers()}async update({block:e=document,resetChosenProviders:t=!1}={}){if(this.isFeedsLoading)return;let s=l.getEventNodes(e);if(s.length===0)return;const a=l.chooseProvidersForEntities(s,t),i=l.getProvidersFromChosen(),r=l.pickDemandedFeedUrls(this.feedUrls,i);this.isFeedsLoading=!0;const c=await H.getCombinedFeed(r);if(this.isFeedsLoading=!1,c.length===0)return;s=l.getEventNodes();const d=l.getNodesWithRates(c,s,a);d&&(f.removeRates(),f.showRates(d,this.siteVariants,this.htmlRenderers),W.showMarkingOfChosenProvider(a),v.sendRenderDoneMessage(e))}constantlyUpdate(){setInterval(this.update.bind(this),1e3*60*10)}setMessageHandlers(){const e=this.messages;Array.isArray(e)&&e.length>0&&e.forEach(t=>{v.addCustomEventListener(t,this.messageHandler.bind(this),!0)})}messageHandler(e){const t=e.detail.element,s=e.detail.resetChosenProviders||!1;t&&(f.removeRates(t),this.update({block:t,resetChosenProviders:s}))}}const p=new j,G={constants:{FEED:b,RATES_PROVIDER:o,COEFS_PARSER_RENDER_DONE_EVENT:m},VERSION:p.VERSION,init:p.init.bind(p),reInit:p.reInit.bind(p),update:p.update.bind(p),getChosenProviderByEntityId:l.getChosenProviderByEntityId.bind(l)};window.coefsParser=G})();
Трансферы, Ислам Феруз (Футбол) (10.09.1995)
© ООО «Национальный спортивный телеканал» 2007 — 2025.
Для лиц старше 18 лет
На сайте применяются рекомендательные технологии. Подробнее в
Правилах применения рекомендательных технологий
Средство массовой информации сетевое издание «www.sportbox.ru» зарегистрировано Федеральной службой по надзору в сфере связи, информационных технологий и массовых коммуникаций (Роскомнадзор).
Свидетельство о регистрации средства массовой информации Эл № ФС77-72613 от 04.04.2018
Название — www.sportbox.ru
Учредитель (соучредители) СМИ сетевого издания «www.sportbox.ru»: ООО «Национальный спортивный телеканал»
Главный редактор СМИ сетевого издания «www.sportbox.ru»: Конов В.А.
Номер телефона редакции СМИ сетевого издания «www.sportbox.ru»: +7 (495) 653 8419
Адрес электронной почты редакции СМИ сетевого издания «www.sportbox.ru»: editor@sportbox.ru