PluginProbe
King Addons for Elementor – 100+ Elementor Widgets, 4 000+ Elementor Templates, WooCommerce Builder, Mega Menu, Popup Builder / 51.1.87
King Addons for Elementor – 100+ Elementor Widgets, 4 000+ Elementor Templates, WooCommerce Builder, Mega Menu, Popup Builder v51.1.87
51.1.87 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 All 41 releases
← All changes | includes/widgets/Woo_Checkout_Progress/Woo_Checkout_Progress.php +20 -9 51.1.44 → 51.1.87 View file →
@@ -45,9 +45,9 @@
45 45 * @return string
46 46 */
47 47 public function get_icon(): string
48 48 {
49 - return 'eicon-progress-tracker';
49 + return 'king-addons-icon king-addons-woo-checkout-progress';
50 50 }
51 51
52 52 /**
53 53 * Categories.
@@ -157,27 +157,40 @@
157 157 * @return void
158 158 */
159 159 protected function render(): void
160 160 {
161 - if (!function_exists('is_checkout') || (!is_checkout() && !is_cart()) ) {
161 + $order_received = function_exists('is_order_received_page') && is_order_received_page();
162 + $in_checkout = $this->should_render() || $order_received;
163 + $in_cart = function_exists('is_cart') && is_cart();
164 + if (!$this->can_use_builder_widgets()) {
162 165 $this->render_missing_checkout_notice();
163 166 return;
164 167 }
168 + if (!$in_checkout && !$in_cart) {
169 + $this->render_missing_checkout_notice();
170 + return;
171 + }
165 172
166 173 $settings = $this->get_settings_for_display();
167 174 $can_pro = king_addons_can_use_pro();
168 175
169 - $layout = $settings['layout'] ?? 'bar';
176 + // The value goes into a class name, so an unknown one has to fall back.
177 + $layout = (string) ($settings['layout'] ?? 'bar');
178 + if (!in_array($layout, ['bar', 'steps'], true)) {
179 + $layout = 'bar';
180 + }
170 181 if ('steps' === $layout && !$can_pro) {
171 182 $layout = 'bar';
172 183 }
173 184
174 - $current = 'cart';
175 - if (is_checkout() && !is_order_received_page()) {
176 - $current = 'payment';
185 + $current = 'details';
186 + if ($in_cart) {
187 + $current = 'cart';
177 188 }
178 - if (is_order_received_page()) {
189 + if ($order_received) {
179 190 $current = 'complete';
191 + } elseif (function_exists('is_checkout_pay_page') && is_checkout_pay_page()) {
192 + $current = 'payment';
180 193 }
181 194
182 195 $steps = [
183 196 ['key' => 'cart', 'label' => esc_html__('Cart', 'king-addons')],
@@ -229,10 +242,8 @@
229 242
230 243 echo '</div>';
231 244 }
232 245 }
233 -
234 -
235 246
236 247
237 248
238 249