PluginProbe ʕ •ᴥ•ʔ
WPML Multilingual & Multicurrency for WooCommerce / 5.5.7
WPML Multilingual & Multicurrency for WooCommerce v5.5.7
5.5.7 5.3.8 5.3.9 5.4.3 5.4.4 5.4.5 5.5.1 5.5.1.1 5.5.2.2 5.5.2.3 5.5.3 5.5.3.1 5.5.4 5.5.5 5.5.6 trunk 0.9 1.0 1.1 1.2 1.3 1.4 1.5 2.0 2.2 2.3 2.3.1 2.3.2 3.0 3.0.1 3.1 3.2 3.2.1 3.2.2 3.3 3.3.1 3.3.2 3.3.3 3.3.4 3.4 3.4.1 3.4.2 3.4.3 3.5 3.5.1 3.5.2 3.5.3 3.5.4 3.5.5 3.6 3.6.1 3.6.10 3.6.11 3.6.2 3.6.3 3.6.4 3.6.5 3.6.5.1 3.6.6 3.6.7 3.6.8 3.6.9 3.7 3.7.1 3.7.10 3.7.11 3.7.12 3.7.13 3.7.14 3.7.15 3.7.16 3.7.2 3.7.3 3.7.4 3.7.5 3.7.6 3.7.7 3.7.8 3.7.9 3.8.0 3.8.1 3.8.2 3.8.3 3.8.4 3.8.5 3.8.6 3.9.0 3.9.1 3.9.1.1 3.9.2 3.9.3 3.9.4 3.9.5 4.0.0 4.0.1 4.0.2 4.0.3 4.0.4 4.1.0 4.1.1 4.1.2 4.1.3 4.1.4 4.10.0 4.10.1 4.10.2 4.10.3 4.10.4 4.11.2 4.11.3.2 4.11.5 4.11.6 4.12.1 4.12.4 4.12.5 4.12.6 4.2.0 4.2.0.1 4.2.1 4.2.1.1 4.2.10 4.2.2 4.2.3 4.2.4 4.2.5 4.2.6 4.2.7 4.2.7.1 4.2.8 4.2.8.1 4.2.9 4.3.0 4.3.1 4.3.2 4.3.2.1 4.3.3 4.3.4 4.3.5 4.3.6 4.3.7 4.4.0 4.4.1 4.4.2 4.4.2.1 4.5.0 4.6.0 4.6.1 4.6.2 4.6.2.1 4.6.3 4.6.5 4.6.6 4.6.7 4.7.0 4.7.1 4.7.2 4.7.3 4.7.4 4.7.5 4.7.6 4.7.7 4.7.8 4.7.9 4.8.0 4.9.0 4.9.1 5.0.1 5.0.2 5.1.1 5.1.2 5.1.3 5.2.0 5.2.1 5.3.2 5.3.3.1 5.3.4 5.3.5 5.3.6 5.3.7
woocommerce-multilingual / classes / wcml-setup / class-wcml-setup-ui.php
woocommerce-multilingual / classes / wcml-setup Last commit date
BeforeHooks.php 2 weeks ago class-wcml-setup-handlers.php 2 weeks ago class-wcml-setup-ui.php 2 weeks ago class-wcml-setup.php 2 weeks ago
class-wcml-setup-ui.php
88 lines
1 <?php
2
3 class WCML_Setup_UI {
4
5 const SLUG = 'wcml-setup';
6
7 public function add_hooks() {
8 if ( current_user_can( 'manage_options' ) && $this->is_wcml_setup_page() ) {
9 add_action( 'admin_menu', [ $this, 'admin_menus' ] );
10 }
11 }
12
13 public function add_wizard_notice_hook() {
14
15 if ( $this->must_display_the_wizard() ) {
16 add_filter( 'admin_notices', [ $this, 'wizard_notice' ] );
17 }
18 }
19
20 private function must_display_the_wizard() {
21 global $pagenow;
22
23 $allowed_pages = [ 'index.php', 'plugins.php' ];
24
25 return in_array( $pagenow, $allowed_pages, true );
26 }
27
28
29 private function is_wcml_setup_page() {
30 return isset( $_GET['page'] ) && $_GET['page'] === self::SLUG;
31 }
32
33 public function admin_menus() {
34 add_dashboard_page( '', '', 'manage_options', self::SLUG, '' );
35 }
36
37 public function setup_header( $steps, $step ) {
38 set_current_screen( self::SLUG );
39 $header = new WCML_Setup_Header_UI( $steps, $step );
40 echo $header->get_view();
41 }
42
43 public function setup_steps( array $steps, $current_step ) {
44 $step_keys = array_keys( $steps );
45 array_shift( $steps );
46 $i = 1;
47 ?>
48 <ol class="wcml-setup-steps">
49 <?php foreach ( $steps as $step_key => $step ) : ?>
50 <?php if ( $step['name'] ) : ?>
51 <li class="
52 <?php
53 $step_status = $i;
54 if ( $step_key === $current_step ) {
55 echo 'active';
56 } elseif ( array_search( $current_step, $step_keys ) > array_search( $step_key, $step_keys ) ) {
57 echo 'done';
58 $step_status = '<i class="otgs-ico otgs-ico-ok"></i>';
59 }
60 ?>
61 "><span><?php echo $step_status; ?></span><?php echo esc_html( $step['name'] ); ?></li>
62 <?php $i++; ?>
63 <?php endif; ?>
64 <?php endforeach; ?>
65 </ol>
66 <?php
67 }
68
69 public function setup_content( $view ) {
70
71 echo '<div class="wcml-setup-content">';
72 echo $view->get_view();
73 echo '</div>';
74
75 }
76
77 public function setup_footer( $has_handler = false ) {
78 $footer = new WCML_Setup_Footer_UI( $has_handler );
79 echo $footer->get_view();
80 }
81
82 public function wizard_notice() {
83 wp_enqueue_style( 'wcml-setup-wizard-notice', WCML_PLUGIN_URL . '/res/css/wcml-setup-wizard-notice.css' );
84 $notice = new WCML_Setup_Notice_UI();
85 echo $notice->get_view();
86 }
87 }
88