Acolyte | Avengers | Boys | Bridgerton | House of the Dragon | Interview with the Vampire | Mayor of Kingstown | Star Trek: Discovery | všechny seriály
PřihlášeníRegistrace
- Úvod
- Novinky
- Seriály
- Další vysílání
- Žebříčky
- Herci
- Magazín
- Blog
- Diskuze
- Tip na seriál
97/100 - 669×
do BednyInfo
Jedna znejhorších katastrof lidské populace zachycuje příběhy statečných mužů a žen, kteří se obětovali, aby zachránili Evropu před nepředstavitelnou katastrofou.
- USA | 2019 | Ukončeno
- vysílání
- 1 sezóna | HBO | 50 minut
- žánr
- Drama
- hrají
- Jared Harris (Valery Legasov), Stellan Skarsgård (Boris Ščerbina), Paul Ritter (Anatoly Dyatlov)
- Úvod
- Novinky
- Epizody
- Postavy
- Herci
- Hodnocení
Anatoly Dyatlov
Sovětský technik, který prováděl test černobylského reaktoru.
Paul Ritter
Sezóny 1
2019 - 2019
Anatoly Dyatlov pracoval jako zástupce hlavního inženýra vjaderné elektrárně Černobyl. Vosudný večer byl zodpovědný za provedení testu reaktoru, který se nezdařil. Za tento čin byl odsouzen na 10let, ve vezení strávil jen 3roky, protože byl propuštěn na amnestii.
Foto:HBO
1Bobesh1
Sdílejte:
QR kód
Kindle
Hodnocení
Chceš taky hodnotit? Registruj se nebo se přihlaš!
Hlavní padouch, který možná ve skutečnosti ani takový padouch vůbec nebyl, spíš se hodil jako obětní beránek…
captain
18.7.2020 | 13:35:28
Skvěle zahraná postava
Matrix9
4.7.2020 | 20:35:37
blbec
Kothy
30.6.2020 | 14:25:44
Nejlepší záporáky píše sám život. Bohužel takhle to fungovalo a fungovatbude.
S.T.A.L.K.E.R.
28.12.2019 | 21:25:33
Napište nám
Našli jste chybu ve vysílání? Nemůžete se dopídit českých titulků? Chtěli byste se o tento seriál starat? Napište nám!
Filtr seriálů
- 1923
- 3 Body Problem
- 9-1-1
- The Acolyte
- Ahsoka
- Alex Rider
- The Alienist
- All American
- Amazing Stories (2020)
- American Crime Story
- American Dad!
- American Horror Story
- Andor
- Animal Kingdom
- Arcane
- Assassin's Creed
- Avatar
- Avengers
- The Boys
- Bridgerton
- Chicago Fire
- Chicago Med
- Chicago P.D.
- Citadel
- Cobra Kai
- Dark Universe
- Die Hard
- Disney Movies
- Doctor Who (2024)
- Dune
- Élite
- Emily in Paris
- Family Guy
- Fargo
- FBI
- For All Mankind
- Foundation
- Ghosts
- The Grand Tour
- Grey's Anatomy
- The Handmaid's Tale
- Harry Potter
- Heartstopper
- House of the Dragon
- I Am Groot
- Indiana Jones
- Interview with the Vampire
- Invasion (2021)
- Invincible
- James Bond
- Justice League
- La Brea
- The Last of Us
- Loki
- The Lord of the Rings: The Rings of Power
- Love, Victor
- Magnum P.I. (2018)
- The Mandalorian
- Manifest
- Mission: Impossible
- The Morning Show
- Nancy Drew
- NCIS
- Only Murders in the Building
- The Orville
- Outer Banks
- Outlander
- The Politician
- Predator
- Reacher
- Red Dwarf
- Rick and Morty
- S.W.A.T.
- SEAL Team
- Shōgun
- Silo
- South Park
- SpongeBob SquarePants
- Star Trek: Discovery
- Star Wars
- Star Wars: The Bad Batch
- Stranger Things
- The Summer I Turned Pretty
- Survivor
- Sweet Magnolias
- Tales of the Walking Dead
- Terminator
- True Detective
- Tulsa King
- Upload
- Venom
- The Walking Dead: Daryl Dixon
- The Walking Dead: Dead City
- Warrior Nun
- Wednesday
- What If...?
- The Wheel of Time
- The Witcher
- Yellowjackets
- Yellowstone
- You
Nebo můžete procházet všechny seriály.
Mohlo by se vám také líbit
Manhattan
Drama na pozadí největšího tajného závodu v historii vědy s posláním postavit první atomovou bombu. Vědci a jejich…více
Five Days at Memorial
Založeno na skutečných událostech po hurikánu Katrina. Záplavy, přerušení dodávky elektrického proudu a spalující vedro…více
The Spy
The Spy se zaměřuje na legendárního izraelského špióna Eliho Cohena, který žil od 60. let v utajení v Damašku a…více
Další podobné seriály
Redaktoři/1
- 1Bobesh1admin
'; document.getElementById('outstream-iframe').srcdoc = '
'; document.getElementById('outstream-iframe').onload = function(){ setupIframe(); } } function setupIframe() { outstreamDocument = document.getElementById('outstream-iframe').contentWindow.document; let el = outstreamDocument.createElement('style'); el.type = 'text/css'; 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; const playPromise = videoContent.play(); if (playPromise !== undefined) { playPromise.then(function () { console.log('OUTSTREAM sound allowed');setUpIMA(true); }).catch(function () { console.log('OUTSTREAM sound forbidden');videoContent.volume = 0;videoContent.muted = true;setUpIMA(false); }); } } /** * Sets up IMA ad display container, ads loader, and makes an ad request. */ function setUpIMA(sound) { 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 (sound && iinfoVastUrlIndex <= iinfoVastUrls.length-1) { adsRequest.adTagUrl = iinfoVastUrls[iinfoVastUrlIndex]; console.log('Outstream advert: ' + iinfoVastUrls[iinfoVastUrlIndex]); outstream_current = 0; videoContent.muted = false; videoContent.volume = 1; } else { adsRequest.adTagUrl = iinfoVastUrlsMuted[iinfoVastUrlIndexMuted]; console.log('Outstream advert: ' + iinfoVastUrlsMuted[iinfoVastUrlIndexMuted]); outstream_current = 1; videoContent.muted = true; videoContent.volume = 0; } // Specify the linear and nonlinear slot sizes. This helps the SDK to // select the correct creative if multiple are returned. /*adsRequest.linearAdSlotWidth = outstream_width; adsRequest.linearAdSlotHeight = outstream_height;*/ adsRequest.nonLinearAdSlotWidth = 0; adsRequest.nonLinearAdSlotHeight = 0; adsLoader.requestAds(adsRequest); } /** * 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(1); 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(); try { adsManager.init(outstream_width_init, outstream_height_init, google.ima.ViewMode.NORMAL); adsManager.start(); } catch (adError) { } } /** * 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(); }, 300); // every 300ms } //unmuteAdvert(); outstreamDocument.getElementById('adMuteBtn').style.display = 'block'; break; case google.ima.AdEvent.Type.ALL_ADS_COMPLETED: if (ad.isLinear()) { clearInterval(intervalTimer); } if (outstream_last_error == 303) { console.log('Outstream Spouštím Passback'); advertContainer.innerHTML = ""; advertContainer.appendChild(passBackDiv); } 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 (true) { console.log('Outstream Spouštím Passback'); advertContainer.innerHTML = ""; advertContainer.appendChild(passBackDiv); } break; } } /** * Handles ad errors. * @param {!google.ima.AdErrorEvent} adErrorEvent */ function onAdError(adErrorEvent) { // Handle the error logging. console.log(adErrorEvent.getError()); outstream_last_error = adErrorEvent.getError().getErrorCode(); console.log(outstream_last_error); if (!loadNext()) { console.log('Outstream Spouštím Passback'); advertContainer.innerHTML = ""; advertContainer.appendChild(passBackDiv); } } function loadNext() { if (outstream_current == 0) { iinfoVastUrlIndex++; outstream_init(); } else { iinfoVastUrlIndexMuted++; if (iinfoVastUrlsMuted.length > iinfoVastUrlIndexMuted) { outstream_init(); } 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() { console.log('outstream onActiveView()'); var wrapper = document.getElementsByClassName('outstream-container')[0]; if (wrapper) { var containerOffset = wrapper.getBoundingClientRect(); var windowHeight = window.innerHeight; if (containerOffset.top < windowHeight/1 && containerOffset.bottom > 0.0) { if (outstream_paused) { adsManager.resume(); outstream_paused = false; /*window.removeEventListener('scroll', onActiveView);*/ console.log('Outstream: ad resume()'); } return true; } else { if (!outstream_paused) { adsManager.pause(); outstream_paused = true; /*window.removeEventListener('scroll', onActiveView);*/ console.log('Outstream: ad pause()'); } } } return false; } let outstream_initialize_interval = setInterval(tryToInicializeOutstream, 100); function tryToInicializeOutstream() { console.log(cpexPackage.adserver.displayed); var wrapper = document.getElementsByClassName('outstream-container')[0]; if (wrapper) { var containerOffset = wrapper.getBoundingClientRect(); var windowHeight = window.innerHeight; if (containerOffset.top < windowHeight / 1 && containerOffset.bottom > 0.0) { if (cpexPackage.adserver.displayed) { clearInterval(outstream_initialize_interval); outstream_init(); } } } }