PluginProbe ʕ •ᴥ•ʔ
Premium Addons for Elementor – Powerful Elementor Templates & Widgets / 4.10.78
Premium Addons for Elementor – Powerful Elementor Templates & Widgets v4.10.78
4.11.82 4.11.80 4.11.81 4.11.79 4.11.78 4.11.77 4.11.76 4.11.75 3.20.5 4.11.69 3.20.6 4.11.7 3.20.7 4.11.70 3.20.8 4.11.71 3.20.9 4.11.72 3.21.1 4.11.73 3.21.2 4.11.74 3.21.3 4.11.8 3.21.4 4.11.9 3.21.5 4.2.0 3.21.6 4.2.1 3.3.0 4.2.2 3.3.1 4.2.3 3.3.2 4.2.4 3.3.3 4.2.5 3.3.4 4.2.6 3.3.5 4.2.7 3.3.6 4.2.8 3.3.7 4.2.9 3.3.8 4.3.0 3.3.9 4.3.1 3.4.0 4.3.2 3.4.1 4.3.3 3.4.2 4.3.4 3.4.3 4.3.5 3.4.4 4.3.6 3.4.5 4.3.7 3.4.6 4.3.8 3.4.7 4.3.9 3.4.8 4.4.0 3.4.9 4.4.1 3.5.0 4.4.2 3.5.1 4.4.3 3.5.2 4.4.4 3.5.3 4.4.5 3.5.4 4.4.6 3.5.5 4.4.7 3.5.6 4.4.8 3.5.7 4.4.9 3.5.8 4.5.0 3.5.9 4.5.1 3.6.0 4.5.2 3.6.1 4.5.3 3.6.2 4.5.4 3.6.3 4.5.5 3.6.4 4.5.6 3.6.5 4.5.7 3.6.6 4.5.8 3.6.7 4.5.9 3.6.8 4.6.0 3.6.9 4.6.1 3.7.0 4.7.0 3.7.1 4.7.1 3.7.2 4.7.2 3.7.3 4.7.3 3.7.4 4.7.4 3.7.5 4.7.5 3.7.6 4.7.6 3.7.7 4.7.7 3.7.8 4.7.8 3.7.9 4.7.9 3.8.0 4.8.0 3.8.1 4.8.1 3.8.2 4.8.10 3.8.3 4.8.11 3.8.4 4.8.2 3.8.5 4.8.3 3.8.6 4.8.4 3.8.7 4.8.5 3.8.8 4.8.6 3.8.9 4.8.7 3.9.0 4.8.8 3.9.1 4.8.9 3.9.2 4.9.0 3.9.3 4.9.0-beta1 3.9.4 4.9.0-beta2 3.9.5 4.9.1 3.9.6 4.9.10 3.9.7 4.9.11 3.9.8 4.9.12 3.9.9 4.9.13 4.0.1 4.9.14 4.0.3 4.9.15 4.0.4 4.9.16 4.0.5 4.9.17 4.0.6 4.9.18 4.0.7 4.9.19 4.0.8 4.9.2 4.0.9 4.9.20 4.1.0 4.9.21 4.1.1 4.9.22 4.1.2 4.9.23 4.1.3 4.9.24 trunk 4.1.4 4.9.25 1.0 4.1.5 4.9.26 1.01 4.1.6 4.9.27 1.02 4.1.7 4.9.28 1.03 4.1.8 4.9.29 1.04 4.1.9 4.9.3 1.05 4.10.0 4.9.30 1.06 4.10.1 4.9.31 1.07 4.10.10 4.9.32 1.08 4.10.11 4.9.33 1.09 4.10.12 4.9.34 2.0 4.10.13 4.9.35 2.0.1 4.10.14 4.9.36 2.0.2 4.10.15 4.9.37 2.0.3 4.10.16 4.9.38 2.0.4 4.10.17 4.9.39 2.0.5 4.10.18 4.9.4 2.0.6 4.10.19 4.9.40 2.0.7 4.10.2 4.9.41 2.0.8 4.10.20 4.9.42 2.0.9 4.10.21 4.9.43 2.1.0 4.10.22 4.9.45 2.1.1 4.10.23 4.9.46 2.1.2 4.10.24 4.9.47 2.1.3 4.10.25 4.9.48 2.1.4 4.10.26 4.9.49 2.1.5 4.10.27 4.9.5 2.1.5-beta1 4.10.28 4.9.50 2.1.6 4.10.29 4.9.51 2.1.7 4.10.3 4.9.52 2.1.8 4.10.30 4.9.53 2.1.9 4.10.31 4.9.54 2.2.0 4.10.32 4.9.55 2.2.1 4.10.33 4.9.56 2.2.2 4.10.34 4.9.57 2.2.3 4.10.35 4.9.6 2.2.4 4.10.36 4.9.7 2.2.5 4.10.37 4.9.8 2.2.6 4.10.38 4.9.9 2.2.7 4.10.39 2.2.8 4.10.4 2.2.9 4.10.40 2.3.0 4.10.41 2.3.1 4.10.42 2.3.2 4.10.43 2.3.3 4.10.44 2.3.4 4.10.45 2.3.5 4.10.46 2.3.6 4.10.47 2.3.7 4.10.48 2.3.8 4.10.49 2.3.9 4.10.5 2.4.0 4.10.50 2.4.1 4.10.51 2.5.0 4.10.52 2.5.1 4.10.53 2.5.2 4.10.54 2.5.3 4.10.55 2.5.4 4.10.56 2.5.5 4.10.57 2.5.6 4.10.58 2.5.7 4.10.59 2.5.8 4.10.6 2.5.9 4.10.60 2.6.0 4.10.61 2.6.1 4.10.62 2.6.2 4.10.63 2.6.3 4.10.64 2.6.4 4.10.65 2.6.5 4.10.66 2.6.6 4.10.67 2.6.7 4.10.68 2.6.8 4.10.69 2.6.9 4.10.7 2.7.0 4.10.70 2.7.1 4.10.71 2.7.2 4.10.72 2.7.3 4.10.73 2.7.4 4.10.74 2.7.5 4.10.75 2.7.6 4.10.76 2.7.7 4.10.77 2.7.8 4.10.78 2.7.9 4.10.79 2.8.0 4.10.8 2.8.1 4.10.80 2.8.2 4.10.81 2.8.3 4.10.82 2.8.4 4.10.83 2.8.5 4.10.84 2.8.6 4.10.85 2.8.7 4.10.86 2.8.8 4.10.87 2.8.9 4.10.88 2.9.0 4.10.89 2.9.1 4.10.9 2.9.2 4.10.90 2.9.3 4.11.0 2.9.4 4.11.1 2.9.5 4.11.10 2.9.6 4.11.11 2.9.7 4.11.12 2.9.8 4.11.13 2.9.9 4.11.14 3.0.0 4.11.15 3.0.1 4.11.16 3.0.2 4.11.17 3.0.3 4.11.18 3.0.4 4.11.19 3.0.5 4.11.2 3.0.6 4.11.20 3.0.7 4.11.21 3.0.8 4.11.22 3.0.9 4.11.23 3.1.0 4.11.24 3.1.1 4.11.25 3.1.2 4.11.26 3.1.3 4.11.27 3.1.4 4.11.28 3.1.5 4.11.29 3.1.6 4.11.3 3.1.7 4.11.30 3.1.8 4.11.31 3.1.9 4.11.32 3.10.0 4.11.33 3.10.1 4.11.34 3.10.2 4.11.35 3.10.3 4.11.36 3.10.4 4.11.37 3.10.5 4.11.38 3.10.6 4.11.39 3.10.7 4.11.4 3.10.8 4.11.40 3.10.9 4.11.41 3.11.0 4.11.42 3.11.1 4.11.43 3.11.2 4.11.44 3.11.3 4.11.45 3.11.4 4.11.46 3.11.5 4.11.47 3.11.6 4.11.48 3.11.7 4.11.49 3.11.8 4.11.5 3.11.9 4.11.50 3.12.0 4.11.51 3.12.1 4.11.52 3.12.2 4.11.53 3.12.3 4.11.54 3.2.0 4.11.55 3.2.1 4.11.56 3.2.2 4.11.57 3.2.3 4.11.58 3.2.4 4.11.59 3.2.5 4.11.6 3.2.6 4.11.60 3.2.7 4.11.61 3.2.8 4.11.62 3.2.9 4.11.63 3.20.0 4.11.64 3.20.1 4.11.65 3.20.2 4.11.66 3.20.3 4.11.67 3.20.4 4.11.68
premium-addons-for-elementor / assets / frontend / js / premium-countdown-timer.js
premium-addons-for-elementor / assets / frontend / js Last commit date
TweenMax.js 1 year ago anime.js 1 year ago flipster.js 1 year ago headroom.js 1 year ago iscroll.js 1 year ago isotope.js 1 year ago jquery-countdown.js 1 year ago jquery-mousewheel.js 1 year ago jquery-slimscroll.js 1 year ago lottie.js 1 year ago luxon.js 1 year ago markerclusterer.js 1 year ago modal.js 1 year ago motionpath.js 1 year ago pa-gsap.js 1 year ago pa-scrolldir.js 1 year ago premium-addons.js 1 year ago premium-banner.js 1 year ago premium-blog.js 1 year ago premium-button.js 1 year ago premium-carousel-widget.js 1 year ago premium-contact-form.js 1 year ago premium-countdown-timer.js 1 year ago premium-counter.js 1 year ago premium-dis-conditions.js 1 year ago premium-dual-header.js 1 year ago premium-eq-height.js 1 year ago premium-fancy-text.js 1 year ago premium-floating-effects.js 1 year ago premium-global-tooltips.js 1 year ago premium-icon-list.js 1 year ago premium-image-button.js 1 year ago premium-image-scroll.js 1 year ago premium-img-gallery.js 1 year ago premium-maps.js 1 year ago premium-media-wheel.js 1 year ago premium-mini-cart.js 1 year ago premium-mobile-menu.js 1 year ago premium-modal-box.js 1 year ago premium-nav-menu.js 1 year ago premium-notifications.js 1 year ago premium-person.js 1 year ago premium-pinterest-feed.js 1 year ago premium-post-ticker.js 1 year ago premium-progressbar.js 1 year ago premium-search-form.js 1 year ago premium-shape-divider.js 1 year ago premium-svg-drawer.js 1 year ago premium-tcloud.js 1 year ago premium-testimonials.js 1 year ago premium-textual-showcase.js 1 year ago premium-tiktok-feed.js 1 year ago premium-title.js 1 year ago premium-video-box.js 1 year ago premium-vscroll.js 1 year ago premium-weather.js 1 year ago premium-woo-categories.js 1 year ago premium-woo-cta.js 1 year ago premium-woo-products.js 1 year ago premium-world-clock.js 1 year ago premium-wrapper-link.js 1 year ago prettyPhoto.js 1 year ago scrollTrigger.js 1 year ago slick.js 1 year ago tooltipster.js 1 year ago typed.js 1 year ago universal-tilt.js 1 year ago vticker.js 1 year ago
premium-countdown-timer.js
166 lines
1 (function ($) {
2
3 var PremiumCountDownHandler = function ($scope, $) {
4
5 var $countDownElement = $scope.find(".premium-countdown"),
6 $countDown = $countDownElement.find('.countdown'),
7 settings = $countDownElement.data("settings"),
8 timerType = settings.timerType,
9 until = 'evergreen' === timerType ? settings.until.date.replace(/ /g, "T") : settings.until,
10 layout = '',
11 computedStyle = getComputedStyle($scope[0]);
12
13 function escapeHTML(str) {
14 var map = {
15 '&': '&',
16 '<': '&lt;',
17 '>': '&gt;',
18 '"': '&quot;',
19 "'": '&#039;',
20 };
21
22 return str.replace(/[&<>"']/g, function (m) { return map[m]; });
23 }
24
25 if (settings.separator) {
26 settings.separator = escapeHTML(settings.separator);
27 }
28
29 var currentDate = new Date().getTime(),
30 untilDate = new Date(until).getTime();
31
32 if ('' !== settings.serverSync) {
33 currentDate = new Date(settings.serverSync).getTime();
34 }
35
36 // Calculate the difference in seconds between the future and current date
37 var diff = Math.round(untilDate / 1000 - currentDate / 1000);
38
39 if ('flipping' === settings.style) {
40
41 var clock;
42
43 // Run countdown timer
44 clock = $countDown.FlipClock(diff, {
45 clockFace: "DailyCounter",
46 countdown: true,
47 timeSeparator: settings.separator || '',
48 language: settings.lang,
49 callbacks: {
50 stop: function () {
51
52 triggerExpirationAction();
53 }
54 }
55 });
56
57 } else {
58
59 // var single = settings.single.split(","),
60 // plural = settings.plural.split(",");
61
62 $countDownElement.find('.countdown').countdown({
63 $countDown: $countDown,
64 layout: layout,
65 // labels: single,
66 // labels1: plural,
67 until: diff,
68 format: settings.format,
69 style: settings.style,
70 timeSeparator: settings.separator || '',
71 unitsPos: settings.unitsPos,
72 id: $scope.data('id'),
73 circleStrokeWidth: computedStyle.getPropertyValue('--pa-countdown-stroke-width'),
74 unitsInside: $scope.hasClass('premium-countdown-uinside-yes'),
75 onExpiry: function () {
76
77 triggerExpirationAction();
78
79 },
80 });
81
82 //To unify digit unit width.
83 if ($scope.hasClass('premium-countdown-block')) {
84 var currentValueWidth = $countDown.find('.countdown-amount').last().outerWidth();
85
86 $countDown.find('.countdown-period span').css('width', currentValueWidth);
87 }
88
89 //For evergreen timer reset.
90 if (settings.reset) {
91 $countDownElement.find('.premium-countdown-init').countdown('option', 'until', new Date(until));
92 }
93
94 if ('featured' === settings.style) {
95 var $targetUnit = $countDownElement.find('.countdown-section-' + settings.featuredUnit);
96 $targetUnit.parent().prepend($targetUnit);
97 }
98
99 }
100
101 if ('.' === settings.separator) {
102 $countDown.find('.countdown_separator span').addClass('countdown-separator-circle').text('');
103 }
104
105 if (diff < 0)
106 triggerExpirationAction();
107
108 function triggerExpirationAction() {
109
110 if ('default' === settings.event && 'flipping' !== settings.style) {
111 setTimeout(function () {
112 if ('dash' === settings.changeTo) {
113 $countDown.find('.countdown-amount > span').text('-');
114 } else if ('done' === settings.changeTo && $countDown.find('.countdown-show4').length > 0) {
115 var characters = ['D', 'O', 'N', 'E'];
116
117 characters.map(function (char, index) {
118 $countDown.find('.countdown-amount > span').eq(index).text(char);
119 });
120
121 }
122
123 }, 1000);
124 } else if ('text' === settings.event) {
125 $countDown.remove();
126 $scope.find(".premium-addons__v-hidden").removeClass('premium-addons__v-hidden');
127 } else if ('url' === settings.event && !elementorFrontend.isEditMode()) {
128 if ('' !== settings.text) {
129 var urlPattern = /^(https?:\/\/)?([\da-z\.-]+)\.([a-z\.-]{2,})([\/\w \u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF%.-]*)*\/?$/i;
130
131 // Test the string against the regular expression
132 if (urlPattern.test(settings.text))
133 window.location.href = settings.text;
134 }
135
136 } else if ('restart' === settings.event) {
137
138 if ('flipping' === settings.style) {
139 setTimeout(function () {
140 clock.setTime(diff); // Restart with the same target seconds.
141 }, 1000);
142
143 setTimeout(function () {
144 clock.start(); // Restart with the same target seconds.
145 }, 2000);
146
147 } else {
148 setTimeout(function () {
149 $countDownElement.find('.premium-countdown-init').countdown('option', { until: diff });
150 }, 1000);
151 }
152
153
154 }
155
156 }
157
158
159 };
160
161 $(window).on('elementor/frontend/init', function () {
162 elementorFrontend.hooks.addAction('frontend/element_ready/premium-countdown-timer.default', PremiumCountDownHandler);
163 });
164 })(jQuery);
165
166