Nový Občanský zákoník - Oddíl 2 - Zajištění dluhu

Předpis č. 89/2012 Sb.

Vyhlášené znění

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

Oddíl 2

Zajištění dluhu

Ručení

§ 2018

(1) Kdo věřiteli prohlásí, že ho uspokojí, jestliže dlužník věřiteli svůj dluh nesplní, stává se dlužníkovým ručitelem. Nepřijme-li věřitel ručitele, nemůže po něm nic žádat.

(2) Ručitelské prohlášení vyžaduje písemnou formu.

§ 2019

(1) Ručení předpokládá platný dluh dlužníka; ručení lze poskytnout i pro dluhy budoucí nebo podmíněné, jakož i za soubor dluhů určitého druhu vznikajících dlužníku v určité době nebo soubor různých dluhů z téhož právního důvodu.

(2) Platnosti ručení nebrání, je-li závazek dlužníka neplatný pro nedostatek jeho způsobilosti zavazovat se k povinnostem, pokud o tom ručitel při převzetí ručitelského závazku věděl nebo vědět musel.

§ 2020

Je-li ručením zajištěna pouze část dluhu, nesnižuje se rozsah ručení částečným plněním, zůstává-li dluh nesplněn ve výši, v jaké je zajištěn ručením.

§ 2021

(1) Věřitel má právo požadovat splnění na ručiteli, nesplnil-li dlužník v přiměřené lhůtě dluh, ač jej k tomu věřitel v písemné formě vyzval. Výzvy není třeba, nemůže-li ji věřitel uskutečnit nebo je-li nepochybné, že dlužník dluh nesplní.

(2) Bylo-li ručení ujednáno na určitou dobu, je právo věřitele zachováno i v případě, že věřitel v této době ručitele k plnění vyzval.

§ 2022

Ručitel může plnění odepřít, pokud věřitel zavinil, že pohledávka nemůže být uspokojena dlužníkem.

§ 2023

(1) Ručitel může vůči věřiteli uplatnit všechny námitky, které má proti věřiteli dlužník.

(2) Uplatní-li ručitel námitky, které mu sdělil dlužník, nahradí dlužník ručiteli náklady, které mu vznikly, byly-li námitky neúspěšné.

§ 2024

Uspokojí-li ručitel věřitele bez vědomí dlužníka, může dlužník uplatnit vůči ručiteli všechny námitky, které byl oprávněn uplatnit vůči věřiteli, kdyby na něm věřitel splnění vymáhal. Dlužník však nemůže vůči ručiteli uplatnit námitky, na které dlužník ručitele neupozornil bez zbytečného odkladu poté, co mu ručitel oznámil, že věřitel uplatnil právo z ručení.

§ 2025

(1) Právo věřitele vůči ručiteli se nepromlčí před promlčením práva vůči dlužníkovi.

(2) Uznání dluhu dlužníkem je účinné vůči ručiteli, vysloví-li s tím ručitel souhlas.

§ 2026

(1) Ručení zaniká zánikem dluhu, který zajišťuje.

(2) Ručení však nezaniká, pokud dluh zanikl pro nemožnost plnění dlužníka, a ručitel jej splnit může, nebo pro zánik právnické osoby, která je dlužníkem.

§ 2027

Zaručí-li se za týž dluh více ručitelů, ručí každý z nich věřiteli za dluh celý. Ručitel má vůči ostatním ručitelům stejná práva jako spoludlužník.

§ 2028

Zákonným ručením za nepeněžitý dluh je zajištěna peněžitá pohledávka, která věřiteli přísluší při porušení zajištěného dluhu.

Finanční záruka

§ 2029

(1) Finanční záruka vzniká prohlášením výstavce v záruční listině, že uspokojí věřitele podle záruční listiny do výše určité peněžní částky, nesplní-li dlužník věřiteli určitý dluh, anebo splní-li se jiné podmínky určené v záruční listině. Je-li výstavcem banka, zahraniční banka nebo spořitelní a úvěrní družstvo, jedná se o bankovní záruku.

(2) Záruční listina vyžaduje písemnou formu.

§ 2030

Při zajištění nepeněžité pohledávky se má se za to, že je do výše určené záruční listinou zajištěna peněžitá pohledávka, která věřiteli přísluší při porušení zajištěné povinnosti plnit.

§ 2031

(1) Potvrdí-li finanční záruku jiný výstavce, může věřitel uplatnit právo z finanční záruky vůči kterémukoli z těchto výstavců.

(2) Výstavce, který potvrdil finanční záruku a na tomto základě plnil, má právo na náhradu vůči výstavci, který jej o potvrzení finanční záruky požádal.

§ 2032

Poskytl-li výstavce finanční záruku na žádost jiného výstavce, má výstavce, který záruku poskytl, vůči žádajícímu výstavci právo na náhradu, pokud z poskytnuté záruky plnil a dodržel podmínky určené v žádosti.

§ 2033

Oznámí-li výstavce další osobě, že jiný výstavce poskytl finanční záruku, nevznikne z toho oznamujícímu výstavci povinnost z finanční záruky; způsobí-li však nesprávným oznámením škodu, nahradí ji.

§ 2034

(1) Výstavce ručí za splnění zajištěného dluhu do výše a za podmínek uvedených v záruční listině. Výstavce může vůči věřiteli uplatnit pouze námitky, jejichž uplatnění záruční listina připouští.

(2) Zajišťuje-li finanční záruka splnění dluhu, nemá částečné plnění dluhu účinek na rozsah finanční záruky, pokud je výše nesplněného dluhu alespoň stejná jako výše částky, na kterou zní záruční listina.

§ 2035

(1) Jsou-li podmínky uvedené v záruční listině splněny, splní výstavce povinnost z finanční záruky, pokud jej k tomu věřitel vyzve v písemné formě. Podmiňuje-li záruční listina plnění výstavce předložením určitého dokumentu, musí být předložen při výzvě nebo bez zbytečného odkladu po ní, avšak vždy za trvání finanční záruky.

(2) Nevyplývá-li ze záruční listiny něco jiného, nemůže výstavce uplatnit vůči věřiteli námitky, které by vůči němu byl oprávněn uplatnit dlužník. Předchozí výzva věřitele, aby dlužník splnil dluh, se vyžaduje, stanoví-li to záruční listina.

§ 2036

Právo na plnění ze záruky může věřitel postoupit. Připouští-li to záruční listina, může věřitel postoupit i právo uplatnit finanční záruku; tímto postoupením se převádí i právo na plnění ze záruky.

§ 2037

Je-li výstavce povinen podle záruční listiny plnit ve prospěch oprávněného jinému výstavci, je povinen plnit na účet oprávněného u tohoto výstavce.

§ 2038

Finanční záruku lze omezit na určitou dobu. Neuplatní-li věřitel vůči výstavci své právo v době určené záruční listinou, finanční záruka zanikne.

§ 2039

(1) Dlužník nahradí výstavci to, co plnil podle záruční listiny vystavené v souladu s uzavřenou smlouvou. Uzavřela-li s výstavcem smlouvu o poskytnutí finanční záruky třetí osoba, nahradí tato osoba výstavci, co plnila podle záruční listiny vystavené v souladu se smlouvou.

(2) Dlužník nemůže vůči výstavci uplatnit námitky, které by mohl uplatnit vůči věřiteli, neujednal-li s ním, že si výstavce vůči věřiteli uplatnění takových námitek vyhradí v záruční listině.

Zajišťovací převod práva

§ 2040

(1) Smlouvou o zajišťovacím převodu práva zajišťuje dlužník nebo třetí osoba dluh tím, že věřiteli dočasně převede své právo.

(2) Má se za to, že zajišťovací převod práva je převodem s rozvazovací podmínkou, že dluh bude splněn.

§ 2041

Týká-li se zajišťovací převod práva věci zapsané ve veřejném seznamu, vzniká zajištění zápisem do tohoto seznamu; do veřejného seznamu se zapíše i dočasná povaha zajišťovacího převodu práva.

§ 2042

Je-li k zajištění převedeno vlastnické právo a byla-li věc věřiteli předána, je věřitel oprávněn mít ji u sebe po celou dobu trvání zajišťovacího převodu práva a je povinen vykonávat prostou správu věci. Má-li věc ve své moci ten, kdo věřiteli převodem práva jistotu zřídil, vykonává on prostou správu věci.

§ 2043

Pomine-li důvod trvání zajišťovacího převodu práva, umožní věřitel osobě, která zajištění poskytla, výkon práva v předešlém rozsahu. Zároveň jí vydá vše, co z převedeného práva získal nebo co k němu přibylo, proti náhradě nákladů, které v souvislosti s výkonem zajišťovacího převodu práva účelně vynaložil.

§ 2044

(1) Není-li zajištěný dluh splněn, stane se převod práva nepodmíněným a dlužník předá věřiteli vše, co je nutné k plnému výkonu převedeného práva.

(2) Převyšuje-li obvyklá cena jistoty zřejmě výši zajištěného dluhu, vyplatí věřitel osobě, která jistotu poskytla, částku odpovídající rozdílu; přitom si započte náklady, které v souvislosti s výkonem zajišťovacího převodu práva účelně vynaložil. Neobsahuje-li smlouva o zajišťovacím převodu práva údaj o výši dluhu a hodnověrné ocenění práva převedeného k zajištění, je na věřiteli, aby dokázal, že obvyklá cena jistoty výši zajištěného dluhu zřejmě nepřevyšuje.

Dohoda o srážkách ze mzdy nebo jiných příjmů

§ 2045

(1) Dluh lze zajistit dohodou věřitele a dlužníka o srážkách ze mzdy nebo platu, z odměny ze smlouvy o výkonu závislé práce zakládající mezi zaměstnancem a zaměstnavatelem obdobný závazek nebo z náhrady mzdy nebo platu ve výši nepřesahující jejich polovinu. Nejde-li o srážky podle věty první k uspokojení práva zaměstnavatele, je třeba k uzavření dohody předchozího souhlasu zaměstnavatele.

(2) Proti plátci mzdy nebo platu nabývá věřitel práva na výplatu srážek okamžikem, kdy byla plátci dohoda předložena.

§ 2046

Náklady spojené s placením srážek nese plátce mzdy nebo platu; má-li však plátce mzdy nebo platu plnit současně podle několika dohod o srážkách ze mzdy nebo platu, jdou náklady s placením srážek podle druhé a další dohody k tíži dlužníka.

§ 2047

Ustanovení § 2045 a 2046 se použijí i pro jiné příjmy, s nimiž se při výkonu rozhodnutí nakládá jako se mzdou nebo platem.

Skrýt změny zákona Legenda text přidán text vypuštěn
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 »