JHYB s.r.o.

Firma JHYB s.r.o., společnost s ručením omezeným. V obchodním rejstříku je zapsána pod spisovou značkou C 7711, Krajský soud v Brně. Její základní kapitál je ve výši 10 154 000 Kč.

Základní údaje o subjektu

IČ:

46976191

Sídlo:

Jívoví 92, 594 51

Právní forma:

Společnost s ručením omezeným

Datum vzniku:

4. 11. 1992

DIČ:

CZ46976191

Máte od tohoto subjektu nesplacené pohledávky?

Registr ekonomických subjektů

Statistické údaje

institucionální sektor Národní soukromé nefinanční podniky
velikostní kat. dle počtu zam. 20 - 24 zaměstnanci

Klasifikace ekonomických činností

01460 Chov prasat
016 Podpůrné činnosti pro zemědělství a posklizňové činnosti
03220 Sladkovodní akvakultura
20200 Výroba pesticidů a jiných agrochemických přípravků
28300 Výroba zemědělských a lesnických strojů
45200 Opravy a údržba motorových vozidel, kromě motocyklů
46340 Velkoobchod s nápoji
47300 Maloobchod s pohonnými hmotami ve specializovaných prodejnách
52210 Činnosti související s pozemní dopravou

Adresa

92, Jívoví 59451

Obchodní rejstřík

Spisová značka

C 7711, Krajský soud v Brně

Obchodní firma

JHYB s.r.o. od 27. 2. 2002

Obchodní firma

JHYB společnost s ručením omezeným, zkratka JHYB s.r.o. do 27. 2. 2002 od 15. 11. 1994

Obchodní firma

J Hyb společnost s ručením omezeným do 15. 11. 1994 od 4. 11. 1992

Právní forma

Společnost s ručením omezeným od 4. 11. 1992

adresa

92
Jívoví 59451 od 8. 12. 2022

adresa

Jakubovický Dvůr 92
Křižanov 59451 do 8. 12. 2022 od 27. 2. 2002

adresa

Jakubovický Dvůr
Křižanov 59451 do 27. 2. 2002 od 4. 11. 1992

Předmět podnikání

Výroba, obchod a služby neuvedené v přílohách 1 až 3 živnostenského zákona od 8. 12. 2022

provozování čerpacích stanic s palivy a mazivy do 8. 12. 2022 od 23. 8. 1995

silniční motorová doprava do 8. 12. 2022 od 15. 11. 1994

opravy motorových vozidel do 8. 12. 2022 od 15. 11. 1994

výroba a opravy zemědělských strojů do 8. 12. 2022 od 15. 11. 1994

hubení škodlivých živočichů, rostlin, mikroorganizmů a potlačování dalších škodlivých činitelů jedy do 8. 12. 2022 od 15. 11. 1994

odbyt zvláště nebezpečných jedů do 8. 12. 2022 od 15. 11. 1994

výroba a odbyt jedů a žíravin s výjimkou jedů zvláště nebezpečných do 8. 12. 2022 od 15. 11. 1994

práce s mechanizačními prostředky do 8. 12. 2022 od 15. 11. 1994

- nákup zboží za účelem jeho dalšího prodeje a prodej - zemědělství, včetně prodej neupracovaných zemědělských výrobků za účelem dalšího zpracování nebo prodeje - plemenářská činnost a šlechtění v chovu hospodářských zvířat podle zák.č. 240/91 Sb. o šlechtění a plenitbě hospodářských zvířat od 4. 11. 1992

Ostatní skutečnosti

Obchodní korporace se podřídila zákonu jako celku postupem podle § 777 odst. 5 zákona č. 90/2012 Sb., o obchodních společnostech a družstvech. od 1. 8. 2014

Počet členů statutárního orgánu: 2 do 8. 12. 2022 od 1. 8. 2014

Právní forma právnické osoby: společnost s ručením omezeným do 15. 11. 1993 od 4. 11. 1992

Základní jmění: 140.000,-- Kčs, splaceno 56.000,-- Kčs do 15. 11. 1993 od 4. 11. 1992

Výše vkladů společníků: ing. František Ficek, Velké Meziříčí, Družstevní 51 - vklad 20.000,-- Kčs, splaceno 8.000,-- Kčs ing. Lenka Hanáková, Velké Meziříčí, Karlov 83 - vklad 20.000,-- Kčs, splaceno 8.000,-- Kčs ing. Vincenc Pospíšil, Velké Meziříčí, Jabloňov 8 - vklad 20.000,-- Kčs, splaceno 8.000,-- Kčs ing. Miroslav Pokorný, Hradišťko pod Medníkem 167 - vklad 20.000,-- Kčs, splaceno 8.000,-- Kčs ing. Bohumil Prudík, Velké Meziříčí, Družstevní 1347 do 15. 11. 1993 od 4. 11. 1992

- vklad 20.000,-- Kčs, splaceno 8.000,-- Kčs Josef Karmazín, Křoví, Níhov 12 - vklad 20.000,-- Kčs, splaceno 8.000,-- Kčs ing. Jan Veleba, Velké Meziříčí, Nad tratí 11 - vklad 20.000,-- Kčs, splaceno 8.000,-- Kčs do 15. 11. 1993 od 4. 11. 1992

Kapitál

Základní kapitál

vklad 10 154 000 Kč

od 19. 9. 2008

Základní kapitál

vklad 154 000 Kč

do 19. 9. 2008 od 15. 11. 1993

Statutární orgán

2 fyzické osoby

Ing. Stanislav Prokeš

jednatel

První vztah: 12. 9. 2015

vznik funkce: 29. 9. 2011

Bohdalov 65, 592 13, Česká republika

Další vztah k této osobě

Ing. Radvan Kosek

jednatel

První vztah: 12. 9. 2015

vznik funkce: 1. 7. 2015

Moravec 194, 592 54, Česká republika

Další 3 vztahy k této osobě

Historické vztahy

Ing. Marie Burešová

jednatel

První vztah: 2. 9. 2015 - Poslední vztah: 12. 9. 2015

vznik funkce: 29. 9. 2011

zánik funkce: 1. 7. 2015

Sklené nad Oslavou 71, 591 01, Česká republika

Zuzana Kostrbová

jednatel

První vztah: 11. 10. 2011 - Poslední vztah: 19. 2. 2013

vznik funkce: 29. 9. 2011

zánik funkce: 3. 1. 2013

Zvole 29, 592 56, Česká republika

Ing. Marie Burešová

jednatel

První vztah: 11. 10. 2011 - Poslední vztah: 2. 9. 2015

vznik funkce: 29. 9. 2011

Sklené nad Oslavou 71, 591 01, Česká republika

Ing. Stanislav Prokeš

jednatel

První vztah: 11. 10. 2011 - Poslední vztah: 12. 9. 2015

vznik funkce: 29. 9. 2011

Bohdalov 65, 592 13, Česká republika

Ing. Pavel Král

jednatel

První vztah: 18. 1. 2010 - Poslední vztah: 11. 10. 2011

vznik funkce: 1. 12. 2009

zánik funkce: 29. 9. 2011

Makovského 340, Nové Město na Moravě, 592 31, Česká republika

Ing. Ladislav Sysel

jednatel

První vztah: 18. 6. 2007 - Poslední vztah: 18. 1. 2010

vznik funkce: 31. 5. 2007

zánik funkce: 1. 12. 2009

Vídeň 107, 594 01, Česká republika

Ing. Josef Vondráček

jednatel

První vztah: 18. 6. 2007 - Poslední vztah: 2. 6. 2011

vznik funkce: 31. 5. 2007

zánik funkce: 2. 5. 2011

Martinice 100, 594 01, Česká republika

Dalších 8 vztahů k této osobě

ing. Jan Veleba

jednatel

První vztah: 27. 2. 2002 - Poslední vztah: 2. 6. 2011

vznik funkce: 4. 11. 1992

zánik funkce: 2. 5. 2011

Nad Tratí 1467/11, Velké Meziříčí, 594 01, Česká republika

ing. Vincenc Pospíšil

jednatel

První vztah: 27. 2. 2002 - Poslední vztah: 18. 6. 2007

vznik funkce: 4. 11. 1992

zánik funkce: 31. 5. 2007

Jabloňov 8, Velké Meziříčí, 594 01, Česká republika

ing. František Ficek

jednatel

První vztah: 27. 2. 2002 - Poslední vztah: 18. 6. 2007

vznik funkce: 4. 11. 1992

zánik funkce: 31. 5. 2007

Družstevní 1705/51, Velké Meziříčí, 594 01, Česká republika

ing. Lenka Švecová

jednatelka

První vztah: 29. 5. 1996 - Poslední vztah: 28. 5. 1998

Karlov 83, Velké Meziříčí, Česká republika

ing. Lenka Hanáková

jednatelka

První vztah: 4. 11. 1992 - Poslední vztah: 29. 5. 1996

Karlov 83, Velké Meziříčí, Česká republika

ing. Bohumil Prudík

jednatel

První vztah: 4. 11. 1992 - Poslední vztah: 29. 5. 1996

Družstevní 1347, Velké Meziříčí, Česká republika

Josef Karmazín

jednatel

První vztah: 4. 11. 1992 - Poslední vztah: 28. 5. 1998

Níhov 12, Křoví, Česká republika

ing. Miroslav Pokorný

jednatel

První vztah: 4. 11. 1992 - Poslední vztah: 28. 5. 1998

Hradišťko pod Medníkem 167, Česká republika

ing. František Ficek

jednatel

První vztah: 4. 11. 1992 - Poslední vztah: 27. 2. 2002

Družstevní 51, Velké Meziříčí, Česká republika

ing. Vincenc Pospíšil

jednatel

První vztah: 4. 11. 1992 - Poslední vztah: 27. 2. 2002

Jabloňov 8, Velké Meziříčí, Česká republika

ing. Jan Veleba

jednatel

První vztah: 4. 11. 1992 - Poslední vztah: 27. 2. 2002

Nad tratí 11, Velké Meziříčí, Česká republika

Za společnost jedná kterýkoliv jednatel samostatně ve všech věcech. Jednatel za společnost podepisuje tak, že k napsané či vytištěné nebo otištěné firmě společnosti připojí svůj podpis

od 1. 8. 2014

Způsob zastupování: Jménem společnosti jedná a podepisuje jednatel.

do 1. 8. 2014 od 4. 11. 1992

Další vztahy firmy JHYB s.r.o.

1 fyzická osoba

Tomáš Staněk

První vztah: 12. 9. 2015

Uhřice 41, 679 63, Česká republika

Historické vztahy

Tomáš Staněk

První vztah: 22. 5. 2013 - Poslední vztah: 12. 9. 2015

Uhřice 41, 679 63, Česká republika

ing. Jan Veleba

První vztah: 19. 9. 2008 - Poslední vztah: 18. 1. 2010

vklad 36 000 Kč

splaceno 100 %

obchodní podíl třicetšest desettisícstopadesátičtvrtin

Nad Tratí 1467/11, Velké Meziříčí, 594 01, Česká republika

ing. Jan Veleba

První vztah: 18. 6. 2007 - Poslední vztah: 19. 9. 2008

vklad 36 000 Kč

splaceno 100 %

obchodní podíl 23,37 %

Nad Tratí 1467/11, Velké Meziříčí, 594 01, Česká republika

Ing. Pavel Král

První vztah: 18. 6. 2007 - Poslední vztah: 4. 2. 2010

Makovského 340, Nové Město na Moravě, 592 31, Česká republika

Josef Karmazín

První vztah: 27. 2. 2002 - Poslední vztah: 18. 6. 2007

vklad 22 000 Kč

splaceno splaceno

obchodní podíl 22/154

Níhov 12, Křoví, 594 54, Česká republika

ing. Jan Veleba

První vztah: 27. 2. 2002 - Poslední vztah: 18. 6. 2007

vklad 36 000 Kč

splaceno 36 000 Kč

obchodní podíl 36/154

Nad Tratí 1467/11, Velké Meziříčí, 594 01, Česká republika

ing. Vincenc Pospíšil

První vztah: 27. 2. 2002 - Poslední vztah: 18. 6. 2007

vklad 35 000 Kč

splaceno 35 000 Kč

obchodní podíl 35/154

Jabloňov 8, Velké Meziříčí, 594 01, Česká republika

ing. František Ficek

První vztah: 27. 2. 2002 - Poslední vztah: 18. 6. 2007

vklad 35 000 Kč

splaceno 35 000 Kč

obchodní podíl 35/154

Družstevní 1705/51, Velké Meziříčí, 594 01, Česká republika

ing. Lenka Švecová

První vztah: 27. 2. 2002 - Poslední vztah: 18. 6. 2007

vklad 26 000 Kč

splaceno splaceno

obchodní podíl 26/154

Karlov 670/83, Velké Meziříčí, 594 01, Česká republika

ing. František Ficek

První vztah: 26. 8. 1998 - Poslední vztah: 27. 2. 2002

vklad 35 000 Kč

splaceno 35 000 Kč

Družstevní 51, Velké Meziříčí, Česká republika

ing. Vincenc Pospíšil

První vztah: 26. 8. 1998 - Poslední vztah: 27. 2. 2002

vklad 35 000 Kč

splaceno 35 000 Kč

Jabloňov 8, Velké Meziříčí, Česká republika

ing. Jan Veleba

První vztah: 26. 8. 1998 - Poslední vztah: 27. 2. 2002

vklad 36 000 Kč

splaceno 36 000 Kč

Nad tratí 11, Velké Meziříčí, Česká republika

ing. František Ficek

První vztah: 29. 5. 1996 - Poslední vztah: 26. 8. 1998

vklad 26 000 Kč

Družstevní 51, Velké Meziříčí, Česká republika

ing. Vincenc Pospíšil

První vztah: 29. 5. 1996 - Poslední vztah: 26. 8. 1998

vklad 26 000 Kč

Jabloňov 8, Velké Meziříčí, Česká republika

ing. Jan Veleba

První vztah: 29. 5. 1996 - Poslední vztah: 26. 8. 1998

vklad 27 000 Kč

Nad tratí 11, Velké Meziříčí, Česká republika

ing. Miroslav Pokorný

První vztah: 29. 5. 1996 - Poslední vztah: 26. 8. 1998

vklad 27 000 Kč

Hradišťko 167, Česká republika

ing. Lenka Švecová

První vztah: 29. 5. 1996 - Poslední vztah: 27. 2. 2002

vklad 26 000 Kč

splaceno splaceno

Karlov 83, Velké Meziříčí, Česká republika

ing. Lenka Hanáková

První vztah: 15. 11. 1993 - Poslední vztah: 29. 5. 1996

vklad 22 000 Kč

Karlov 83, Velké Meziříčí, Česká republika

ing. Bohumil Prudík

První vztah: 15. 11. 1993 - Poslední vztah: 29. 5. 1996

vklad 22 000 Kč

Družstevní 1347, Velké Meziříčí, Česká republika

ing. František Ficek

První vztah: 15. 11. 1993 - Poslední vztah: 29. 5. 1996

vklad 22 000 Kč

Družstevní 51, Velké Meziříčí, Česká republika

ing. Vincenc Pospíšil

První vztah: 15. 11. 1993 - Poslední vztah: 29. 5. 1996

vklad 22 000 Kč

Jabloňov 8, Velké Meziříčí, Česká republika

ing. Jan Veleba

První vztah: 15. 11. 1993 - Poslední vztah: 29. 5. 1996

vklad 22 000 Kč

Nad tratí 11, Velké Meziříčí, Česká republika

ing. Miroslav Pokorný

První vztah: 15. 11. 1993 - Poslední vztah: 29. 5. 1996

vklad 22 000 Kč

Hradišťko 167, Česká republika

Josef Karmazín

První vztah: 15. 11. 1993 - Poslední vztah: 27. 2. 2002

vklad 22 000 Kč

splaceno splaceno

Níhov 12, Česká republika

AGROPODNIK, a.s., Velké Meziříčí

První vztah: 27. 5. 2021

Třebíčská 1540/70, Velké Meziříčí, 594 01

Dalších 6 vztahů k tomuto subjektu

ZEMAS AG,a.s.

První vztah: 27. 5. 2021 - Poslední vztah: 8. 12. 2022

Martinice 87, 594 01

ZEMAS AG,a.s.

První vztah: 1. 8. 2014 - Poslední vztah: 27. 5. 2021

Martinice 87, 594 01

AGROPODNIK, a.s., Velké Meziříčí

První vztah: 1. 8. 2014 - Poslední vztah: 27. 5. 2021

Třebíčská 1540/70, Velké Meziříčí, 594 01

ZEMAS AG,a.s.

První vztah: 18. 1. 2010 - Poslední vztah: 1. 8. 2014

Martinice 87, 594 01

ZEMAS AG,a.s.

První vztah: 19. 9. 2008 - Poslední vztah: 18. 1. 2010

Martinice 87, 594 01

AGROPODNIK, a.s., Velké Meziříčí

První vztah: 19. 9. 2008 - Poslední vztah: 1. 8. 2014

Třebíčská 1540/70, Velké Meziříčí, 594 01

ZEMAS AG,a.s.

První vztah: 18. 6. 2007 - Poslední vztah: 19. 9. 2008

Martinice 87, 594 01

Živnostenský rejstřík

vznik první živnosti: 4. 11. 1992

Živnosti

Výroba, obchod a služby neuvedené v přílohách 1 až 3 živnostenského zákona
Obory činnosti
  • Výroba strojů a zařízení
  • Přípravné a dokončovací stavební práce, specializované stavební činnosti
  • Velkoobchod a maloobchod
Druh živnost volná
Vznik oprávnění 4. 11. 1992
Veškeré údaje o ekonomických subjektech, firmách a živnostnících, které zde uveřejňujeme, pocházejí z veřejně dostupných rejstříků (například obchodního rejstříku či živnostenského rejstříku). Pokud máte za to, že údaje jsou nepřesné či že by z nějakého důvodu veřejně dostupné být neměly, je nutno obrátit se na správce příslušného zdrojového rejstříku se žádostí o opravu či výmaz. Změna či odstranění údaje provedené správcem příslušného veřejně dostupného rejstříku se poté bez nutnosti Vašeho dalšího požadavku promítnou v rámci pravidelné aktualizace i do námi uveřejňovaných údajů.
Upozorníme vás na články, které by vám neměly uniknout (maximálně 2x týdně).
'; document.getElementById('outstream-iframe').onload = function () { setupIframe(); } replayScreen = document.getElementById('iinfoOutstreamReplay'); iinfoOutstreamPosition = document.getElementById('iinfoOutstreamPosition'); outstreamContainer = document.getElementsByClassName('outstream-container')[0]; setupReplayScreen(); } function setupIframe() { outstreamDocument = document.getElementById('outstream-iframe').contentWindow.document; let el = outstreamDocument.createElement('style'); outstreamDocument.head.appendChild(el); el.innerText = "#adContainer>div:nth-of-type(1),#adContainer>div:nth-of-type(1) > iframe { width: 99% !important;height: 99% !important;max-width: 100%;}#videoContent,body{ width:100vw;height:100vh}body{ font-family:'Helvetica Neue',Arial,sans-serif}#videoContent{ overflow:hidden;background:#000}#adMuteBtn{ width:35px;height:35px;border:0;background:0 0;display:none;position:absolute;fill:rgba(230,230,230,1);bottom:-5px;right:25px}"; videoContent = outstreamDocument.getElementById('contentElement'); videoContent.style.display = 'none'; videoContent.volume = 1; videoContent.muted = false; if ( location.href.indexOf('rejstriky.finance.cz') !== -1 || location.href.indexOf('finance-rejstrik') !== -1 || location.href.indexOf('firmy.euro.cz') !== -1 || location.href.indexOf('euro-rejstrik') !== -1 || location.href.indexOf('/rejstrik/') !== -1 || location.href.indexOf('/rejstrik-firem/') !== -1) { outstreamDirectPlayed = true; soundAllowed = true; iinfoVastUrlIndex = 0; } if (!outstreamDirectPlayed) { console.log('OUTSTREAM direct'); setUpIMA(true); } else { if (soundAllowed) { const playPromise = videoContent.play(); if (playPromise !== undefined) { playPromise.then(function () { console.log('OUTSTREAM sound allowed'); setUpIMA(false); }).catch(function () { console.log('OUTSTREAM sound forbidden'); renderBanner(); }); } } else { renderBanner(); } } } function getWrapper() { let articleWrapper = document.querySelector('.rs-outstream-placeholder'); // Outstream Placeholder from RedSys manipulation if (articleWrapper && articleWrapper.style.display !== 'block') { articleWrapper.innerHTML = ""; articleWrapper.style.display = 'block'; } // Don't render OutStream on homepages if (articleWrapper === null) { if (document.querySelector('body.p-index')) { return null; } } if (articleWrapper === null) { articleWrapper = document.getElementById('iinfo-outstream'); } if (articleWrapper === null) { articleWrapper = document.querySelector('.layout-main__content .detail__article p:nth-of-type(6)'); } if (articleWrapper === null) { // Euro, Autobible, Zdravi articleWrapper = document.querySelector('.o-article .o-article__text p:nth-of-type(6)'); } if (articleWrapper === null) { articleWrapper = document.getElementById('sidebar'); } if (!articleWrapper) { console.error("Outstream wrapper of article was not found."); } return articleWrapper; } function setupDimensions() { outstreamWidth = Math.min(iinfoOutstreamPosition.offsetWidth, 480); outstreamHeight = Math.min(iinfoOutstreamPosition.offsetHeight, 320); } /** * Sets up IMA ad display container, ads loader, and makes an ad request. */ function setUpIMA(direct) { google.ima.settings.setDisableCustomPlaybackForIOS10Plus(true); google.ima.settings.setLocale('cs'); google.ima.settings.setNumRedirects(10); // Create the ad display container. createAdDisplayContainer(); // Create ads loader. adsLoader = new google.ima.AdsLoader(adDisplayContainer); // Listen and respond to ads loaded and error events. adsLoader.addEventListener( google.ima.AdsManagerLoadedEvent.Type.ADS_MANAGER_LOADED, onAdsManagerLoaded, false); adsLoader.addEventListener( google.ima.AdErrorEvent.Type.AD_ERROR, onAdError, false); // An event listener to tell the SDK that our content video // is completed so the SDK can play any post-roll ads. const contentEndedListener = function () { adsLoader.contentComplete(); }; videoContent.onended = contentEndedListener; // Request video ads. const adsRequest = new google.ima.AdsRequest(); if (direct) { adsRequest.adTagUrl = directVast; console.log('Outstream DIRECT CAMPAING advert: ' + directVast); videoContent.muted = true; videoContent.volume = 0; outstreamDirectPlayed = true; } else { adsRequest.adTagUrl = iinfoVastUrls[iinfoVastUrlIndex]; console.log('Outstream advert: ' + iinfoVastUrls[iinfoVastUrlIndex]); videoContent.muted = false; videoContent.volume = 1; } // Specify the linear and nonlinear slot sizes. This helps the SDK to // select the correct creative if multiple are returned. // adsRequest.linearAdSlotWidth = outstreamWidth; // adsRequest.linearAdSlotHeight = outstreamHeight; adsRequest.nonLinearAdSlotWidth = 0; adsRequest.nonLinearAdSlotHeight = 0; adsLoader.requestAds(adsRequest); } function setupReplayScreen() { replayScreen.addEventListener('click', function () { iinfoOutstreamPosition.remove(); iinfoVastUrlIndex = 0; outstreamInit(); }); } /** * Sets the 'adContainer' div as the IMA ad display container. */ function createAdDisplayContainer() { // We assume the adContainer is the DOM id of the element that will house // the ads. outstreamDocument.getElementById('videoContent').style.display = 'none'; adDisplayContainer = new google.ima.AdDisplayContainer( outstreamDocument.getElementById('adContainer'), videoContent); } function unmuteAdvert() { adVolume = !adVolume; if (adVolume) { adsManager.setVolume(0.3); outstreamDocument.getElementById('adMuteBtn').innerHTML = ''; } else { adsManager.setVolume(0); outstreamDocument.getElementById('adMuteBtn').innerHTML = ''; } } /** * Loads the video content and initializes IMA ad playback. */ function playAds() { // Initialize the container. Must be done through a user action on mobile // devices. videoContent.load(); adDisplayContainer.initialize(); // setupDimensions(); try { // Initialize the ads manager. Ad rules playlist will start at this time. adsManager.init(1920, 1080, google.ima.ViewMode.NORMAL); // Call play to start showing the ad. Single video and overlay ads will // start at this time; the call will be ignored for ad rules. adsManager.start(); // window.addEventListener('resize', function (event) { // if (adsManager) { // setupDimensions(); // adsManager.resize(outstreamWidth, outstreamHeight, google.ima.ViewMode.NORMAL); // } // }); } catch (adError) { // An error may be thrown if there was a problem with the VAST response. // videoContent.play(); } } /** * Handles the ad manager loading and sets ad event listeners. * @param { !google.ima.AdsManagerLoadedEvent } adsManagerLoadedEvent */ function onAdsManagerLoaded(adsManagerLoadedEvent) { // Get the ads manager. const adsRenderingSettings = new google.ima.AdsRenderingSettings(); adsRenderingSettings.restoreCustomPlaybackStateOnAdBreakComplete = true; adsRenderingSettings.loadVideoTimeout = 12000; // videoContent should be set to the content video element. adsManager = adsManagerLoadedEvent.getAdsManager(videoContent, adsRenderingSettings); // Add listeners to the required events. adsManager.addEventListener(google.ima.AdErrorEvent.Type.AD_ERROR, onAdError); adsManager.addEventListener( google.ima.AdEvent.Type.CONTENT_PAUSE_REQUESTED, onContentPauseRequested); adsManager.addEventListener( google.ima.AdEvent.Type.CONTENT_RESUME_REQUESTED, onContentResumeRequested); adsManager.addEventListener( google.ima.AdEvent.Type.ALL_ADS_COMPLETED, onAdEvent); // Listen to any additional events, if necessary. adsManager.addEventListener(google.ima.AdEvent.Type.LOADED, onAdEvent); adsManager.addEventListener(google.ima.AdEvent.Type.STARTED, onAdEvent); adsManager.addEventListener(google.ima.AdEvent.Type.COMPLETE, onAdEvent); playAds(); } /** * Handles actions taken in response to ad events. * @param { !google.ima.AdEvent } adEvent */ function onAdEvent(adEvent) { // Retrieve the ad from the event. Some events (for example, // ALL_ADS_COMPLETED) don't have ad object associated. const ad = adEvent.getAd(); console.log('Outstream event: ' + adEvent.type); switch (adEvent.type) { case google.ima.AdEvent.Type.LOADED: // This is the first event sent for an ad - it is possible to // determine whether the ad is a video ad or an overlay. if (!ad.isLinear()) { // Position AdDisplayContainer correctly for overlay. // Use ad.width and ad.height. videoContent.play(); } outstreamDocument.getElementById('adContainer').style.width = '100%'; outstreamDocument.getElementById('adContainer').style.maxWidth = '640px'; outstreamDocument.getElementById('adContainer').style.height = '360px'; break; case google.ima.AdEvent.Type.STARTED: window.addEventListener('scroll', onActiveView); // This event indicates the ad has started - the video player // can adjust the UI, for example display a pause button and // remaining time. if (ad.isLinear()) { // For a linear ad, a timer can be started to poll for // the remaining time. intervalTimer = setInterval( function () { // Example: const remainingTime = adsManager.getRemainingTime(); // adsManager.pause(); }, 300); // every 300ms } outstreamDocument.getElementById('adMuteBtn').style.display = 'block'; break; case google.ima.AdEvent.Type.ALL_ADS_COMPLETED: if (ad.isLinear()) { clearInterval(intervalTimer); } if (outstreamLastError === 303) { if (isBanner) { renderBanner(); } else { replayScreen.style.display = 'flex'; } } break; case google.ima.AdEvent.Type.COMPLETE: // This event indicates the ad has finished - the video player // can perform appropriate UI actions, such as removing the timer for // remaining time detection. if (ad.isLinear()) { clearInterval(intervalTimer); } if (isBanner) { renderBanner(); } else { replayScreen.style.display = 'flex'; } break; } } /** * Handles ad errors. * @param { !google.ima.AdErrorEvent } adErrorEvent */ function onAdError(adErrorEvent) { // Handle the error logging. console.log(adErrorEvent.getError()); outstreamLastError = adErrorEvent.getError().getErrorCode(); if (!loadNext()) { renderBanner(); } } function renderBanner() { if (isBanner) { console.log('Outstream: Render Banner'); iinfoOutstreamPosition.innerHTML = ""; iinfoOutstreamPosition.style.height = "330px"; iinfoOutstreamPosition.appendChild(bannerDiv); } else { console.log('Outstream: Banner is not set'); } } function loadNext() { iinfoVastUrlIndex++; if (iinfoVastUrlIndex < iinfoVastUrls.length) { iinfoOutstreamPosition.remove(); outstreamInit(); } else { return false; } adVolume = 1; return true; } /** * Pauses video content and sets up ad UI. */ function onContentPauseRequested() { videoContent.pause(); // This function is where you should setup UI for showing ads (for example, // display ad timer countdown, disable seeking and more.) // setupUIForAds(); } /** * Resumes video content and removes ad UI. */ function onContentResumeRequested() { videoContent.play(); // This function is where you should ensure that your UI is ready // to play content. It is the responsibility of the Publisher to // implement this function when necessary. // setupUIForContent(); } function onActiveView() { if (outstreamContainer) { const containerOffset = outstreamContainer.getBoundingClientRect(); const windowHeight = window.innerHeight; if (containerOffset.top < windowHeight/1 && containerOffset.bottom > 0.0) { if (outstreamPaused) { adsManager.resume(); outstreamPaused = false; } return true; } else { if (!outstreamPaused) { adsManager.pause(); outstreamPaused = true; } } } return false; } let outstreamInitInterval; if (typeof cpexPackage !== "undefined") { outstreamInitInterval = setInterval(tryToInitializeOutstream, 100); } else { const wrapper = getWrapper(); if (wrapper) { let outstreamInitialized = false; window.addEventListener('scroll', () => { if (!outstreamInitialized) { const containerOffset = wrapper.getBoundingClientRect(); const windowHeight = window.innerHeight; if (containerOffset.top < windowHeight / 1 && containerOffset.bottom > 0.0) { outstreamInit(); outstreamInitialized = true; } } }); } } function tryToInitializeOutstream() { const wrapper = getWrapper(); if (wrapper) { const containerOffset = wrapper.getBoundingClientRect(); const windowHeight = window.innerHeight; if (containerOffset.top < windowHeight / 1 && containerOffset.bottom > 0.0) { if (cpexPackage.adserver.displayed) { clearInterval(outstreamInitInterval); outstreamInit(); } } } else { clearInterval(outstreamInitInterval); } } }
OSZAR »