private function saveSettings()
 {
     //Save per site or site-wide based on plugin configuration.
     $settings = json_encode($this->settings);
     if ($this->menuEditor->get_plugin_option('menu_config_scope') === 'site') {
         update_option(self::OPTION_NAME, $settings);
     } else {
         WPMenuEditor::atomic_update_site_option(self::OPTION_NAME, $settings);
     }
 }
 public function registerScripts()
 {
     $isProVersion = apply_filters('admin_menu_editor_is_pro', false);
     $dependencies = array('ame-actor-manager', 'ame-lodash', 'jquery');
     if ($isProVersion || wp_script_is('ame-visible-users', 'registered')) {
         $dependencies[] = 'ame-visible-users';
     }
     wp_register_auto_versioned_script('ame-actor-selector', plugins_url('modules/actor-selector/actor-selector.js', $this->menuEditor->plugin_file), $dependencies);
     $currentUser = wp_get_current_user();
     wp_localize_script('ame-actor-selector', 'wsAmeActorSelectorData', array('visibleUsers' => $this->menuEditor->get_plugin_option('visible_users'), 'currentUserLogin' => $currentUser->get('user_login'), 'isProVersion' => apply_filters('admin_menu_editor_is_pro', false), 'ajaxUpdateAction' => self::ajaxUpdateAction, 'ajaxUpdateNonce' => wp_create_nonce(self::ajaxUpdateAction), 'adminAjaxUrl' => admin_url('admin-ajax.php')));
 }
Esempio n. 3
0
 /**
  * Remove Admin Menu Editor Pro from the list of plugins unless the current user
  * is explicitly allowed to see it.
  *
  * @param array $plugins List of installed plugins.
  * @return array Filtered list of plugins.
  */
 public function filter_plugin_list($plugins)
 {
     $allowed_user_id = $this->wp_menu_editor->get_plugin_option('plugins_page_allowed_user_id');
     if (get_current_user_id() != $allowed_user_id) {
         unset($plugins[$this->wp_menu_editor->plugin_basename]);
     }
     return $plugins;
 }