PluginProbe
Elementor Website Builder – more than just a page builder / 3.10.0-dev1
Elementor Website Builder – more than just a page builder v3.10.0-dev1
4.3.0-beta2 4.3.0-beta1 4.2.4 4.2.3 4.2.2 4.2.1 4.2.0 4.1.5 4.2.0-beta2 4.2.0-dev2 4.2.0-beta1 4.1.4 4.1.3 4.1.2 4.1.1 4.1.0 4.1.0-beta3 4.1.0-dev3 4.0.9 4.1.0-beta2 4.1.0-dev2 4.0.8 4.1.0-beta1 4.1.0-dev1 4.0.7 All 451 releases
← All changes | modules/system-info/module.php +24 -57 4.3.0-beta23.10.0-dev1 View file →
@@ -1,14 +1,11 @@
1 1 <?php
2 2 namespace Elementor\Modules\System_Info;
3 3
4 +use Elementor\Core\Admin\Menu\Admin_Menu_Manager;
4 5 use Elementor\Core\Base\Module as BaseModule;
5 -use Elementor\Modules\EditorOne\Classes\Menu_Data_Provider;
6 -use Elementor\Modules\System_Info\AdminMenuItems\Editor_One_System_Info_Menu;
7 -use Elementor\Modules\System_Info\AdminMenuItems\Editor_One_System_Menu;
6 +use Elementor\Modules\System_Info\Reporters\Base;
8 7 use Elementor\Modules\System_Info\Helpers\Model_Helper;
9 -use Elementor\Modules\System_Info\Reporters\Base;
10 -use Elementor\Modules\System_Info\Rest\Rest_Api;
11 8 use Elementor\Plugin;
12 9 use Elementor\Settings;
13 10
14 11 if ( ! defined( 'ABSPATH' ) ) {
@@ -120,56 +117,31 @@
120 117 * @since 2.9.0
121 118 * @access private
122 119 */
123 120 private function add_actions() {
124 - add_action( 'elementor/editor-one/menu/register', function ( Menu_Data_Provider $menu_data_provider ) {
125 - $this->register_editor_one_menu( $menu_data_provider );
126 - } );
121 + if ( ! Plugin::$instance->experiments->is_feature_active( 'admin_menu_rearrangement' ) ) {
122 + add_action( 'elementor/admin/menu/register', function ( Admin_Menu_Manager $admin_menu_manager ) {
123 + $this->register_menu( $admin_menu_manager );
124 + }, Settings::ADMIN_MENU_PRIORITY + 30 );
125 + }
127 126
128 127 add_action( 'wp_ajax_elementor_system_info_download_file', [ $this, 'download_file' ] );
129 - add_action( 'rest_api_init', [ $this, 'register_rest_routes' ] );
130 128 }
131 129
132 - public function register_rest_routes(): void {
133 - ( new Rest_Api() )->register_routes();
130 + /**
131 + * Register admin menu.
132 + *
133 + * Add new Elementor system info admin menu.
134 + *
135 + * Fired by `admin_menu` action.
136 + *
137 + * @since 2.9.0
138 + * @access private
139 + */
140 + private function register_menu( Admin_Menu_Manager $admin_menu ) {
141 + $admin_menu->register( 'elementor-system-info', new System_Info_Menu_Item( $this ) );
134 142 }
135 143
136 - public function get_reports_data(): array {
137 - $reports = $this->load_reports( self::get_allowed_reports() );
138 -
139 - return $this->build_reports_data( $reports );
140 - }
141 -
142 - private function build_reports_data( array $reports ): array {
143 - $data = [];
144 -
145 - foreach ( $reports as $report_name => $report_details ) {
146 - $report = $report_details['report']->get_report();
147 -
148 - if ( is_wp_error( $report ) ) {
149 - continue;
150 - }
151 -
152 - $report_data = [
153 - 'label' => $report_details['label'],
154 - 'report' => $report,
155 - ];
156 -
157 - if ( ! empty( $report_details['sub'] ) ) {
158 - $report_data['sub'] = $this->build_reports_data( $report_details['sub'] );
159 - }
160 -
161 - $data[ $report_name ] = $report_data;
162 - }
163 -
164 - return $data;
165 - }
166 -
167 - private function register_editor_one_menu( Menu_Data_Provider $menu_data_provider ) {
168 - $menu_data_provider->register_menu( new Editor_One_System_Menu() );
169 - $menu_data_provider->register_menu( new Editor_One_System_Info_Menu() );
170 - }
171 -
172 144 /**
173 145 * Display page.
174 146 *
175 147 * Output the content for the main system info page.
@@ -182,15 +154,9 @@
182 154
183 155 $reports = $this->load_reports( $reports_info );
184 156 ?>
185 157 <div id="elementor-system-info">
186 - <div class="elementor-system-info-header">
187 - <h3 class="wp-heading-inline"><?php echo esc_html__( 'System Info', 'elementor' ); ?></h3>
188 - <form action="<?php echo esc_url( admin_url( 'admin-ajax.php' ) ); ?>" method="post">
189 - <input type="hidden" name="action" value="elementor_system_info_download_file">
190 - <input type="submit" data-id="elementor-system-info-download-file" class="button button-primary" value="<?php echo esc_attr__( 'Download System Info', 'elementor' ); ?>">
191 - </form>
192 - </div>
158 + <h3 class="wp-heading-inline"><?php echo esc_html__( 'System Info', 'elementor' ); ?></h3>
193 159 <div><?php $this->print_report( $reports, 'html' ); ?></div>
194 160 <h3><?php echo esc_html__( 'Copy & Paste Info', 'elementor' ); ?></h3>
195 161 <div id="elementor-system-info-raw">
196 162 <label id="elementor-system-info-raw-code-label" for="elementor-system-info-raw-code"><?php echo esc_html__( 'You can copy the below info as simple text with Ctrl+C / Ctrl+V:', 'elementor' ); ?></label>
@@ -210,9 +176,9 @@
210 176 </div>
211 177 <hr>
212 178 <form action="<?php echo esc_url( admin_url( 'admin-ajax.php' ) ); ?>" method="post">
213 179 <input type="hidden" name="action" value="elementor_system_info_download_file">
214 - <input type="submit" data-id="elementor-system-info-download-file" class="button button-primary" value="<?php echo esc_attr__( 'Download System Info', 'elementor' ); ?>">
180 + <input type="submit" class="button button-primary" value="<?php echo esc_html__( 'Download System Info', 'elementor' ); ?>">
215 181 </form>
216 182 </div>
217 183 <?php
218 184 }
@@ -228,9 +194,9 @@
228 194 * @access public
229 195 */
230 196 public function download_file() {
231 197 if ( ! current_user_can( $this->capability ) ) {
232 - wp_die( esc_html__( 'You do not have permission to download this file.', 'elementor' ) );
198 + wp_die( esc_html__( 'You don\'t have permissions to download this file', 'elementor' ) );
233 199 }
234 200
235 201 $reports_info = self::get_allowed_reports();
236 202 $reports = $this->load_reports( $reports_info );
@@ -310,10 +276,11 @@
310 276 * @param array $properties Report properties.
311 277 *
312 278 * @return \WP_Error|false|Base Base instance if the report was created,
313 279 * False or WP_Error otherwise.
314 - * @since 2.9.0
280 + *@since 2.9.0
315 281 * @access public
282 + *
316 283 */
317 284 public function create_reporter( array $properties ) {
318 285 $properties = Model_Helper::prepare_properties( $this->get_settings( 'reporter_properties' ), $properties );
319 286