| @@ -3,8 +3,9 @@ | ||
| 3 | 3 | namespace Elementor\Modules\EditorOne; |
| 4 | 4 | |
| 5 | 5 | use Elementor\Core\Admin\EditorOneMenu\Elementor_One_Menu_Manager; |
| 6 | 6 | use Elementor\Core\Base\Module as BaseModule; |
| 7 | +use Elementor\Core\Experiments\Manager as Experiments_Manager; | |
| 7 | 8 | use Elementor\Modules\EditorOne\Classes\Editor_One_Pointer; |
| 8 | 9 | use Elementor\Modules\EditorOne\Classes\Menu_Config; |
| 9 | 10 | use Elementor\Modules\EditorOne\Classes\Menu_Data_Provider; |
| 10 | 11 | use Elementor\Modules\EditorOne\Components\Sidebar_Navigation_Handler; |
| @@ -14,8 +15,10 @@ | ||
| 14 | 15 | exit; |
| 15 | 16 | } |
| 16 | 17 | class Module extends BaseModule { |
| 17 | 18 | |
| 19 | + const EXPERIMENT_NAME = 'e_editor_one'; | |
| 20 | + | |
| 18 | 21 | const CUSTOM_REACT_APP_PAGES = [ |
| 19 | 22 | 'elementor-element-manager', |
| 20 | 23 | ]; |
| 21 | 24 | |
| @@ -22,8 +25,24 @@ | ||
| 22 | 25 | public function get_name(): string { |
| 23 | 26 | return 'editor-one'; |
| 24 | 27 | } |
| 25 | 28 | |
| 29 | + public static function is_active(): bool { | |
| 30 | + return Menu_Config::is_elementor_home_menu_available(); | |
| 31 | + } | |
| 32 | + | |
| 33 | + public static function get_experimental_data(): array { | |
| 34 | + return [ | |
| 35 | + 'name' => static::EXPERIMENT_NAME, | |
| 36 | + 'title' => esc_html__( 'Editor one', 'elementor' ), | |
| 37 | + 'description' => esc_html__( 'General', 'elementor' ), | |
| 38 | + 'hidden' => true, | |
| 39 | + 'default' => Experiments_Manager::STATE_ACTIVE, | |
| 40 | + 'release_status' => Experiments_Manager::RELEASE_STATUS_STABLE, | |
| 41 | + 'mutable' => false, | |
| 42 | + ]; | |
| 43 | + } | |
| 44 | + | |
| 26 | 45 | public function __construct() { |
| 27 | 46 | parent::__construct(); |
| 28 | 47 | |
| 29 | 48 | if ( is_admin() ) { |
| @@ -35,9 +54,9 @@ | ||
| 35 | 54 | |
| 36 | 55 | add_action( 'current_screen', function () { |
| 37 | 56 | $menu_data_provider = Menu_Data_Provider::instance(); |
| 38 | 57 | |
| 39 | - if ( ! $menu_data_provider->is_editor_one_admin_page() ) { | |
| 58 | + if ( ! $menu_data_provider->is_editor_one_admin_page() || ! static::is_active() ) { | |
| 40 | 59 | return; |
| 41 | 60 | } |
| 42 | 61 | |
| 43 | 62 | add_action( 'admin_enqueue_scripts', function () { |
| @@ -44,10 +63,10 @@ | ||
| 44 | 63 | $this->enqueue_styles(); |
| 45 | 64 | } ); |
| 46 | 65 | } ); |
| 47 | 66 | |
| 48 | - add_filter( 'elementor/admin-top-bar/is-active', function ( $_is_active ) { | |
| 49 | - return false; | |
| 67 | + add_filter( 'elementor/admin-top-bar/is-active', function ( $is_active ) { | |
| 68 | + return static::is_active() ? false : $is_active; | |
| 50 | 69 | } ); |
| 51 | 70 | } |
| 52 | 71 | |
| 53 | 72 | /** |