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 / StandAlone / UI / AdminMenu.php
woocommerce-multilingual / classes / StandAlone / UI Last commit date
AdminMenu.php 1 week ago
AdminMenu.php
99 lines
1 <?php
2
3 namespace WCML\StandAlone\UI;
4
5 use WCML\Utilities\AdminPages;
6 use WCML\Utilities\AdminUrl;
7 use WCML_Admin_Menus;
8 use WCML_Multi_Currency_UI;
9 use WPML\Core\ISitePress;
10 use WCML\StandAlone\NullSitePress;
11 use SitePress;
12 use woocommerce_wpml;
13 use WPML\FP\Str;
14
15 class AdminMenu extends \WCML_Menu_Wrap_Base {
16
17 private $sitepress;
18
19 public function __construct( ISitePress $sitepress, $woocommerce_wpml ) {
20 parent::__construct( $woocommerce_wpml );
21
22 $this->sitepress = $sitepress;
23 }
24
25 protected function get_child_model() {
26 $current_tab = AdminPages::getTabToDisplay();
27
28 $model = [
29 'strings' => [
30 'title' => WCML_Admin_Menus::getWcmlLabel(),
31 ],
32 'is_standalone' => true,
33 'menu' => [
34 AdminUrl::TAB_MULTILINGUAL => [
35 'title' => __( 'Multilingual', 'woocommerce-multilingual' ),
36 'active' => AdminUrl::TAB_MULTILINGUAL_STANDALONE === $current_tab ? 'nav-tab-active' : '',
37 'url' => \WCML\Utilities\AdminUrl::getMultilingualTab(),
38 ],
39 'multi_currency' => [
40 'name' => __( 'Multicurrency', 'woocommerce-multilingual' ),
41 'active' => AdminUrl::TAB_MULTILINGUAL_STANDALONE !== $current_tab ? 'nav-tab-active' : '',
42 'url' => \WCML\Utilities\AdminUrl::getMultiCurrencyTab(),
43 ],
44 ],
45 'content' => $this->get_current_menu_content( $current_tab ),
46 ];
47
48 return $model;
49 }
50
51 protected function get_current_menu_content( $current_tab ) {
52 $content = '';
53 switch ( $current_tab ) {
54 case AdminUrl::TAB_MULTILINGUAL_STANDALONE:
55 $inP = Str::wrap( '<p>', '</p>' );
56 $inWrapper = Str::wrap( '<div class="wcml-banner">', '</div>' );
57
58 $wrapLink = function( $text, $url, $isExternal = true ) {
59 $attrs = $isExternal ? ' target="_blank" class="wpml-external-link" ' : '';
60 return sprintf( $text, '<a href="' . $url . '"' . $attrs . '">', '</a>' );
61 };
62
63 /* translators: %1$s and %2$s are opening and closing HTML link tags */
64 $content .= $inP( $wrapLink( esc_html__( 'To run your store in multiple languages, you need to use the %1$sWPML plugin%2$s.', 'woocommerce-multilingual' ), \WCML_Tracking_Link::getWpmlHome( true ) ) );
65
66 $content .= $inP(
67 /* translators: %1$s and %2$s are opening and closing HTML link tags */
68 $wrapLink( esc_html__( 'If you have it already, install and activate it. Otherwise, %1$sbuy WPML%2$s.', 'woocommerce-multilingual' ), \WCML_Tracking_Link::getWpmlPurchase( true ) )
69 . ' ' . esc_html__( 'You will need either the Multilingual CMS or Multilingual Agency package to use WPML with WooCommerce.', 'woocommerce-multilingual' )
70 );
71
72 $content .= $inP(
73 $wrapLink(
74 /* translators: %1$s and %2$s are opening and closing HTML link tags */
75 esc_html__( 'You can still use the %1$smulticurrency features%2$s without buying anything.', 'woocommerce-multilingual' ),
76 \WCML\Utilities\AdminUrl::getMultiCurrencyTab(),
77 false
78 )
79 );
80
81 $content = $inWrapper( $content );
82 break;
83
84 case AdminUrl::TAB_MULTICURRENCY:
85 default:
86 if ( current_user_can( 'wpml_operate_woocommerce_multilingual' ) ) {
87 $wcml_mc_ui = new WCML_Multi_Currency_UI( $this->woocommerce_wpml, $this->sitepress );
88 $content = $wcml_mc_ui->get_view();
89 }
90
91 break;
92 }
93
94 return $content;
95
96 }
97
98 }
99