PluginProbe
FireBox – WooCommerce Popup Builder, Exit Intent Popup, Email Optin & Cart Abandonment / 3.0.1
FireBox – WooCommerce Popup Builder, Exit Intent Popup, Email Optin & Cart Abandonment v3.0.1
3.1.13 3.1.12 3.1.11 3.1.10 3.1.9 3.1.8 3.1.7 trunk 1.0.0 1.0.1 1.0.10 1.0.11 1.0.12 1.0.13 1.0.14 1.0.2 1.0.3 1.0.4 1.0.5 1.0.6 1.0.7 1.0.8 1.0.9 1.1.0 1.1.1 All 122 releases
firebox / Inc / Core / Blocks / Countdown.php

Countdown.php in FireBox – WooCommerce Popup Builder, Exit Intent Popup, Email Optin & Cart Abandonment 3.0.1, at Inc/Core/Blocks/Countdown.php

118 lines 3.9 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * @package FireBox
4 * @version 3.0.1 Free
5 *
6 * @author FirePlugins <info@fireplugins.com>
7 * @link https://www.fireplugins.com
8 * @copyright Copyright © 2025 FirePlugins All Rights Reserved
9 * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later
10 */
11
12 namespace FireBox\Core\Blocks;
13
14 if (!defined('ABSPATH'))
15 {
16 exit; // Exit if accessed directly.
17 }
18
19 class Countdown extends \FireBox\Core\Blocks\Block
20 {
21 /**
22 * Block identifier.
23 *
24 * @var string
25 */
26 protected $name = 'countdown';
27
28 /**
29 * Callback
30 *
31 * @param array $attributes
32 * @param string $content
33 *
34 * @return mixed
35 */
36 public function render_callback($attributes, $content)
37 {
38 if (!class_exists('\FPFramework\Base\Widgets\Helper'))
39 {
40 return;
41 }
42
43 if (!isset($attributes['value']))
44 {
45 return;
46 }
47
48 $payload = [
49 'countdown_type' => $attributes['countdownType'],
50 'value' => $attributes['value'],
51 'timezone' => $attributes['timezone'],
52 'dynamic_days' => $attributes['dynamicDays'],
53 'dynamic_hours' => $attributes['dynamicHours'],
54 'dynamic_minutes' => $attributes['dynamicMinutes'],
55 'dynamic_seconds' => $attributes['dynamicSeconds'],
56 'digits_wrapper_padding' => $attributes['digitsWrapperPadding'],
57 'digits_wrapper_background_color' => $attributes['digitsWrapperBackgroundColor'],
58 'digits_wrapper_border_radius' => $attributes['digitsWrapperBorderRadius'],
59 'finish_text' => $attributes['finishText'],
60 'redirect_url' => $attributes['redirectURL'],
61 'countdown_action' => $attributes['countdownAction'],
62 'theme' => $attributes['theme'],
63 'format' => $attributes['format'],
64 'days' => $attributes['days'],
65 'days_label' => $attributes['daysLabel'],
66 'hours' => $attributes['hours'],
67 'hours_label' => $attributes['hoursLabel'],
68 'minutes' => $attributes['minutes'],
69 'minutes_label' => $attributes['minutesLabel'],
70 'seconds' => $attributes['seconds'],
71 'seconds_label' => $attributes['secondsLabel'],
72 'background_color' => $attributes['backgroundColor'],
73 'item_background_color' => $attributes['itemBackgroundColor'],
74 'unit_label_text_color' => $attributes['unitLabelTextColor'],
75 'digit_background_color' => $attributes['digitBackgroundColor'],
76 'digit_text_color' => $attributes['digitTextColor'],
77 'unit_label_margin_top' => $attributes['unitLabelMarginTop'],
78 'separator' => $attributes['separator'],
79 'double_zeroes_format' => $attributes['doubleZeroesFormat'],
80 'align' => $attributes['align'],
81 'margin' => $attributes['margin'],
82 'padding' => $attributes['padding'],
83 'gap' => $attributes['gap'],
84 'digits_gap' => $attributes['digitsGap'],
85 'item_size' => $attributes['itemSize'],
86 'item_border_color' => $attributes['itemBorderColor'],
87 'item_border_width' => $attributes['itemBorderWidth'],
88 'item_border_style' => $attributes['itemBorderStyle'],
89 'item_border_radius' => $attributes['itemBorderRadius'],
90 'digits_padding' => $attributes['digitsPadding'],
91 'digits_wrapper_min_width' => $attributes['digitsWrapperMinWidth'],
92 'digit_min_width' => $attributes['digitMinWidth'],
93 'digit_border_color' => $attributes['digitBorderColor'],
94 'digit_border_width' => $attributes['digitBorderWidth'],
95 'digit_border_style' => $attributes['digitBorderStyle'],
96 'digit_border_radius' => $attributes['digitBorderRadius'],
97 'digits_font_size' => $attributes['digitsFontSize'],
98 'label_font_size' => $attributes['labelFontSize'],
99 'digits_font_weight' => $attributes['digitsFontWeight'],
100 'label_font_weight' => $attributes['labelFontWeight'],
101 ];
102
103 return \FPFramework\Base\Widgets\Helper::render('Countdown', $payload);
104 }
105
106 /**
107 * Registers assets both on front-end and back-end.
108 *
109 * @return void
110 */
111 public function assets()
112 {
113 \FPFramework\Base\Widgets\Countdown::register_assets();
114 \FPFramework\Base\Widgets\Countdown::localize_script();
115
116 wp_enqueue_script('fpframework-countdown-widget');
117 }
118 }