Dana Široká

Dana Široká

Po dokončení gymnázia vystudovala Vyšší odbornou školu zdravotnickou a pracovala jako zdravotní laborant na oddělení klinické biochemie a hematologie. Odjakživa má v sobě vášeň pro psaní, rozhodla se proto využít své profesní znalosti na poli copywritingu. Nejraději se věnuje tématům z oblasti medicíny, vědy a techniky. Ve volných chvílích chodí ráda do přírody, čte knihy nebo peče.

Nejčtenější články autora

  1. Mnoho pacientů s rakovinou plic vyhledá lékaře pozdě. První příznaky se často objeví až v pokročilém stádiu 5. 1. 2024
  2. Rakovina slinivky se v počáteční fázi nijak neprojevuje. Když se objeví první příznaky, bývá už většinou pozdě 11. 1. 2024
  3. Furunkl nikdy nevymačkávejte! Riskujete tím rozšíření infekce do důležitých orgánů 7. 6. 2024
  4. V popularitě jmen pro holčičky vede suverénně Eliška. Na paty jí šlapají tradiční česká i cizí ženská jména 6. 12. 2024
  5. Bolest nártu často souvisí s přetížením. Může ale signalizovat i vážné onemocnění 27. 6. 2024
  6. Tumor může vzniknout prakticky kdekoliv v těle. Ne vždy je zhoubný, přehlížet byste ho ale neměli 5. 2. 2025
  7. Artróza kolene se nedá zcela vyléčit. Její postup ale můžete výrazně zpomalit 27. 12. 2023
  8. Bolest nohou nepodceňujte. Může značit i vážnější choroby oběhového systému 24. 5. 2022
  9. Zvýšený kreatinin v krvi poukazuje na poruchu funkce ledvin. Nejčastěji jde o chronickou ledvinnou nedostatečnost 3. 6. 2022
  10. Bursitida je velice bolestivý zánět tíhového váčku. Naštěstí se dá dobře léčit 5. 7. 2024

Seznam článků autora

Článek Rubrika Datum vydání Počet názorů
Bolest žlučníku patří mezi ty nejhorší. Na vině bývají špatné stravovací návyky i vážná onemocnění Domácí lékař 14. 6. 2022 -
Dietní jídla na podrážděný žaludek: oceníte je při průjmu i dalších problémech Domácí lékař 9. 6. 2022 -
Zvýšený kreatinin v krvi poukazuje na poruchu funkce ledvin. Nejčastěji jde o chronickou ledvinnou nedostatečnost Domácí lékař 3. 6. 2022 -
Víte, jak vypadá výpočet bazálního metabolismu? Tato znalost se vám může hodit při hubnutí Domácí lékař 28. 5. 2022 -
Bolest nohou nepodceňujte. Může značit i vážnější choroby oběhového systému Domácí lékař 24. 5. 2022 -
Zásadité potraviny mohou pomoci při překyselení organismu. Podle čeho je poznáte? Domácí lékař 18. 5. 2022 -
Vitamíny pro děti jsou nezbytné pro správný růst a psychickou pohodu. Co zařadit do jídelníčku? Domácí lékař 17. 5. 2022 -
Peptidy jsou nezbytnou součástí našeho těla. Jsou důležité pro obnovu chrupavek, pokožku i nehty Domácí lékař 11. 5. 2022 -
Tipy na zdravé snídaně: vyzkoušejte sladké i slané varianty Domácí lékař 6. 5. 2022 -
Zubní kámen vzniká v důsledku nedostatečné ústní hygieny. Jeho odstranění nechte vždy na lékaři Domácí lékař 3. 5. 2022 -
Jak rychle zhubnout bez hladovění a stresu? Řešením je pestrý jídelníček a dostatek pohybu Domácí lékař 2. 5. 2022 -
Aminokyseliny jako základní stavební jednotky života. Proč bychom se bez nich neobešli? Domácí lékař 26. 4. 2022 -
Jak správně provádět cviky na záda, abyste si ulevili od bolesti? Důležitou roli hraje pravidelnost a technika Domácí lékař 25. 4. 2022 -
Ice man, ledový muž či Wim Hof. Metoda, se kterou přišel, se stala revoluční na poli otužování Domácí lékař 23. 4. 2022 -
Proteinová dieta jako trend moderního hubnutí. Může být keto dieta nebezpečná? Domácí lékař 22. 4. 2022 -
Potravinářský průkaz se netýká jen pracovníků v potravinářství. Kdo ho musí mít a jak ho získat? Domácí lékař 12. 4. 2022 -
Správnou výživou lze podpořit růst vlasů a zmírnit jejich vypadávání. Jaké jsou nejlepší vitamíny na vlasy? Domácí lékař 11. 4. 2022 -
Španělská chřipka byla nejničivější pandemií v historii lidstva. Kolik za sebou zanechala úmrtí? Domácí lékař 5. 4. 2022 -
HPV virus se nevyhýbá ženám ani mužům. Na co si dát pozor a proč se vyplatí očkování proti HPV? Domácí lékař 4. 4. 2022 -
Co značí kruhy pod očima? Může jít o projev nevyspání, zadržování vody i vážné onemocnění Domácí lékař 31. 3. 2022 -
Otužování jako prevence proti nemocem: jak začít s otužováním a jaké jsou nejčastější chyby? Domácí lékař 30. 3. 2022 -
Kyselina listová je důležitá hlavně pro těhotné ženy. Její nedostatek způsobuje vývojové vady plodu Domácí lékař 29. 3. 2022 -
Štěnice jako nevítaný host: jak vypadá kousnutí od štěnice a jak se těchto parazitů zbavit? Domácí lékař 24. 3. 2022 -
Převod kJ na kcal a obráceně: jak se vyznat v přepočtu kalorií a energetických tabulkách na obalech potravin Domácí lékař 23. 3. 2022 -
Jaké jsou nejlepší cviky na břicho? Důležitá je především správná technika a komplexní posílení těla Domácí lékař 18. 3. 2022 -
121145 / 145
1 2 3 4 Následující strana Poslední strana
'; 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 »