Jak dlouho a kolik musíte vydělávat na předčasný důchod 21 000 Kč?

30.05.2025 | , Finance.cz
DŮCHODY A DÁVKY


perex-img Zdroj: Depositphotos

Pravidla pro předčasný důchod se během let zpřísňují, přesto je o něj stále zájem. Ve kterých případech bude předčasný důchod vyšší než 21 tisíc korun? Podívejte se na příklady.

sluchatka

Poslechněte si článek v audio verzi

00:00 / 00:00

Tento článek pro vás načetl robotický hlas. Jestliže v něm najdete chybu ve výslovnosti, dejte nám prosím vědět.

Předčasný důchod ve výši 21 000 Kč se již blíží průměrné výši v ČR vypláceného starobního důchodu (21 080 Kč k začátku roku 2025), ovšem dosáhnout na něj bývá obtížné. Buď musíte mít dostatečně dlouhou dobu pojištění, nebo vysoký osobní vyměřovací základ, nebo kombinaci obojího. Dále hraje roli výchovné za děti a samozřejmě výše krácení za předčasnost, která činí 1,5 % výpočtového základu za každých započatých 90 kalendářních dní předčasnosti.

Důležitou roli hraje rovněž načasování odchodu do důchodu, které vám může přinést pár stokorun k důchodu k dobru.

Jaké jsou podmínky pro odchod do předčasného důchodu?

Zpřísnění podmínek odchodu do předčasného důchodu se dotklo i termínu dřívějšího odchodu. Nově lze odejít do předčasného důchodu nejdříve 3 roky před dosažením řádného důchodového věku a při splnění podmínky doby pojištění 40 let.

Během pobírání předčasného důchodu nemáte nárok na řádnou valorizaci procentní výměry důchodu, pouze na valorizaci základní výměry důchodu (aktuálně činí 4660 Kč). Na mimořádnou valorizaci nemají předčasní důchodci nárok vůbec.

Jakmile dosáhnete řádného důchodové věku, tak od dalšího roku máte nárok na valorizaci v plné výši (tedy i valorizaci procentní výměry).

Kdo tedy dosáhne na předčasný důchod ve výši 21 000 Kč?

Předčasný důchod 21 000 Kč při době pojištění 40 let

Paní Martina by ráda měla předčasný důchod ve výši 21 000 Kč. Do důchodu chce jít 89 dnů před řádným termínem. Jaká musí být výše jejího osobního vyměřovacího základu při době pojištění 40 let?

Krácení důchodu se provede v délce jednoho čtvrtletí, tedy 90 dnů. Při tomto krácení by měl být osobní vyměřovací základ paní Martiny alespoň 49 110 Kč, aby dosáhla na předčasný důchod ve výši 21 000 Kč.

Jaký by musela být výše vyměřovacího základu, kdyby chtěla odejít do důchodu ještě dříve?

Osobní vyměřovací základ

Doba pojištění

Termín odchodu do předčasného důchodu

Měsíční důchod

46 429 Kč

40 let

0 dní (řádný důchod)

21 000 Kč

49 110 Kč

40 let

90 dní

21 000 Kč

51 937 Kč

40 let

180 dní

21 000 Kč

54 917 Kč

40 let

270 dní

21 000 Kč

Zdroj: vlastní výpočet autora

Tip: Co se počítá do náhradní doby pojištění – nárok na důchod

Předčasný důchod 21 000 Kč s dobou pojištění 40 let a s uplatněním výchovného za 2 děti

Jiná situace by nastala, jestliže by paní Martina uplatnila výchovné na 2 děti a stejnou dobu pojištění 40 let.

V tabulce je uvedeno, jakou výši by musel mít její osobní vyměřovací základ, aby při době pojištění 40 let a výchovném za 2 děti dosáhla na předčasný důchod ve výši 21 000 Kč.

Osobní vyměřovací základ

Doba pojištění

Termín odchodu do předčasného důchodu

Měsíční důchod

40 628 Kč

40 let

0 dní (řádný důchod)

21 000 Kč

42 502 Kč

40 let

90 dní

21 000 Kč

45 148 Kč

40 let

180 dní

21 000 Kč

47 948 Kč

40 let

270 dní

21 000 Kč

Zdroj: vlastní výpočet autora

Paní Martině by při uplatnění výchovného za 2 děti stačil osobní vyměřovací základ přibližně o necelých sedm tisíc korun nižší než při neuplatnění výchovného.

Tip: Pět důchodových chyb, které vám mohou snížit důchod o tisíce

Předčasný důchod a osobní vyměřovací základ ve výši průměrné mzdy a s dobou pojištění 43, 44 a 45 let

Ve 4. čtvrtletí 2024 byla výše průměrné hrubé měsíční nominální mzdy 49 229 Kč. V tabulce uvádíme, jaká bude výše předčasného důchodu při době pojištění 43 až 45 let a výši osobního vyměřovacího základu ve výši průměrné mzdy (bez uplatnění výchovného).

Osobní vyměřovací základ ve výši průměrné mzdy a doba pojištění 45 let

Osobní vyměřovací základ

Doba pojištění

Termín odchodu do předčasného důchodu

Měsíční důchod

49 229 Kč

45 let

0 dní (řádný důchod)

23 533 Kč

49 229 Kč

45 let

90 dní

23 114 Kč

49 229 Kč

45 let

180 dní

22 695 Kč

49 229 Kč

45 let

270 dní

22 275 Kč

49 229 Kč

45 let

360 dní

21 856 Kč

49 229 Kč

45 let

450 dní

21 436 Kč

49 299 Kč

45 let

540 dní

21 017 Kč

Zdroj: vlastní výpočet autora

Osobní vyměřovací základ ve výši průměrné mzdy a doba pojištění 44 let

Osobní vyměřovací základ

Doba pojištění

Termín odchodu do předčasného důchodu

Měsíční důchod

49 229 Kč

44 let

0 dní (řádný důchod)

23 114 Kč

49 229 Kč

44 let

90 dní

22 695 Kč

49 229 Kč

44 let

180 dní

22 275 Kč

49 229 Kč

44 let

270 dní

21 856 Kč

49 229 Kč

44 let

360 dní

21 436 Kč

49 229 Kč

44 let

450 dní

21 017 Kč

Zdroj: vlastní výpočet autora

Osobní vyměřovací základ ve výši průměrné mzdy a doba pojištění 43 let

Osobní vyměřovací základ

Doba pojištění

Termín odchodu do předčasného důchodu

Měsíční důchod

49 229 Kč

43 let

0 dní (řádný důchod)

22 695 Kč

49 229 Kč

43 let

90 dní

22 275 Kč

49 229 Kč

43 let

180 dní

21 856 Kč

49 229 Kč

43 let

270 dní

21 436 Kč

49 229 Kč

43 let

360 dní

21 017 Kč

Zdroj: vlastní výpočet autora

Jestliže vaše doba pojištění činí 40 let a váš osobní vyměřovací základ máte výši průměrné mzdy 49 229 Kč, tak váš předčasný důchod přesáhne 21 000 Kč pouze při krácení za 90 dní.

Předčasný důchod při době pojištění 40 let, osobním vyměřovacím základu 49 229 Kč a krácení za 1 čtvrtletí bude činit 21 017 Kč. Při vyšším krácení již hranici 21 000 Kč nepřesáhne (20 598 Kč při krácení za 2 čtvrtletí). V příkladech se nepočítá se vlivem výchovného, které by mohlo zvýšit důchod o 503 Kč měsíčně za každé vychované dítě.

Sami si propočítejte výši potenciálního starobního důchodu včetně krácení v naší kalkulačce

 

Předčasný důchod u doby pojištění 43, 44 a 45 let, jaký musíte mít vyměřovací základ?

V poslední tabulce se podívejte, jaké výše musí dosáhnout osobní vyměřovací základ, abyste dosáhli na řádný i předčasný starobní důchod ve výši 21 000 Kč.

Osobní vyměřovací základ

Doba pojištění

Termín odchodu do předčasného důchodu

Měsíční důchod

34 790 Kč

45 let

0 dní (řádný důchod)

21 000 Kč

36 906 Kč

45 let

90 dní

21 000 Kč

39 117 Kč

45 let

180 dní

21 000 Kč

41 440 Kč

45 let

270 dní

21 000 Kč

46 425 Kč

44 let

360 dní

21 000 Kč

49 110 Kč

44 let

450 dní

21 000 Kč

51 937 Kč

44 let

540 dní

21 000 Kč

54 921 Kč

44 let

630 dní

21 000 Kč

61 387 Kč

43 let

720 dní

21 000 Kč

64 906 Kč

43 let

810 dní

21 000 Kč

68 644 Kč

43 let

900 dní

21 000 Kč

72 610 Kč

43 let

990 dní

21 000 Kč

81 337 Kč

42 let

1080 dní

21 000 Kč

Zdroj: vlastní výpočet autora

Tip: Spočítejte si svůj dnešní věk odchodu do důchodu v naší kalkulačce

 

Jak žádat o starobní důchod?

Zdroj: Youtube.com/Česká správa sociálního zabezpečení

Autor článku

Michal Bureš

Michal Bureš  

Šéfredaktor Finance.cz


Pomohl vám tento obsah? Dejte mu hodnocení:

Průměrné hodnocení: 4
Hlasováno: 9 krát

Články ze sekce: DŮCHODY A DÁVKY


'; document.getElementById('preroll_iframe').onload = function(){ preroll_setupIframe(); } } function preroll_setupIframe() { prerollDocument = document.getElementById('preroll_iframe').contentWindow.document; let el = prerollDocument.createElement('style'); el.type = 'text/css'; prerollDocument.head.appendChild(el); el.innerText = "#preroll_adContainer>div:nth-of-type(1),#preroll_adContainer>div:nth-of-type(1) > iframe {width: 99% !important;height: 99% !important;max-width: 100%;}#preroll_videoContent,body{width:100vw;height:100vh}body{font-family:'Helvetica Neue',Arial,sans-serif}#preroll_videoContent{overflow:hidden;background:#000}#preroll_adMuteBtn{width:35px;height:35px;border:0;background:0 0;display:none;position:absolute;fill:rgba(230,230,230,1);bottom:-5px;right:25px}"; preroll_videoContent = prerollDocument.getElementById('preroll_contentElement'); preroll_videoContent.style.display = 'none'; preroll_videoContent.volume = 1; preroll_videoContent.muted = false; const playPromise = preroll_videoContent.play(); if (playPromise !== undefined) { console.log('PREROLL sound forbidden');preroll_videoContent.volume = 0;preroll_videoContent.muted = true;preroll_setUpIMA(false); //playPromise.then(function () { console.log('PREROLL sound allowed');preroll_setUpIMA(true); }).catch(function () { console.log('PREROLL sound forbidden');preroll_videoContent.volume = 0;preroll_videoContent.muted = true;preroll_setUpIMA(false); }); } } function preroll_setUpIMA(sound) { google.ima.settings.setDisableCustomPlaybackForIOS10Plus(true); google.ima.settings.setLocale('cs'); google.ima.settings.setNumRedirects(10); // Create the ad display container. preroll_createAdDisplayContainer(); // Create ads loader. preroll_adsLoader = new google.ima.AdsLoader(preroll_adDisplayContainer); // Listen and respond to ads loaded and error events. preroll_adsLoader.addEventListener( google.ima.AdsManagerLoadedEvent.Type.ADS_MANAGER_LOADED, preroll_onAdsManagerLoaded, false); preroll_adsLoader.addEventListener( google.ima.AdErrorEvent.Type.AD_ERROR, preroll_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() { preroll_adsLoader.contentComplete(); }; preroll_videoContent.onended = contentEndedListener; // Request video ads. const adsRequest = new google.ima.AdsRequest(); if (sound && preroll_iinfoVastUrlIndex <= preroll_iinfoVastUrls.length-1) { adsRequest.adTagUrl = preroll_iinfoVastUrls[preroll_iinfoVastUrlIndex]; console.log('Preroll advert: ' + preroll_iinfoVastUrls[preroll_iinfoVastUrlIndex]); preroll_current = 0; preroll_videoContent.muted = false; preroll_videoContent.volume = 1; } else { adsRequest.adTagUrl = preroll_iinfoVastUrlsMuted[preroll_iinfoVastUrlIndexMuted]; console.log('Preroll advert: ' + preroll_iinfoVastUrlsMuted[preroll_iinfoVastUrlIndexMuted]); preroll_current = 1; preroll_videoContent.muted = true; preroll_videoContent.volume = 0; } adsRequest.nonLinearAdSlotWidth = 0; adsRequest.nonLinearAdSlotHeight = 0; preroll_adsLoader.requestAds(adsRequest); } function preroll_createAdDisplayContainer() { prerollDocument.getElementById('preroll_videoContent').style.display = 'none'; preroll_adDisplayContainer = new google.ima.AdDisplayContainer( prerollDocument.getElementById('preroll_adContainer'), preroll_videoContent); } function preroll_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. preroll_adsManager = adsManagerLoadedEvent.getAdsManager(preroll_videoContent, adsRenderingSettings); // Add listeners to the required events. preroll_adsManager.addEventListener(google.ima.AdErrorEvent.Type.AD_ERROR, preroll_onAdError); preroll_adsManager.addEventListener( google.ima.AdEvent.Type.CONTENT_PAUSE_REQUESTED, preroll_onContentPauseRequested); preroll_adsManager.addEventListener( google.ima.AdEvent.Type.CONTENT_RESUME_REQUESTED, preroll_onContentResumeRequested); preroll_adsManager.addEventListener( google.ima.AdEvent.Type.ALL_ADS_COMPLETED, preroll_onAdEvent); // Listen to any additional events, if necessary. preroll_adsManager.addEventListener(google.ima.AdEvent.Type.LOADED, preroll_onAdEvent); preroll_adsManager.addEventListener(google.ima.AdEvent.Type.STARTED, preroll_onAdEvent); preroll_adsManager.addEventListener(google.ima.AdEvent.Type.COMPLETE, preroll_onAdEvent); preroll_playAds(); } function preroll_playAds() { // Initialize the container. Must be done through a user action on mobile // devices. preroll_videoContent.load(); preroll_adDisplayContainer.initialize(); try { preroll_adsManager.init(preroll_width_init, preroll_height_init, google.ima.ViewMode.NORMAL); preroll_adsManager.start(); } catch (adError) { } } function preroll_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('Preroll event: ' + adEvent.type); switch (adEvent.type) { case google.ima.AdEvent.Type.LOADED: prerollDocument.getElementById('preroll_adContainer').style.width = '100%'; prerollDocument.getElementById('preroll_adContainer').style.maxWidth = '640px'; prerollDocument.getElementById('preroll_adContainer').style.height = '360px'; break; case google.ima.AdEvent.Type.STARTED: prerollDocument.getElementById('preroll_adMuteBtn').style.display = 'block'; preroll_init_container.style.display = 'none'; try { adsManager.pause(); } catch (error) { } break; case google.ima.AdEvent.Type.ALL_ADS_COMPLETED: preroll_play_yt(); break; case google.ima.AdEvent.Type.COMPLETE: preroll_play_yt(); break; } } function preroll_onAdError(adErrorEvent) { // Handle the error logging. console.log(adErrorEvent.getError()); preroll_last_error = adErrorEvent.getError().getErrorCode(); console.log(preroll_last_error); if (!preroll_loadNext()) { preroll_play_yt(); } } function preroll_onContentPauseRequested() { preroll_videoContent.pause(); } function preroll_onContentResumeRequested() { preroll_videoContent.play(); } function preroll_loadNext() { if (preroll_current === 0) { preroll_iinfoVastUrlIndex++; if (preroll_iinfoVastUrls.length > preroll_iinfoVastUrlIndex) { preroll_init(); } else { return false; } } else { preroll_iinfoVastUrlIndexMuted++; if (preroll_iinfoVastUrlsMuted.length > preroll_iinfoVastUrlIndexMuted) { preroll_init(); } else { return false; } } preroll_adVolume = 1; return true; } function preroll_unmuteAdvert() { preroll_adVolume = !preroll_adVolume; if (preroll_adVolume) { preroll_adsManager.setVolume(1); prerollDocument.getElementById('preroll_adMuteBtn').innerHTML = ''; } else { preroll_adsManager.setVolume(0); prerollDocument.getElementById('preroll_adMuteBtn').innerHTML = ''; } } function tryToInicializePreroll() { preroll_init(); } function preroll_play_yt() { preroll_videoElement.style.display = 'block'; const youTubeUrlQueryString = preroll_videoElement.src.includes('?'); const firstLetterOfAddedUrl = youTubeUrlQueryString ? '&' : '?'; preroll_videoElement.src += firstLetterOfAddedUrl + 'autoplay=1&mute=0'; preroll_init_container.style.display = 'none'; document.querySelectorAll('.preroll-container').forEach(e => e.remove()); finance_init_container.style.display = 'block'; try { adsManager.pause(); } catch (error) { } }

'; 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; if (!outstream_direct_played) { console.log('Setup iframe: direct'); setUpIMA(true); } else if (iinfoOutstreamAllowed) { console.log('Setup iframe: allowed article'); const playPromise = videoContent.play(); playPromise.then(function () { console.log('OUTSTREAM sound allowed'); setUpIMA(false); }).catch(function () { renderPassback(); }); } else { console.log('Setup iframe: passback'); renderPassback(); } } /** * 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 = iinfoVastDirect; console.log('Outstream DIRECT CAMPAING advert: ' + iinfoVastDirect); videoContent.muted = true; videoContent.volume = 0; outstream_direct_played = true; } else { adsRequest.adTagUrl = iinfoVastUrls[iinfoVastUrlIndex]; console.log('Outstream advert: ' + iinfoVastUrls[iinfoVastUrlIndex]); videoContent.muted = false; videoContent.volume = 1; } 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) { renderPassback(); } 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) { renderPassback(); } break; } } function renderPassback() { console.log('Outstream Spouštím Passback'); advertContainer.innerHTML = ""; advertContainer.appendChild(passBackDiv); } /** * 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()) { renderPassback(); } } function loadNext() { iinfoVastUrlIndex++; if (iinfoVastUrls.length > iinfoVastUrlIndex) { outstream_init(); } else { return false; } adVolume = 1; return true; } function onContentPauseRequested() { videoContent.pause(); } function onContentResumeRequested() { videoContent.play(); } 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(); } } } }
OSZAR »