Občanský zákoník - nový - Pododdíl 1 - Obecná ustanovení

Předpis č. 89/2012 Sb.

Znění od 1. 6. 2025

89/2012 Sb. Zákon občanský zákoník

Pododdíl 1

Obecná ustanovení

§ 1494

(1) Závěť je odvolatelný projev vůle, kterým zůstavitel pro případ své smrti osobně zůstavuje jedné či více osobám alespoň podíl na pozůstalosti, případně i odkaz. Není-li zřejmé, který den, měsíc a rok byla závěť pořízena a pořídil-li zůstavitel více závětí, které si odporují nebo závisí-li jinak právní účinky závěti na určení doby jejího pořízení, je závěť neplatná.

(2) Závěť je třeba vyložit tak, aby bylo co nejvíce vyhověno vůli zůstavitele. Slova použitá v závěti se vykládají podle jejich obvyklého významu, ledaže se prokáže, že si zůstavitel navykl spojovat s určitými výrazy zvláštní, sobě vlastní smysl.

§ 1495

Poukáže-li zůstavitel v závěti na obsah jiné listiny, má i tato jiná listina stejné právní účinky, pokud splňuje náležitosti závěti. Nesplňuje-li je, lze jejího obsahu použít jen k vysvětlení zůstavitelovy vůle.

§ 1496

Právo povolat dědice je osobním právem zůstavitele. Zůstavitel nemůže povolání dědice svěřit jinému, ani pořídit společně s jinou osobou.

§ 1497

Zůstavitel musí svou vůli projevit tak určitě, že nestačí, aby jen přisvědčil návrhu, který mu byl učiněn.

§ 1498

Dovětek

Dovětkem může zůstavitel nařídit odkaz, stanovit odkazovníku nebo dědici podmínku, nebo doložit čas anebo uložit odkazovníku nebo dědici příkaz. Co je stanoveno o závěti, platí obdobně i o dovětku.

Připadnutí pozůstalosti dědicům

§ 1499

Dědici připadne celá pozůstalost, je-li povolán jako dědic jediný. Je-li povolanému dědici zůstaven jen podíl, připadne zbylá část pozůstalosti zákonným dědicům.

§ 1500

(1) Je-li povoláno několik dědiců a podíly nejsou určeny, mají právo na pozůstalost rovným dílem.

(2) Je-li povoláno několik dědiců tak, že jsou všem určeny podíly, ale pozůstalost není vyčerpána, mají právo na zbylou část pozůstalosti zákonní dědicové. Toto právo zákonní dědicové nemají, zůstavil-li zůstavitel povolaným dědicům zřejmě celou pozůstalost, byť i při výčtu podílů nebo věcí něco přehlédl.

§ 1501

(1) Vyměří-li zůstavitel některým z povolaných dědiců určité podíly a jiným nikoli, připadne dědicům povolaným bez podílu zbylá část pozůstalosti rovným dílem.

(2) Nezbude-li nic, srazí se pro dědice, který byl povolán bez podílu, poměrně ze všech vyměřených podílů tolik, aby se mu dostalo podílu rovného s dědicem, kterému bylo vyměřeno nejméně. Jsou-li podíly ostatních dědiců stejné, srazí se z nich tolik, aby se dědici, který byl ustaven bez podílu, dostal podíl s nimi stejný.

§ 1502

Ve všech případech, kdy se zůstavitel zřejmě přepočetl, se provede dělení tak, aby byla jeho vůle naplněna co nejlépe.

§ 1503

(1) Vyskytnou-li se mezi povolanými dědici osoby pokládané při zákonné dědické posloupnosti vzhledem k ostatním za jednu osobu, pokládají se za jednu osobu i při dělení podle závěti; to neplatí, je-li vůle zůstavitele zřejmě opačná.

(2) Povolá-li zůstavitel za dědice bez bližšího určení skupinu osob, má se za to, že dědici jsou ti, kteří do určené skupiny patřili v době zůstavitelovy smrti.

(3) Povolá-li zůstavitel za dědice bez bližšího určení chudé či obdobně určenou skupinu osob, má se za to, že za dědice byla povolána obec, na jejímž území měl zůstavitel poslední bydliště, která dědictví použije ve prospěch určené skupiny.

Uvolněný podíl

§ 1504

Podíl dědice, který nedědí a nemá náhradníka, se uvolní a přiroste poměrně k podílům ostatních povolaných dědiců jen tehdy, jsou-li všichni dědicové povoláni k dědictví buď rovným dílem, nebo všeobecným výrazem znamenajícím rovné podělení.

§ 1505

(1) Právo na přírůstek nemá ten, komu byl zůstaven určitý dědický podíl.

(2) Jsou-li někteří dědici povoláni s podílem a další bez takového určení, přiroste uvolněný podíl těm, kteří jsou povoláni bez podílu.

§ 1506

S uvolněným dědickým podílem přecházejí na toho, komu přiroste, omezení s ním spojená, ledaže zůstavitel projevil vůli, že se tato omezení vztahují jedině k osobě povolaného dědice, anebo plyne-li to z povahy věci.

Náhradnictví

§ 1507

Zůstavitel může pro případ, že dědictví nenabude osoba, kterou povolal za dědice, povolat této osobě náhradníka; také náhradníkům může povolat postupně další náhradníky. Povolá-li zůstavitel takto několik náhradníků, dědí ten, který je ve výčtu nejbližší osobě, která dědictví nenabyla.

§ 1508

Zřídí-li zůstavitel náhradnictví pro případ, že by povolaná osoba dědit nechtěla, nebo pro případ, že by dědit nemohla, má se za to, že náhradnictví bylo zřízeno pro oba tyto případy.

§ 1509

Omezení uložená dědici postihují také náhradníka, ledaže zůstavitel projevil vůli, že se tato omezení vztahují jedině k osobě dědice, nebo plyne-li to z povahy věci.

§ 1510

Jsou-li za náhradníky povoláni samotní spoludědicové, má se za to, že zůstavitel chtěl podělit náhradníky v takovém poměru, v jakém podělil dědice. Je-li však za náhradníka povolán mimo spoludědice ještě někdo jiný, pak neprojeví-li zůstavitel jinou vůli, připadne uvolněný podíl všem rovným dílem.

§ 1511

(1) Nabude-li povolaný dědic dědictví, náhradnictví zanikne.

(2) Neprojeví-li zůstavitel jinou vůli, zanikne náhradnictví, které zůstavitel zřídil svému dítěti v době, kdy nemělo potomky, zanechá-li toto dítě potomky způsobilé dědit. To platí i tehdy, zřídí-li zůstavitel náhradnictví jinému svému potomku v době, kdy ten potomky nemá.

Svěřenské nástupnictví

§ 1512

(1) Zůstavitel může nařídit, že dědictví má přejít po smrti dědice nebo v určitých jiných případech na svěřenského nástupce jako následného dědice. Povolání za svěřenského nástupce se považuje i za povolání za náhradníka.

(2) Je-li zůstavitelovo nařízení do té míry neurčité, že nelze zjistit, zda povolal náhradníka, nebo svěřenského nástupce, považuje se jeho nařízení za povolání náhradníka.

§ 1513

Povolá-li zůstavitel svému dědici dědice, zakáže-li dědici, aby o zanechaném jmění pořizoval, povolá-li za dědice někoho, kdo v době smrti zůstavitele ještě není, anebo povolá-li dědice s podmínkou nebo na určitou dobu, považuje se to za zřízení svěřenského nástupnictví.

§ 1514

Jsou-li všichni svěřenští nástupci zůstavitelovými současníky, není omezena řada, ve které po sobě mají svěřenští nástupci následovat.

§ 1515

(1) Je-li povoláno více svěřenských nástupců, z nichž někteří v době smrti zůstavitele jako osoby ještě neexistují, zanikne svěřenské nástupnictví, jakmile jmění nabude první svěřenský nástupce z těch, kteří nebyli zůstavitelovými současníky.

(2) Svěřenské nástupnictví zanikne nejpozději uplynutím sta let od smrti zůstavitele, a to i když nařídil delší dobu. Má-li však svěřenský nástupce nabýt dědictví nejpozději při smrti dědice žijícího v době zůstavitelovy smrti, zanikne svěřenské nástupnictví teprve, až první ze svěřenských nástupců nabude dědictví po tomto dědici.

§ 1516

Svěřenské nástupnictví zanikne také tehdy, není-li již žádný ze svěřenských nástupců, nebo nenastane-li případ, pro který bylo zřízeno.

§ 1517

Povolal-li zůstavitel svěřenského nástupce svému nezletilému dítěti nezpůsobilému pořizovat a nabude-li dítě poté pořizovací způsobilost, zaniká svěřenské nástupnictví v rozsahu povinného dílu.

§ 1518

Není-li zřejmá jiná vůle zůstavitele, zanikne svěřenské nástupnictví, které zůstavitel zřídil svému dítěti v době, kdy nemělo potomka, zanechá-li dítě potomka způsobilého dědit. To platí i tehdy, zřídí-li zůstavitel svěřenské nástupnictví jinému svému potomku v době, kdy ten potomka nemá.

§ 1519

Povolal-li zůstavitel svěřenského nástupce osobě, která není způsobilá pořizovat pro omezení svéprávnosti, zanikne svěřenské nástupnictví navždy, nabude-li tato osoba pořizovací způsobilost, ledaže zůstavitel projevil jinou vůli.

§ 1520

(1) Požádá-li o to svěřenský nástupce, sestaví dědic bez zbytečného odkladu a za jeho přítomnosti v písemné formě inventář všeho, co děděním nabyl, uvede v něm den sestavení a vydá ho svěřenskému nástupci. Na žádost svěřenského nástupce musí být podpis dědice na inventáři úředně ověřen.

(2) Svěřenský nástupce má právo požadovat sestavení inventáře ve formě veřejné listiny.

(3) Náklady na sestavení inventáře jdou k tíži dědictví.

§ 1521

Nesvěřil-li zůstavitel při nařízení svěřenského nástupnictví dědici právo s dědictvím volně nakládat, je vlastnické právo dědice k tomu, co nabyl děděním, jakož i k tomu, co nabyl náhradou za zničení, poškození nebo odnětí věci z dědictví, omezeno na práva a povinnosti poživatele. To neplatí, je-li věc z dědictví zcizena nebo zatížena za účelem úhrady zůstavitelových dluhů.

§ 1522

(1) Nesvěřil-li zůstavitel při nařízení svěřenského nástupnictví dědici právo s dědictvím volně nakládat, může dědic zcizit nebo zatížit věc z toho, co děděním nabyl, jen se souhlasem svěřenského nástupce; souhlas vyžaduje formu veřejné listiny.

(2) Je-li vzhledem k péči řádného hospodáře potřebné věc zatížit nebo zcizit, může soud na návrh dědice souhlas svěřenského nástupce nahradit. Rozhodne-li soud, že věc bude zatížena nebo zcizena za úplatu, určí, jak se naloží s výtěžkem; přitom vezme zřetel na oprávněné zájmy svěřenského nástupce.

§ 1523

Náleží-li do dědictví věc přinášející plody nebo užitky, může svěřenský nástupce požadovat, aby soud stanovil dědici způsob a rozsah hospodaření s věcí nebo požívání věci.

§ 1524

(1) Zapisuje-li se věc a její vlastník do veřejného seznamu, zapíše se do veřejného seznamu i svěřenské nástupnictví. Jsou-li věc a svěřenské nástupnictví do veřejného seznamu zapsány a naloží-li dědic s věcí, kterou nabyl z dědictví, způsobem mařícím nebo omezujícím práva svěřenského nástupce, aniž s tím svěřenský nástupce souhlasil, nemá to vůči svěřenskému nástupci právní účinky.

(2) Nejsou-li věc nebo svěřenské nástupnictví zapsány do veřejného seznamu a naloží-li dědic s věcí, kterou nabyl z dědictví, způsobem mařícím nebo omezujícím práva svěřenského nástupce, aniž s tím svěřenský nástupce souhlasil, má svěřenský nástupce právo domáhat se podle ustanovení o relativní neúčinnosti, aby soud určil, že právní jednání dědice není vůči němu právně účinné.

Pořizovací nezpůsobilost

§ 1525

Nesvéprávný není způsobilý pořizovat, nejedná-li se o případy uvedené v § 1526 až 1528.

§ 1526

Kdo dovršil patnácti let věku a dosud nenabyl plné svéprávnosti, může pořizovat bez souhlasu zákonného zástupce formou veřejné listiny.

§ 1527

Kdo byl ve svéprávnosti omezen tak, že není způsobilý pořizovat, může přesto platně pořídit v jakékoli formě, pokud se uzdravil do té míry, že je schopen projevit vlastní vůli.

§ 1528

(1) Kdo byl ve svéprávnosti omezen, může v rámci omezení pořizovat jen formou veřejné listiny.

(2) Kdo byl ve svéprávnosti omezen pro chorobnou závislost na požívání alkoholu, užívání psychotropních látek nebo podobných přípravků či jedů nebo chorobnou závislost na hráčské vášni představující závažnou duševní poruchu, může v rozsahu omezení pořizovat v jakékoli předepsané formě, nejvýše však o polovině pozůstalosti. Zbývající část pozůstalosti připadne zákonným dědicům; měl-li by však jako zákonný dědic dědit jen stát, může zůstavitel pořídit o celé pozůstalosti.

Účinky omylu

§ 1529

Podstatný omyl zůstavitele způsobuje neplatnost ustanovení závěti, kterého se týká.

§ 1530

(1) Omyl je podstatný, týká-li se osoby, které se něco zůstavuje, nebo podílu či věci, které se zůstavují, anebo podstatných vlastností věci. Vlastnosti jsou podstatné, je-li zřejmé, že by zůstavitel v závěti tak neurčil, kdyby se v nich nebyl zmýlil.

(2) Ustanovení závěti je platné, ukáže-li se, že osoba nebo věc byla jen nesprávně popsána.

§ 1531

Zakládá-li se vůle zůstavitele jen na mylné pohnutce, způsobuje neplatnost ustanovení závěti, kterého se týká.

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 »