ProShell v2.0
Dashboard
Server Info
Server: 158.106.128.192
PHP: 8.2.33
home
planet5
public_html
bansibaba.com
wp-includes
2026-09-13 03:23:20
Editing: admin.php
Cancel
Save Changes
<?php namespace ElementorPro\Core\Admin; use Elementor\Core\Base\App; use Elementor\Rollback; use Elementor\Settings; use Elementor\Tools; use Elementor\Utils; use ElementorPro\License\API; use ElementorPro\Plugin; if ( ! defined( 'ABSPATH' ) ) { exit; // Exit if accessed directly } class Admin extends App { /** * Get module name. * * Retrieve the module name. * * @since 2.3.0 * @access public * * @return string Module name. */ public function get_name() { return 'admin'; } /** * Enqueue admin styles. * * @since 1.0.0 * @return void */ public function enqueue_styles() { $suffix = Utils::is_script_debug() ? '' : '.min'; $direction_suffix = is_rtl() ? '-rtl' : ''; wp_register_style( 'elementor-pro-admin', ELEMENTOR_PRO_ASSETS_URL . 'css/admin' . $direction_suffix . $suffix . '.css', [], ELEMENTOR_PRO_VERSION ); wp_enqueue_style( 'elementor-pro-admin' ); } public function enqueue_scripts() { $suffix = Utils::is_script_debug() ? '' : '.min'; wp_enqueue_script( 'elementor-pro-admin', ELEMENTOR_PRO_URL . 'assets/js/admin' . $suffix . '.js', [ 'elementor-common', ], ELEMENTOR_PRO_VERSION, true ); $locale_settings = []; /** * Localize admin settings. * * Filters the admin localized settings. * * @since 1.0.0 * * @param array $locale_settings Localized settings. */ $locale_settings = apply_filters( 'elementor_pro/admin/localize_settings', $locale_settings ); Utils::print_js_config( 'elementor-pro-admin', 'ElementorProConfig', $locale_settings ); } public function remove_go_pro_menu() { remove_action( 'admin_menu', [ Plugin::elementor()->settings, 'register_pro_menu' ], Settings::MENU_PRIORITY_GO_PRO ); } private function get_rollback_versions() { $rollback_versions = get_transient( 'elementor_pro_rollback_versions_' . ELEMENTOR_PRO_VERSION ); if ( false === $rollback_versions ) { $max_versions = 30; $versions = API::get_previous_versions(); if ( is_wp_error( $versions ) ) { return []; } $rollback_versions = []; $current_index = 0; foreach ( $versions as $version ) { if ( $max_versions <= $current_index ) { break; } if ( preg_match( '/(trunk|beta|rc)/i', strtolower( $version ) ) ) { continue; } if ( version_compare( $version, ELEMENTOR_VERSION, '>=' ) ) { continue; } $current_index++; $rollback_versions[] = $version; } set_transient( 'elementor_pro_rollback_versions_' . ELEMENTOR_PRO_VERSION, $rollback_versions, WEEK_IN_SECONDS ); } return $rollback_versions; } public function register_admin_tools_fields( Tools $tools ) { $rollback_html = '<select class="elementor-rollback-select">'; foreach ( $this->get_rollback_versions() as $version ) { $rollback_html .= "<option value='{$version}'>$version</option>"; } $rollback_html .= '</select>'; // Rollback $tools->add_fields( 'versions', 'rollback', [ 'rollback_pro_separator' => [ 'field_args' => [ 'type' => 'raw_html', 'html' => '<hr>', ], ], 'rollback_pro' => [ 'label' => __( 'Rollback Pro Version', 'elementor-pro' ), 'field_args' => [ 'type' => 'raw_html', 'html' => sprintf( $rollback_html . '<a data-placeholder-text="' . __( 'Reinstall', 'elementor-pro' ) . ' v{VERSION}" href="#" data-placeholder-url="%s" class="button elementor-button-spinner elementor-rollback-button">%s</a>', wp_nonce_url( admin_url( 'admin-post.php?action=elementor_pro_rollback&version=VERSION' ), 'elementor_pro_rollback' ), __( 'Reinstall', 'elementor-pro' ) ), 'desc' => '<span style="color: red;">' . __( 'Warning: Please backup your database before making the rollback.', 'elementor-pro' ) . '</span>', ], ], ] ); } public function post_elementor_pro_rollback() { check_admin_referer( 'elementor_pro_rollback' ); $rollback_versions = $this->get_rollback_versions(); if ( empty( $_GET['version'] ) || ! in_array( $_GET['version'], $rollback_versions, true ) ) { wp_die( __( 'Error occurred, The version selected is invalid. Try selecting different version.', 'elementor-pro' ) ); } $package_url = API::get_plugin_package_url( $_GET['version'] ); if ( is_wp_error( $package_url ) ) { wp_die( $package_url ); } $plugin_slug = basename( ELEMENTOR_PRO__FILE__, '.php' ); $rollback = new Rollback( [ 'version' => $_GET['version'], 'plugin_name' => ELEMENTOR_PRO_PLUGIN_BASE, 'plugin_slug' => $plugin_slug, 'package_url' => $package_url, ] ); $rollback->run(); wp_die( '', __( 'Rollback to Previous Version', 'elementor-pro' ), [ 'response' => 200 ] ); } public function plugin_action_links( $links ) { unset( $links['go_pro'] ); return $links; } public function plugin_row_meta( $plugin_meta, $plugin_file ) { if ( ELEMENTOR_PRO_PLUGIN_BASE === $plugin_file ) { $plugin_slug = basename( ELEMENTOR_PRO__FILE__, '.php' ); $plugin_name = __( 'Elementor Pro', 'elementor-pro' ); $row_meta = [ 'view-details' => sprintf( '<a href="%s" class="thickbox open-plugin-details-modal" aria-label="%s" data-title="%s">%s</a>', esc_url( network_admin_url( 'plugin-install.php?tab=plugin-information&plugin=' . $plugin_slug . '&TB_iframe=true&width=600&height=550' ) ), /* translators: %s: Plugin name - Elementor Pro. */ esc_attr( sprintf( __( 'More information about %s', 'elementor-pro' ), $plugin_name ) ), esc_attr( $plugin_name ), __( 'View details', 'elementor-pro' ) ), 'changelog' => '<a href="https://go.elementor.com/pro-changelog/" title="' . esc_attr( __( 'View Elementor Pro Changelog', 'elementor-pro' ) ) . '" target="_blank">' . __( 'Changelog', 'elementor-pro' ) . '</a>', ]; $plugin_meta = array_merge( $plugin_meta, $row_meta ); } return $plugin_meta; } public function change_tracker_params( $params ) { unset( $params['is_first_time'] ); return $params; } public function add_finder_items( array $categories ) { $settings_url = Settings::get_url(); $categories['settings']['items']['integrations'] = [ 'title' => __( 'Integrations', 'elementor-pro' ), 'icon' => 'integration', 'url' => $settings_url . '#tab-integrations', 'keywords' => [ 'integrations', 'settings', 'typekit', 'facebook', 'recaptcha', 'mailchimp', 'drip', 'activecampaign', 'getresponse', 'convertkit', 'elementor' ], ]; return $categories; } /** * Admin constructor. */ public function __construct() { $this->add_component( 'canary-deployment', new Canary_Deployment() ); add_action( 'admin_enqueue_scripts', [ $this, 'enqueue_styles' ] ); add_action( 'admin_enqueue_scripts', [ $this, 'enqueue_scripts' ] ); add_action( 'admin_menu', [ $this, 'remove_go_pro_menu' ], 0 ); add_action( 'elementor/admin/after_create_settings/' . Tools::PAGE_ID, [ $this, 'register_admin_tools_fields' ], 50 ); add_filter( 'plugin_action_links_' . ELEMENTOR_PLUGIN_BASE, [ $this, 'plugin_action_links' ], 50 ); add_filter( 'plugin_row_meta', [ $this, 'plugin_row_meta' ], 10, 2 ); add_filter( 'elementor/finder/categories', [ $this, 'add_finder_items' ] ); add_filter( 'elementor/tracker/send_tracking_data_params', [ $this, 'change_tracker_params' ], 200 ); add_action( 'admin_post_elementor_pro_rollback', [ $this, 'post_elementor_pro_rollback' ] ); } }
Upload Files
Cancel
Upload
Create New
Cancel
Create
Change Permissions
Cancel
Save
Change Date
Cancel
Save
Rename Item
Cancel
Save
Confirm Delete
Are you sure you want to delete the selected items?
Cancel
Delete