Kiovan keskustaan, tuhat vuotta vanhan pyhän Sofian katedraalin viereen, nousee tänäkin vuonna perinteinen joulukuusi. Mitään markkinakojuja kuusen juurelle ei tällä kertaa tule. Kuusi koristellaan sinisin ja keltaisin palloin sekä Ukrainaa sodassa auttavien maiden lipuin.
Lamppuja kuuseen ripustetaan hyvin säästeliäästi energian tuhlauksen välttämiseksi. Kuusi saa oman virtalähteen, ja sen juurella pääsee tarpeen vaatiessa lataamaan matkapuhelinta.
Tutustu, voit peruuttaa tilauksen koska tahansa.
{ if (window.LorienDispatch) { const payload = { structuredEvent: { eventCategory: ’Funnel Tracking’, eventAction: action, }, }; if (typeof cb === ’function’) { // Never wait longer than CALLBACK_MAX_WAIT setTimeout(() => { cb(); }, CALLBACK_MAX_WAIT); payload.eventTimeout = CALLBACK_EVENT_TIMEOUT; payload.eventCallback = cb; } window.LorienDispatch.dispatchEvent(’loginWallEvent’, payload); } else if (typeof cb === ’function’) { cb(); } }; const trackLoginWallClick = (elem, action) => { elem.addEventListener(’click’, function (event) { event.preventDefault(); const url = event.currentTarget.href; const callbackToRedirectUser = () => { setTimeout(() => { window.location.href = url; }, CALLBACK_DELAY); }; trackLoginPaywallEvent(action, callbackToRedirectUser); }); }; const loginRequiredPaywall = (options) => { const trxId = KalevaPaywallUtils.generateTransactionId(); const pwCreateLink = document.querySelector(’.js-create-account-link’); const pwLoginLink = document.querySelector(’.js-login-link’); const createLinkUrlParams = KalevaPaywallUtils.getLoginwallUrlParams( options.channel, ’login-paywall-signup’, trxId, ); if (pwCreateLink.href.includes(’luotunnus’)) { pwCreateLink.href = pwCreateLink.href + createLinkUrlParams; } else { const newParams = createLinkUrlParams.replace( ’next=’, ’content_url=’ + encodeURIComponent(window.location.origin), ); const hasParams = pwCreateLink.href.includes(’?’); pwCreateLink.href = pwCreateLink.href + (hasParams ? newParams : newParams.replace(’&’, ’?’)); } const loginLinkUrl = pwLoginLink.href + KalevaPaywallUtils.getLoginwallUrlParams(options.channel, ’login-paywall-logins’, trxId); pwLoginLink.href = loginLinkUrl; window.dataLayer.push({ logintxid: trxId, }); trackLoginPaywallEvent(’Login Walled Page Landed’); trackLoginWallClick(pwCreateLink, ’Signup link clicked’); trackLoginWallClick(pwLoginLink, ’Login link clicked’); }; window.login_html_utils = { loginRequiredPaywall, }; })(); function initLoginwall() { !isProd && console.log(’initLoginwall’); // old implementation window.login_html_utils.loginRequiredPaywall({ channel: window.digitalData.channel.title, }); // new zephr stuff const darkTheme = [’body.videosite’, ’body.gallery’, ’.article.-rich’].some((cls) => document.querySelector(cls)); document.querySelector(’.paywall__cta’).classList.add(’km-button-rounded’); document.querySelector(’.paywall__cta’).classList.add(’km-button-rounded__brown’); document.querySelector(’.js-login-link’).classList.add(’no-link-styles’); document.querySelector(’.js-login-link’).classList.add(’km-button-rounded’); document .querySelector(’.js-login-link’) .classList.add(darkTheme ? ’km-button-rounded__black-outlined’ : ’km-button-rounded__white-outlined’); document.querySelector(’.paywall-css-container’).classList.add(darkTheme ? ’-theme-dark’ : ’-theme-normal’); if (darkTheme) { document.querySelector(’.article.-rich’)?.classList.add(’-with-paywall-dark’); } } ]]> { ctaLink.href = KalevaPaywallUtils.setUrlParameter(ctaLink.href, key, value); }); const currentUrlWithKvatxid = KalevaPaywallUtils.setUrlParameter(document.location.href, ’kvatxid’, kvatxid); ctaLink.href = KalevaPaywallUtils.setUrlParameter(ctaLink.href, ’kvatxid’, kvatxid); ctaLink.href = KalevaPaywallUtils.setUrlParameter(ctaLink.href, ’content_url’, currentUrlWithKvatxid); const loginLink = document.querySelector(’a.js-login-link’); if (loginLink) { loginLink.href = KalevaPaywallUtils.setUrlParameter(loginLink.href, ’next’, currentUrlWithKvatxid); } // KalevaPaywallContent.bindListeners(); const parentFrameLinks = document.querySelectorAll(’a.js-parent-frame-link’); Array.prototype.forEach.call(parentFrameLinks, function (element) { element.addEventListener(’click’, function (e) { e.preventDefault(); if (e.target.className.indexOf(’js-cta-link’) > -1) { window.dataLayer.push({ event: ’Paywall CTA click’, }); setTimeout(function () { document.location.href = e.target.getAttribute(’href’); }, 100); } else { document.location.href = e.target.getAttribute(’href’); } }); }); } ]]> t.trim()) .filter(Boolean) .forEach((benefit) => { container.innerHTML += ` ${benefit} ]]>
Lähde