PluginProbe
King Addons for Elementor – 100+ Elementor Widgets, 4 000+ Elementor Templates, WooCommerce Builder, Mega Menu, Popup Builder / 51.1.86
King Addons for Elementor – 100+ Elementor Widgets, 4 000+ Elementor Templates, WooCommerce Builder, Mega Menu, Popup Builder v51.1.86
51.1.86 51.1.84 51.1.85 51.1.83 51.1.82 51.1.81 51.1.79 51.1.78 51.1.77 51.1.76 51.1.74 51.1.75 51.1.65 51.1.64 51.1.63 trunk 51.1.14 51.1.2 51.1.35 51.1.36 51.1.37 51.1.38 51.1.39 51.1.44 51.1.45 All 40 releases
king-addons / includes / extensions / Free_Shipping_Bar / templates / admin-page.php

admin-page.php in King Addons for Elementor – 100+ Elementor Widgets, 4 000+ Elementor Templates, WooCommerce Builder, Mega Menu, Popup Builder 51.1.86, at includes/extensions/Free_Shipping_Bar/templates/admin-page.php

164 lines 7.8 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * Free Shipping Bar settings screen.
4 *
5 * @package King_Addons
6 *
7 * @var array<string, mixed> $s Current settings.
8 * @var float|null $detected Threshold detected from WooCommerce.
9 */
10
11 if (!defined('ABSPATH')) {
12 exit;
13 }
14
15 require_once KING_ADDONS_PATH . 'includes/admin/shared/page-shell.php';
16
17 $ka_notices = [];
18
19 if (!class_exists('WooCommerce')) {
20 $ka_notices[] = [
21 'type' => 'warning',
22 'text' => esc_html__('WooCommerce is not active, so this bar has nothing to measure. Activate WooCommerce to use it.', 'king-addons'),
23 ];
24 }
25
26 $ka_source = $s['threshold_source'] ?? 'auto';
27
28 ka_admin_page_open([
29 'title' => esc_html__('Free Shipping Bar', 'king-addons'),
30 'subtitle' => esc_html__('Show customers how close they are to free shipping.', 'king-addons'),
31 'icon' => 'dashicons-cart',
32 'icon_color' => 'green',
33 'saved' => isset($_GET['ka-saved']), // phpcs:ignore WordPress.Security.NonceVerification.Recommended
34 'notices' => $ka_notices,
35 ]);
36 ?>
37
38 <form method="post" action="<?php echo esc_url(admin_url('admin-post.php')); ?>">
39 <input type="hidden" name="action" value="king_addons_fsb_save">
40 <?php wp_nonce_field('king_addons_fsb_save'); ?>
41
42 <?php ka_admin_card_open(esc_html__('Behaviour', 'king-addons'), 'dashicons-visibility'); ?>
43
44 <?php ka_admin_row_open(esc_html__('Enable', 'king-addons')); ?>
45 <label class="ka-check">
46 <input type="checkbox" name="ka_fsb[enabled]" value="1" <?php checked(!empty($s['enabled'])); ?>>
47 <span><?php esc_html_e('Show the free shipping bar on the storefront', 'king-addons'); ?></span>
48 </label>
49 <?php ka_admin_row_close(); ?>
50
51 <?php ka_admin_row_open(esc_html__('Threshold', 'king-addons')); ?>
52 <div class="ka-radio-group">
53 <label class="ka-radio-item">
54 <input type="radio" name="ka_fsb[threshold_source]" value="auto" <?php checked($ka_source, 'auto'); ?>>
55 <span>
56 <strong><?php esc_html_e('Read from WooCommerce shipping zones', 'king-addons'); ?></strong>
57 <em>
58 <?php
59 if (null !== $detected && function_exists('wc_price')) {
60 printf(
61 /* translators: %s: formatted amount. */
62 esc_html__('Detected right now: %s', 'king-addons'),
63 wp_kses_post(wc_price($detected))
64 );
65 } else {
66 esc_html_e('No amount-based free shipping method in the matching zone yet. Add one in WooCommerce, or use a fixed amount below.', 'king-addons');
67 }
68 ?>
69 </em>
70 </span>
71 </label>
72
73 <label class="ka-radio-item">
74 <input type="radio" name="ka_fsb[threshold_source]" value="manual" <?php checked($ka_source, 'manual'); ?>>
75 <span>
76 <strong><?php esc_html_e('Use a fixed amount', 'king-addons'); ?></strong>
77 <em><?php esc_html_e('Ignores the shipping zones and always aims at this number.', 'king-addons'); ?></em>
78 </span>
79 </label>
80 </div>
81
82 <p class="ka-inline-field">
83 <label for="ka-fsb-manual"><?php esc_html_e('Fixed amount', 'king-addons'); ?></label>
84 <input type="number" step="0.01" min="0" id="ka-fsb-manual" name="ka_fsb[manual_amount]"
85 value="<?php echo esc_attr((string) ($s['manual_amount'] ?? '')); ?>" style="max-width:140px">
86 </p>
87 <?php ka_admin_row_close(); ?>
88
89 <?php ka_admin_row_open(esc_html__('Where to show', 'king-addons')); ?>
90 <div class="ka-check-group">
91 <label class="ka-check">
92 <input type="checkbox" name="ka_fsb[show_on_cart]" value="1" <?php checked(!empty($s['show_on_cart'])); ?>>
93 <span><?php esc_html_e('Cart page', 'king-addons'); ?></span>
94 </label>
95 <label class="ka-check">
96 <input type="checkbox" name="ka_fsb[show_on_checkout]" value="1" <?php checked(!empty($s['show_on_checkout'])); ?>>
97 <span><?php esc_html_e('Checkout page', 'king-addons'); ?></span>
98 </label>
99 <label class="ka-check">
100 <input type="checkbox" name="ka_fsb[show_in_mini_cart]" value="1" <?php checked(!empty($s['show_in_mini_cart'])); ?>>
101 <span><?php esc_html_e('Mini cart', 'king-addons'); ?></span>
102 </label>
103 </div>
104 <?php ka_admin_row_close(); ?>
105
106 <?php ka_admin_card_close(); ?>
107
108 <?php ka_admin_card_open(esc_html__('Wording', 'king-addons'), 'dashicons-editor-textcolor'); ?>
109
110 <?php ka_admin_row_open(esc_html__('Before the goal', 'king-addons'), 'ka-fsb-progress'); ?>
111 <input type="text" id="ka-fsb-progress" name="ka_fsb[text_progress]"
112 value="<?php echo esc_attr((string) $s['text_progress']); ?>">
113 <?php ka_admin_row_close(esc_html__('Placeholders: {remaining}, {total}, {threshold}', 'king-addons')); ?>
114
115 <?php ka_admin_row_open(esc_html__('Once reached', 'king-addons'), 'ka-fsb-success'); ?>
116 <input type="text" id="ka-fsb-success" name="ka_fsb[text_success]"
117 value="<?php echo esc_attr((string) $s['text_success']); ?>">
118 <label class="ka-check" style="margin-top:10px">
119 <input type="checkbox" name="ka_fsb[hide_when_reached]" value="1" <?php checked(!empty($s['hide_when_reached'])); ?>>
120 <span><?php esc_html_e('Hide the bar entirely once free shipping is reached', 'king-addons'); ?></span>
121 </label>
122 <?php ka_admin_row_close(); ?>
123
124 <?php ka_admin_card_close(); ?>
125
126 <?php ka_admin_card_open(esc_html__('Appearance', 'king-addons'), 'dashicons-art'); ?>
127
128 <?php ka_admin_row_open(esc_html__('Bar height', 'king-addons'), 'ka-fsb-height'); ?>
129 <p class="ka-inline-field">
130 <input type="number" min="2" max="40" id="ka-fsb-height" name="ka_fsb[bar_height]"
131 value="<?php echo esc_attr((string) $s['bar_height']); ?>" style="max-width:100px">
132 <span><?php esc_html_e('px', 'king-addons'); ?></span>
133 </p>
134 <?php ka_admin_row_close(); ?>
135
136 <?php ka_admin_row_open(esc_html__('Colours', 'king-addons')); ?>
137 <div class="ka-color-row">
138 <label class="ka-color-wrap">
139 <span><?php esc_html_e('Bar', 'king-addons'); ?></span>
140 <input type="color" name="ka_fsb[bar_color]" value="<?php echo esc_attr((string) $s['bar_color']); ?>">
141 </label>
142 <label class="ka-color-wrap">
143 <span><?php esc_html_e('Track', 'king-addons'); ?></span>
144 <input type="color" name="ka_fsb[bar_track_color]" value="<?php echo esc_attr((string) $s['bar_track_color']); ?>">
145 </label>
146 <label class="ka-color-wrap">
147 <span><?php esc_html_e('Text', 'king-addons'); ?></span>
148 <input type="color" name="ka_fsb[text_color]" value="<?php echo esc_attr((string) $s['text_color']); ?>">
149 </label>
150 </div>
151 <?php ka_admin_row_close(); ?>
152
153 <?php ka_admin_card_close(); ?>
154
155 <p class="ka-submit">
156 <button type="submit" class="ka-btn ka-btn-primary">
157 <span class="dashicons dashicons-yes"></span>
158 <?php esc_html_e('Save Settings', 'king-addons'); ?>
159 </button>
160 </p>
161 </form>
162
163 <?php ka_admin_page_close(); ?>
164