PluginProbe ʕ •ᴥ•ʔ
SureCart – Ecommerce Made Easy For Selling Physical Products, Digital Downloads, Subscriptions, Donations, & Payments / 4.6.3
SureCart – Ecommerce Made Easy For Selling Physical Products, Digital Downloads, Subscriptions, Donations, & Payments v4.6.3
4.6.6 4.6.5 4.6.4 4.6.3 4.6.2 4.6.1 4.6.0 4.5.1 4.5.0 4.4.2 4.4.1 4.4.0 4.3.3 4.3.2 4.3.1 4.3.0 4.2.3 4.2.2 4.2.1 1.0.3 1.0.4 1.0.5 1.0.6 1.1.0 1.1.1 1.1.10 1.1.11 1.1.12 1.1.13 1.1.14 1.1.15 1.1.16 1.1.17 1.1.18 1.1.19 1.1.2 1.1.3 1.1.4 1.1.5 1.1.6 1.1.7 1.1.8 1.1.9 1.10.0 1.10.1 1.10.2 1.10.3 1.10.4 1.11.0 1.11.1 1.11.2 1.2.0 1.2.1 1.2.2 1.2.3 1.2.4 1.2.5 1.3.0 1.3.1 1.3.2 1.3.3 1.3.4 1.4.0 1.4.1 1.4.2 1.5.0 1.5.1 1.5.2 1.5.3 1.5.4 1.5.5 1.5.6 1.5.7 1.5.8 1.6.0 1.6.1 1.6.2 1.6.3 1.6.4 1.7.0 1.7.1 1.7.2 1.8.0 1.8.1 1.8.2 1.8.3 1.8.4 1.8.5 1.9.0 1.9.1 1.9.2 1.9.3 1.9.4 1.9.5 2.0.0 2.0.1 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.10.0 2.10.1 2.11.0 2.11.1 2.11.2 2.11.3 2.11.4 2.12.0 2.13.0 2.14.0 2.14.1 2.15.0 2.15.1 2.16.0 2.16.1 2.16.2 2.16.3 2.17.0 2.17.1 2.17.2 2.18.0 2.19.0 2.19.2 2.19.3 2.19.4 2.2.0 2.2.1 2.20.0 2.20.1 2.20.2 2.20.3 2.20.4 2.20.5 2.20.6 2.21.0 2.22.0 2.22.1 2.23.0 2.24.0 2.25.0 2.25.1 2.25.2 2.26.0 2.27.0 2.27.1 2.28.0 2.29.0 2.29.1 2.29.2 2.29.3 2.29.4 2.3.0 2.3.1 2.30.0 2.31.0 2.31.1 2.31.2 2.31.3 2.4.0 2.4.1 2.4.2 2.4.3 2.4.4 2.40.0 2.40.1 2.5.0 2.5.1 2.5.2 2.6.0 2.6.1 2.6.2 2.7.0 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.8.0 2.8.1 2.8.2 2.8.3 2.8.4 2.9.0 3.0.0 3.0.0-RC1 3.0.0-RC2 3.0.0-beta1 3.0.0-beta2 3.0.1 3.0.2 3.0.3 3.0.4 3.0.5 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.10.0 3.10.1 3.11.0 3.12.0 3.13.0 3.13.1 3.13.2 3.13.3 3.13.4 3.14.0 3.15.0 3.15.1 3.15.2 3.15.3 3.15.4 3.15.5 3.16.0 3.16.1 3.16.2 3.16.3 3.16.4 3.16.5 3.16.6 3.16.7 3.16.8 3.17.0 3.17.1 3.17.2 3.17.3 3.17.4 3.17.5 3.17.6 3.18.0 3.19.0 3.19.1 3.19.2 3.2.0 3.2.1 3.2.2 3.20.0 3.20.1 3.3.0 3.3.1 3.4.0 3.4.1 3.4.2 3.4.3 3.5.0 3.5.1 3.5.2 3.5.3 3.6.0 3.6.1 3.6.2 3.7.0 3.7.1 3.7.2 3.7.3 3.8.0 3.8.1 3.8.2 3.8.3 3.8.4 3.8.5 3.9.0 4.0.0 4.0.1 4.0.2 4.0.3 trunk 4.1.0 0.2.19.1 4.1.1 1.0.0 4.2.0 1.0.1 1.0.2
surecart / views / layouts / partials / enhanced-views-promo.php
surecart / views / layouts / partials Last commit date
customer-dashboard 2 years ago admin-header.php 1 month ago admin-index-header.php 2 years ago admin-index-styles.php 1 year ago admin-product-list-styles.php 1 month ago admin-settings-header.php 11 months ago admin-settings-notices.php 4 years ago admin-settings-styles.php 3 months ago enhanced-views-promo.php 1 month ago store-logo.php 2 years ago
enhanced-views-promo.php
94 lines
1 <?php
2 if ( ! current_user_can( 'manage_options' ) ) {
3 return;
4 }
5
6 $is_enhanced = (bool) get_option( 'surecart_enhanced_admin_views', true );
7 $target_value = $is_enhanced ? '0' : '1';
8 $toggle_id = 'sc-enhanced-views-toggle';
9 $aria_label = $is_enhanced
10 ? __( 'Switch to classic view', 'surecart' )
11 : __( 'Switch to modern view', 'surecart' );
12 ?>
13
14 <form
15 method="post"
16 action="<?php echo esc_url( admin_url( 'admin-post.php' ) ); ?>"
17 class="sc-enhanced-views-promo<?php echo $is_enhanced ? ' is-enhanced' : ''; ?>"
18 >
19 <?php wp_nonce_field( 'sc_set_enhanced_admin_views' ); ?>
20 <input type="hidden" name="action" value="sc_set_enhanced_admin_views" />
21 <input type="hidden" name="value" value="<?php echo esc_attr( $target_value ); ?>" />
22 <input
23 type="hidden"
24 name="redirect_to"
25 value="<?php echo esc_url( $return_url ?? admin_url() ); ?>"
26 />
27
28 <sc-tooltip
29 class="sc-enhanced-views-promo__tooltip"
30 text="<?php echo esc_attr( $aria_label ); ?>"
31 placement="bottom"
32 type="dark"
33 >
34 <button
35 id="<?php echo esc_attr( $toggle_id ); ?>"
36 class="sc-enhanced-views-promo__toggle"
37 type="submit"
38 aria-label="<?php echo esc_attr( $aria_label ); ?>"
39 aria-pressed="<?php echo $is_enhanced ? 'true' : 'false'; ?>"
40 >
41 <svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false">
42 <path d="M15.5 9.2L14.8 8.5L16.8 6.5H14V5.5H16.8L14.8 3.5L15.5 2.8L17.5 4.8V2H18.5V4.8L20.5 2.8L21.2 3.5L19.2 5.5H22V6.5H19.2L21.2 8.5L20.5 9.2L18.5 7.2V10H17.5V7.2L15.5 9.2Z" fill="currentColor" />
43 <path d="M13 3V4.5H5C4.7 4.5 4.5 4.7 4.5 5V8.5H13V13.5H19.5V11H21V19C21 20.1 20.1 21 19 21H5C3.9 21 3 20.1 3 19V5C3 3.9 3.9 3 5 3H13ZM4.5 15V19C4.5 19.3 4.7 19.5 5 19.5H11.5V15H4.5ZM13 15V19.5H19C19.3 19.5 19.5 19.3 19.5 19V15H13ZM4.5 10V13.5H11.5V10H4.5Z" fill="currentColor" />
44 </svg>
45 </button>
46 </sc-tooltip>
47 </form>
48
49 <style>
50 .sc-enhanced-views-promo { margin: 0; }
51 .sc-enhanced-views-promo.is-busy { opacity: 0.6; pointer-events: none; }
52 .sc-enhanced-views-promo__tooltip {
53 display: inline-flex;
54 }
55 /* Default icon color stays neutral (#111827) regardless of which view
56 mode is active — the toggle is a switch, not a status indicator.
57 Only hover / focus / active interactions promote it to the primary
58 blue so users can tell it's interactive. */
59 .sc-enhanced-views-promo__toggle {
60 display: inline-flex;
61 align-items: center;
62 justify-content: center;
63 width: 32px;
64 height: 32px;
65 padding: 0;
66 background: transparent;
67 border: none;
68 border-radius: 6px;
69 color: #111827;
70 cursor: pointer;
71 transition: background-color 0.15s ease, color 0.15s ease, box-shadow 0.15s ease;
72 }
73 .sc-enhanced-views-promo__toggle:hover,
74 .sc-enhanced-views-promo__toggle:focus-visible,
75 .sc-enhanced-views-promo__toggle:active {
76 color: #3858e9;
77 background: rgba(56, 88, 233, 0.08);
78 outline: none;
79 }
80 .sc-enhanced-views-promo__toggle:focus-visible {
81 box-shadow: 0 0 0 2px rgba(56, 88, 233, 0.4);
82 }
83 /* Attention pulse — added by React when the modal closes so the user's
84 eye is drawn to the toggle. The class is removed on animationend. */
85 @keyframes sc-toggle-attract {
86 0% { transform: scale(1); box-shadow: 0 0 0 0 rgba(56, 88, 233, 0.45); }
87 40% { transform: scale(1.18); box-shadow: 0 0 0 8px rgba(56, 88, 233, 0.18); }
88 100% { transform: scale(1); box-shadow: 0 0 0 0 rgba(56, 88, 233, 0); }
89 }
90 .sc-enhanced-views-promo__toggle.is-attract {
91 animation: sc-toggle-attract 0.7s ease-out;
92 }
93 </style>
94