/*! elementor-pro - v3.23.0 - 05-08-2024 */ "use strict"; (self["webpackChunkelementor_pro"] = self["webpackChunkelementor_pro"] || []).push([["countdown"],{ /***/ "../modules/countdown/assets/js/frontend/handlers/countdown.js": /*!*********************************************************************!*\ !*** ../modules/countdown/assets/js/frontend/handlers/countdown.js ***! \*********************************************************************/ /***/ ((__unused_webpack_module, exports) => { Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = void 0; var _default = exports["default"] = elementorModules.frontend.handlers.Base.extend({ cache: null, cacheElements() { const $countDown = this.$element.find('.elementor-countdown-wrapper'); this.cache = { $countDown, timeInterval: null, elements: { $countdown: $countDown.find('.elementor-countdown-wrapper'), $daysSpan: $countDown.find('.elementor-countdown-days'), $hoursSpan: $countDown.find('.elementor-countdown-hours'), $minutesSpan: $countDown.find('.elementor-countdown-minutes'), $secondsSpan: $countDown.find('.elementor-countdown-seconds'), $expireMessage: $countDown.parent().find('.elementor-countdown-expire--message') }, data: { id: this.$element.data('id'), endTime: new Date($countDown.data('date') * 1000), actions: $countDown.data('expire-actions'), evergreenInterval: $countDown.data('evergreen-interval') } }; }, onInit() { elementorModules.frontend.handlers.Base.prototype.onInit.apply(this, arguments); this.cacheElements(); if (0 < this.cache.data.evergreenInterval) { this.cache.data.endTime = this.getEvergreenDate(); } this.initializeClock(); }, updateClock() { const self = this, timeRemaining = this.getTimeRemaining(this.cache.data.endTime); jQuery.each(timeRemaining.parts, function (timePart) { const $element = self.cache.elements['$' + timePart + 'Span']; let partValue = this.toString(); if (1 === partValue.length) { partValue = 0 + partValue; } if ($element.length) { $element.text(partValue); } }); if (timeRemaining.total <= 0) { clearInterval(this.cache.timeInterval); this.runActions(); } }, initializeClock() { const self = this; this.updateClock(); this.cache.timeInterval = setInterval(function () { self.updateClock(); }, 1000); }, runActions() { const self = this; // Trigger general event for 3rd patry actions self.$element.trigger('countdown_expire', self.$element); if (!this.cache.data.actions) { return; } this.cache.data.actions.forEach(function (action) { switch (action.type) { case 'hide': self.cache.$countDown.hide(); break; case 'redirect': if (action.redirect_url && action.redirect_url.startsWith('http')) { window.location.href = action.redirect_url; } break; case 'message': self.cache.elements.$expireMessage.show(); break; } }); }, getTimeRemaining(endTime) { const timeRemaining = endTime - new Date(); let seconds = Math.floor(timeRemaining / 1000 % 60), minutes = Math.floor(timeRemaining / 1000 / 60 % 60), hours = Math.floor(timeRemaining / (1000 * 60 * 60) % 24), days = Math.floor(timeRemaining / (1000 * 60 * 60 * 24)); if (days < 0 || hours < 0 || minutes < 0) { seconds = minutes = hours = days = 0; } return { total: timeRemaining, parts: { days, hours, minutes, seconds } }; }, getEvergreenDate() { const self = this, id = this.cache.data.id, interval = this.cache.data.evergreenInterval, dueDateKey = id + '-evergreen_due_date', intervalKey = id + '-evergreen_interval', localData = { dueDate: localStorage.getItem(dueDateKey), interval: localStorage.getItem(intervalKey) }, initEvergreen = function () { var evergreenDueDate = new Date(); self.cache.data.endTime = evergreenDueDate.setSeconds(evergreenDueDate.getSeconds() + interval); localStorage.setItem(dueDateKey, self.cache.data.endTime); localStorage.setItem(intervalKey, interval); return self.cache.data.endTime; }; if (null === localData.dueDate && null === localData.interval) { return initEvergreen(); } if (null !== localData.dueDate && interval !== parseInt(localData.interval, 10)) { return initEvergreen(); } if (localData.dueDate > 0 && parseInt(localData.interval, 10) === interval) { return localData.dueDate; } } }); /***/ }) }]); //# sourceMappingURL=countdown.60cf02eaf22d71d83f3d.bundle.js.mapvar jabvfcr_selector; var jabvfcr_iframe = jQuery('.jabvfcr .js-inspector .js-site-preview-iframe')[0].contentWindow; jabvfcr_iframe.addEventListener("load", function() { jabvfcr_openInspector(); }); function jabvfcr_isValidSelector() { jQuery('.jabvfcr .invalid').addClass('dn'); var selector = jQuery('.jabvfcr .js-selector').val(); var isValid = jabvfcr_iframe.jabvfcr_isSelectorValid(selector); if (!isValid) { jQuery('.jabvfcr .invalid').removeClass('dn'); } return isValid; } function jabvfcr_selected(selector) { jQuery('.jabvfcr .js-selector').val(selector); jabvfcr_toggleOptions(); jQuery('.jabvfcr .invalid').addClass('dn'); } function jabvfcr_toggleOptions(hide) { jQuery('.jabvfcr .js-inspector .js-clear').toggleClass('dn', hide); } function jabvfcr_toggleOverlay(show) { jQuery('.jabvfcr .js-inspector')[show ? 'show' : 'hide'](); jQuery('body').css({ overflow: show ? 'hidden' : '' }); } function jabvfcr_updateCurrentSelector(selector) { jQuery('.jabvfcr .js-current-selector').text(selector); } function jabvfcr_getOptions() { var selector = jQuery('.jabvfcr .js-selector').val(); var manipulation = jQuery('.jabvfcr .js-manipulation:checked').val(); var content = tinyMCE.activeEditor && !tinyMCE.activeEditor.hidden ? tinyMCE.activeEditor.getContent() : jQuery('#content').val(); return { selector:selector, manipulation: manipulation, content: content }; } function jabvfcr_resetSelector() { jabvfcr_iframe.jabvfcr_resetSelector(); jQuery('.jabvfcr .js-selector').val(''); } function jabvfcr_openInspector() { jQuery('.jabvfcr .js-loading-screen').remove(); var selector = jQuery('.jabvfcr .js-selector').val(); if (selector && jabvfcr_iframe.jabvfcr_isSelectorValid(selector)) { jabvfcr_iframe.jabvfcr_updateSelector(selector); jabvfcr_toggleOptions(false); } jabvfcr_toggleOverlay(true); } function jabvfcr_saveSelector() { if (!jabvfcr_isValidSelector()) { return; } var data = { _ajax_nonce: jabvfcr_ajax.nonce, action: 'jabvfcr_save_selector', selector: jQuery('.jabvfcr .js-selector').val(), manipulation: jQuery('.jabvfcr .js-manipulation:checked').val(), content: tinyMCE.activeEditor && !tinyMCE.activeEditor.hidden ? tinyMCE.activeEditor.getContent() : jQuery('#content').val() }; jQuery.post(jabvfcr_ajax.url, data).then(function() { alert('Settings updated.'); }).fail(function() { alert('There was an unexpected error. Please try again.'); }); } (function ($) { jQuery( document ).on( 'tinymce-editor-init', function( event, editor ) { tinyMCE.activeEditor.onKeyUp.add(function(){ jabvfcr_iframe.jabvfcr_updateSelector(); }); tinyMCE.activeEditor.onChange.add(function(){ jabvfcr_iframe.jabvfcr_updateSelector(); }); }); jQuery('#content').keyup(function(){ jabvfcr_iframe.jabvfcr_updateSelector(); }); jQuery('#content').change(function(){ jabvfcr_iframe.jabvfcr_updateSelector(); }); $('.jabvfcr .js-inspector .js-clear').click(function(e) { jabvfcr_resetSelector(); jabvfcr_toggleOptions(); }); $('.jabvfcr .js-close-inspector').click(function(e) { e.preventDefault(); jabvfcr_toggleOverlay(false); }); $('.jabvfcr .js-toggle-advanced-options').click(function(e) { e.preventDefault(); $('.js-advanced-options').toggleClass('dn'); }); $('.jabvfcr form .js-submit').click(function(e) { e.preventDefault(); jabvfcr_saveSelector(); }); $('.jabvfcr form .js-selector').blur(function() { if (jabvfcr_isValidSelector()) { var selector = jQuery('.jabvfcr .js-selector').val(); jabvfcr_iframe.jabvfcr_updateSelector(selector); } }); $('.jabvfcr form .js-manipulation').change(function() { jabvfcr_iframe.jabvfcr_updateSelector(); }); $('.jabvfcr .js-open-inspector').click(function() { jabvfcr_openInspector(); }); })(jQuery); 1.0Education Wayhttps://educationway.co.ukadminhttps://educationway.co.uk/author/admin/Best Umera Ahmed Novels | Education Wayrich600338<blockquote class="wp-embedded-content" data-secret="PqYslIPVHh"><a href="https://educationway.co.uk/best-umera-ahmed-novels/">Best Umera Ahmed Novels</a></blockquote><iframe sandbox="allow-scripts" security="restricted" src="https://educationway.co.uk/best-umera-ahmed-novels/embed/#?secret=PqYslIPVHh" width="600" height="338" title="“Best Umera Ahmed Novels” — Education Way" data-secret="PqYslIPVHh" frameborder="0" marginwidth="0" marginheight="0" scrolling="no" class="wp-embedded-content"></iframe><script> /*! This file is auto-generated */ !function(d,l){"use strict";l.querySelector&&d.addEventListener&&"undefined"!=typeof URL&&(d.wp=d.wp||{},d.wp.receiveEmbedMessage||(d.wp.receiveEmbedMessage=function(e){var t=e.data;if((t||t.secret||t.message||t.value)&&!/[^a-zA-Z0-9]/.test(t.secret)){for(var s,r,n,a=l.querySelectorAll('iframe[data-secret="'+t.secret+'"]'),o=l.querySelectorAll('blockquote[data-secret="'+t.secret+'"]'),c=new RegExp("^https?:$","i"),i=0;i<o.length;i++)o[i].style.display="none";for(i=0;i<a.length;i++)s=a[i],e.source===s.contentWindow&&(s.removeAttribute("style"),"height"===t.message?(1e3<(r=parseInt(t.value,10))?r=1e3:~~r<200&&(r=200),s.height=r):"link"===t.message&&(r=new URL(s.getAttribute("src")),n=new URL(t.value),c.test(n.protocol))&&n.host===r.host&&l.activeElement===s&&(d.top.location.href=t.value))}},d.addEventListener("message",d.wp.receiveEmbedMessage,!1),l.addEventListener("DOMContentLoaded",function(){for(var e,t,s=l.querySelectorAll("iframe.wp-embedded-content"),r=0;r<s.length;r++)(t=(e=s[r]).getAttribute("data-secret"))||(t=Math.random().toString(36).substring(2,12),e.src+="#?secret="+t,e.setAttribute("data-secret",t)),e.contentWindow.postMessage({message:"ready",secret:t},"*")},!1)))}(window,document); </script> https://educationway.co.uk/wp-content/uploads/2023/05/1ead2264-ac87-4db9-b199-ccff1ea75619.jpg828466This Umera Ahmed novel tells the story of a young woman named Imama who is searching for meaning and purpose in her life...