* @license http://opensource.org/licenses/gpl-license.php GNU Public License * @version 2015-03-19 */ /** * The stylesheet and the initial idea is from Eric A. Meyer, http://meyerweb.com/ * and i have written a plugin with many options on the basis * of differently user-right and a user-friendly range in admin-area. * * :( grmpf i have so much wishes and hints form users, do use the plugin and * it is not possible to development this on my free time */ if ( ! function_exists( 'add_action' ) ) { echo "Hi there! I'm just a part of plugin, not much I can do when called directly."; exit; } // plugin definitions define( 'FB_ADMINIMIZE_BASENAME', plugin_basename( __FILE__ ) ); define( 'FB_ADMINIMIZE_BASEFOLDER', plugin_basename( dirname( __FILE__ ) ) ); define( 'FB_ADMINIMIZE_TEXTDOMAIN', _mw_adminimize_get_plugin_data( 'TextDomain' ) ); function _mw_adminimize_get_plugin_data( $value = 'Version' ) { if ( ! function_exists( 'get_plugin_data' ) ) { require_once( ABSPATH . '/wp-admin/includes/plugin.php' ); } $plugin_data = get_plugin_data( __FILE__ ); $plugin_value = $plugin_data[ $value ]; return $plugin_value; } function _mw_adminimize_textdomain() { load_plugin_textdomain( _mw_adminimize_get_plugin_data( 'TextDomain' ), FALSE, dirname( FB_ADMINIMIZE_BASENAME ) . _mw_adminimize_get_plugin_data( 'DomainPath' ) ); } function _mw_adminimize_recursive_in_array( $needle, $haystack ) { if ( '' != $haystack ) { foreach ( $haystack as $stalk ) { if ( $needle == $stalk || ( is_array( $stalk ) && _mw_adminimize_recursive_in_array( $needle, $stalk ) ) ) { return TRUE; } } return FALSE; } return FALSE; } /** * some basics for message */ class _mw_adminimize_message_class { /** * constructor */ function _mw_adminimize_message_class() { $this->localizion_name = FB_ADMINIMIZE_TEXTDOMAIN; $this->errors = new WP_Error(); $this->initialize_errors(); } /** * get_error - Returns an error message based on the passed code * Parameters - $code (the error code as a string) * * @param string $code * * @return string $errorMessage */ function get_error( $code = '' ) { $errorMessage = $this->errors->get_error_message( $code ); if ( NULL == $errorMessage ) { return __( 'Unknown error.', $this->localizion_name ); } return $errorMessage; } /** * Initializes all the error messages */ function initialize_errors() { $this->errors->add( '_mw_adminimize_update', __( 'The updates were saved.', $this->localizion_name ) ); $this->errors->add( '_mw_adminimize_access_denied', __( 'You have not enough rights to edit entries in the database.', $this->localizion_name ) ); $this->errors->add( '_mw_adminimize_import', __( 'All entries in the database were imported.', $this->localizion_name ) ); $this->errors->add( '_mw_adminimize_deinstall', __( 'All entries in the database were deleted.', $this->localizion_name ) ); $this->errors->add( '_mw_adminimize_deinstall_yes', __( 'Set the checkbox on deinstall-button.', $this->localizion_name ) ); $this->errors->add( '_mw_adminimize_get_option', __( 'Can\'t load menu and submenu.', $this->localizion_name ) ); $this->errors->add( '_mw_adminimize_set_theme', __( 'Backend-Theme was activated!', $this->localizion_name ) ); $this->errors->add( '_mw_adminimize_load_theme', __( 'Load user data to themes was successful.', $this->localizion_name ) ); } } // end class function _mw_adminimize_exclude_super_admin() { // exclude super admin if ( function_exists( 'is_super_admin' ) && is_super_admin() && 1 == _mw_adminimize_get_option_value( '_mw_adminimize_exclude_super_admin' ) ) { return TRUE; } return FALSE; } /** * _mw_adminimize_get_all_user_roles() - Returns an array with all user roles(names) in it. * Inclusive self defined roles (for example with the 'Role Manager' plugin). * code by Vincent Weber, www.webRtistik.nl * * @uses $wp_roles * @return array $user_roles */ function _mw_adminimize_get_all_user_roles() { global $wp_roles; $user_roles = array(); if ( isset( $wp_roles->roles ) && is_array( $wp_roles->roles ) ) { foreach ( $wp_roles->roles as $role => $data ) { array_push( $user_roles, $role ); //$data contains caps, maybe for later use.. } } // exclude the new bbPress roles $user_roles = array_diff( $user_roles, array( 'bbp_keymaster', 'bbp_moderator', 'bbp_participant', 'bbp_spectator', 'bbp_blocked' ) ); return $user_roles; } /** * _mw_adminimize_get_all_user_roles_names() - Returns an array with all user roles_names in it. * Inclusive self defined roles (for example with the 'Role Manager' plugin). * * @uses $wp_roles * @return array $user_roles_names */ function _mw_adminimize_get_all_user_roles_names() { global $wp_roles; $user_roles_names = array(); foreach ( $wp_roles->role_names as $role_name => $data ) { if ( function_exists( 'translate_user_role' ) ) { $data = translate_user_role( $data ); } else { $data = _x( $data, 'Translate each user role.' ); } array_push( $user_roles_names, $data ); } // exclude the new bbPress roles $user_roles_names = array_diff( $user_roles_names, array( __( 'Keymaster', 'bbpress' ), __( 'Moderator', 'bbpress' ), __( 'Participant', 'bbpress' ), __( 'Spectator', 'bbpress' ), __( 'Blocked', 'bbpress' ) ) ); return $user_roles_names; } /** * Control Flash Uploader * * @return boolean */ function _mw_adminimize_control_flashloader() { $_mw_adminimize_control_flashloader = _mw_adminimize_get_option_value( '_mw_adminimize_control_flashloader' ); if ( $_mw_adminimize_control_flashloader == '1' ) { return FALSE; } else { return TRUE; } } /** * return post type */ function _mw_get_current_post_type() { global $post, $typenow, $current_screen; //we have a post so we can just get the post type from that if ( $post && $post->post_type ) { return $post->post_type; } //check the global $typenow - set in admin.php else if ( $typenow ) { return $typenow; } // check the global $current_screen object - set in sceen.php else if ( $current_screen && $current_screen->post_type ) { return $current_screen->post_type; } // lastly check the post_type querystring else if ( isset( $_REQUEST[ 'post_type' ] ) ) { return sanitize_key( $_REQUEST[ 'post_type' ] ); } // we do not know the post type! return NULL; } /** * check user-option and add new style * * @uses $pagenow */ function _mw_adminimize_admin_init() { global $pagenow, $post_type, $menu, $submenu; if ( isset( $_GET[ 'post' ] ) ) { $post_id = (int) esc_attr( $_GET[ 'post' ] ); } elseif ( isset( $_POST[ 'post_ID' ] ) ) { $post_id = (int) esc_attr( $_POST[ 'post_ID' ] ); } else { $post_id = 0; } $current_post_type = $post_type; if ( ! isset( $current_post_type ) || empty( $current_post_type ) ) { $current_post_type = get_post_type( $post_id ); } if ( ! isset( $current_post_type ) || empty( $current_post_type ) ) { $current_post_type = _mw_get_current_post_type(); } if ( ! $current_post_type ) // set hard to post { $current_post_type = 'post'; } $user_roles = _mw_adminimize_get_all_user_roles(); // check for use on multisite if ( is_multisite() && is_plugin_active_for_network( MW_ADMIN_FILE ) ) { $adminimizeoptions = get_site_option( 'mw_adminimize' ); } else { $adminimizeoptions = get_option( 'mw_adminimize' ); } // pages for post type Post $def_post_pages = array( 'edit.php', 'post.php', 'post-new.php' ); $def_post_types = array( 'post' ); $disabled_metaboxes_post_all = array(); // pages for post type Page $def_page_pages = array_merge( $def_post_pages, array( 'page-new.php', 'page.php' ) ); $def_page_types = array( 'page' ); $disabled_metaboxes_page_all = array(); // pages for custom post types $def_custom_pages = $def_post_pages; $args = array( 'public' => TRUE, '_builtin' => FALSE ); $def_custom_types = get_post_types( $args ); // pages for link pages $link_pages = array( 'link.php', 'link-manager.php', 'link-add.php', 'edit-link-categories.php' ); // pages for nav menu $nav_menu_pages = array( 'nav-menus.php' ); // widget pages $widget_pages = array( 'widgets.php' ); foreach ( $user_roles as $role ) { $disabled_global_option_[ $role ] = _mw_adminimize_get_option_value( 'mw_adminimize_disabled_admin_bar_' . $role . '_items' ); $disabled_global_option_[ $role ] = _mw_adminimize_get_option_value( 'mw_adminimize_disabled_global_option_' . $role . '_items' ); $disabled_metaboxes_post_[ $role ] = _mw_adminimize_get_option_value( 'mw_adminimize_disabled_metaboxes_post_' . $role . '_items' ); $disabled_metaboxes_page_[ $role ] = _mw_adminimize_get_option_value( 'mw_adminimize_disabled_metaboxes_page_' . $role . '_items' ); foreach ( $def_custom_types as $post_type ) { $disabled_metaboxes_[ $post_type . '_' . $role ] = _mw_adminimize_get_option_value( 'mw_adminimize_disabled_metaboxes_' . $post_type . '_' . $role . '_items' ); } $disabled_link_option_[ $role ] = _mw_adminimize_get_option_value( 'mw_adminimize_disabled_link_option_' . $role . '_items' ); $disabled_nav_menu_option_[ $role ] = _mw_adminimize_get_option_value( 'mw_adminimize_disabled_nav_menu_option_' . $role . '_items' ); $disabled_widget_option_[ $role ] = _mw_adminimize_get_option_value( 'mw_adminimize_disabled_widget_option_' . $role . '_items' ); array_push( $disabled_metaboxes_post_all, $disabled_metaboxes_post_[ $role ] ); array_push( $disabled_metaboxes_page_all, $disabled_metaboxes_page_[ $role ] ); } // global options // exclude super admin if ( ! _mw_adminimize_exclude_super_admin() ) { $_mw_adminimize_footer = _mw_adminimize_get_option_value( '_mw_adminimize_footer' ); switch ( $_mw_adminimize_footer ) { case 1: wp_enqueue_script( '_mw_adminimize_remove_footer', WP_PLUGIN_URL . '/' . FB_ADMINIMIZE_BASEFOLDER . '/js/remove_footer.js', array( 'jquery' ) ); break; } $_mw_adminimize_header = _mw_adminimize_get_option_value( '_mw_adminimize_header' ); switch ( $_mw_adminimize_header ) { case 1: wp_enqueue_script( '_mw_adminimize_remove_header', WP_PLUGIN_URL . '/' . FB_ADMINIMIZE_BASEFOLDER . '/js/remove_header.js', array( 'jquery' ) ); break; } //post-page options if ( in_array( $pagenow, $def_post_pages ) ) { $_mw_adminimize_tb_window = _mw_adminimize_get_option_value( '_mw_adminimize_tb_window' ); switch ( $_mw_adminimize_tb_window ) { case 1: wp_deregister_script( 'media-upload' ); wp_enqueue_script( 'media-upload', WP_PLUGIN_URL . '/' . FB_ADMINIMIZE_BASEFOLDER . '/js/tb_window.js', array( 'thickbox' ) ); break; } $_mw_adminimize_timestamp = _mw_adminimize_get_option_value( '_mw_adminimize_timestamp' ); switch ( $_mw_adminimize_timestamp ) { case 1: wp_enqueue_script( '_mw_adminimize_timestamp', WP_PLUGIN_URL . '/' . FB_ADMINIMIZE_BASEFOLDER . '/js/timestamp.js', array( 'jquery' ) ); break; } //category options $_mw_adminimize_cat_full = _mw_adminimize_get_option_value( '_mw_adminimize_cat_full' ); switch ( $_mw_adminimize_cat_full ) { case 1: wp_enqueue_style( 'adminimize-ful-category', WP_PLUGIN_URL . '/' . FB_ADMINIMIZE_BASEFOLDER . '/css/mw_cat_full.css' ); break; } // set default editor tinymce if ( _mw_adminimize_recursive_in_array( '#editor-toolbar #edButtonHTML, #quicktags, #content-html', $disabled_metaboxes_page_all ) || _mw_adminimize_recursive_in_array( '#editor-toolbar #edButtonHTML, #quicktags, #content-html', $disabled_metaboxes_post_all ) ) { add_filter( 'wp_default_editor', create_function( '', 'return "tinymce";' ) ); } // remove media bottons if ( _mw_adminimize_recursive_in_array( 'media_buttons', $disabled_metaboxes_page_all ) || _mw_adminimize_recursive_in_array( 'media_buttons', $disabled_metaboxes_post_all ) ) { remove_action( 'media_buttons', 'media_buttons' ); } } $_mw_adminimize_control_flashloader = _mw_adminimize_get_option_value( '_mw_adminimize_control_flashloader' ); switch ( $_mw_adminimize_control_flashloader ) { case 1: add_filter( 'flash_uploader', '_mw_adminimize_control_flashloader', 1 ); break; } } // set menu option add_action( 'admin_head', '_mw_adminimize_set_menu_option', 1 ); // global_options add_action( 'admin_head', '_mw_adminimize_set_global_option', 1 ); // set metabox post option if ( in_array( $pagenow, $def_post_pages ) && in_array( $current_post_type, $def_post_types ) ) { add_action( 'admin_head', '_mw_adminimize_set_metabox_post_option', 1 ); } // set metabox page option if ( in_array( $pagenow, $def_page_pages ) && in_array( $current_post_type, $def_page_types ) ) { add_action( 'admin_head', '_mw_adminimize_set_metabox_page_option', 1 ); } // set custom post type options if ( function_exists( 'get_post_types' ) && in_array( $pagenow, $def_custom_pages ) && in_array( $current_post_type, $def_custom_types ) ) { add_action( 'admin_head', '_mw_adminimize_set_metabox_cp_option', 1 ); } // set link option if ( in_array( $pagenow, $link_pages ) ) { add_action( 'admin_head', '_mw_adminimize_set_link_option', 1 ); } // set wp nav menu options if ( in_array( $pagenow, $nav_menu_pages ) ) { add_action( 'admin_head', '_mw_adminimize_set_nav_menu_option', 1 ); } // set widget options if ( in_array( $pagenow, $widget_pages ) ) { add_action( 'admin_head', '_mw_adminimize_set_widget_option', 1 ); } $adminimizeoptions[ 'mw_adminimize_default_menu' ] = $menu; $adminimizeoptions[ 'mw_adminimize_default_submenu' ] = $submenu; } /** * Init always with WP */ function _mw_adminimize_init() { // change Admin Bar and user Info if ( version_compare( $GLOBALS[ 'wp_version' ], '3.3alpha', '>=' ) ) { _mw_adminimize_set_menu_option_33(); } else { add_action( 'admin_head', '_mw_adminimize_set_user_info' ); add_action( 'wp_head', '_mw_adminimize_set_user_info' ); } } // on admin init define( 'MW_ADMIN_FILE', plugin_basename( __FILE__ ) ); if ( is_admin() ) { add_action( 'admin_init', '_mw_adminimize_textdomain' ); add_action( 'admin_init', '_mw_adminimize_admin_init', 2 ); /* maybe later if ( is_multisite() && is_plugin_active_for_network( MW_ADMIN_FILE ) ) add_action( 'network_admin_menu', '_mw_adminimize_add_settings_page' ); */ add_action( 'admin_menu', '_mw_adminimize_add_settings_page' ); add_action( 'admin_menu', '_mw_adminimize_remove_dashboard' ); } add_action( 'init', '_mw_adminimize_init', 2 ); register_activation_hook( __FILE__, '_mw_adminimize_install' ); register_uninstall_hook( __FILE__, '_mw_adminimize_deinstall' ); //register_deactivation_hook(__FILE__, '_mw_adminimize_deinstall' ); /** * list category-box in sidebar * * @uses $post_ID */ function _mw_adminimize_sidecat_list_category_box() { global $post_ID; ?>

0, 'name' => 'newcat_parent', 'orderby' => 'name', 'hierarchical' => 1, 'show_option_none' => __( 'Parent category' ), 'tab_index' => 3 ) ); ?>


0, 'name' => 'newcat_parent', 'orderby' => 'name', 'hierarchical' => 1, 'show_option_none' => __( 'Parent category' ), 'tab_index' => 3 ) ); ?>

has_cap( $menu[ $page ][ 1 ] ) && next( $menu ) ) { $page = key( $menu ); } if ( preg_match( '#wp-admin/?(index.php)?$#', $_SERVER[ 'REQUEST_URI' ] ) ) { wp_redirect( $_mw_adminimize_db_redirect ); } } } } /** * set menu options from database */ function _mw_adminimize_set_user_info() { global $user_identity, $wp_version; // exclude super admin if ( _mw_adminimize_exclude_super_admin() ) { return NULL; } $user_roles = _mw_adminimize_get_all_user_roles(); foreach ( $user_roles as $role ) { $disabled_menu_[ $role ] = _mw_adminimize_get_option_value( 'mw_adminimize_disabled_menu_' . $role . '_items' ); $disabled_submenu_[ $role ] = _mw_adminimize_get_option_value( 'mw_adminimize_disabled_submenu_' . $role . '_items' ); } $_mw_adminimize_admin_head = "\n"; $_mw_adminimize_user_info = _mw_adminimize_get_option_value( '_mw_adminimize_user_info' ); $_mw_adminimize_ui_redirect = _mw_adminimize_get_option_value( '_mw_adminimize_ui_redirect' ); // change user-info switch ( $_mw_adminimize_user_info ) { case 1: $_mw_adminimize_admin_head .= '' . "\n"; break; case 2: if ( version_compare( $wp_version, "3.2alpha", ">=" ) ) { if ( function_exists( 'is_admin_bar_showing' ) && is_admin_bar_showing() ) { $_mw_adminimize_admin_head .= '' . "\n"; } $_mw_adminimize_admin_head .= '' . "\n"; } elseif ( version_compare( $wp_version, "3.0alpha", ">=" ) ) { if ( function_exists( 'is_admin_bar_showing' ) && is_admin_bar_showing() ) { $_mw_adminimize_admin_head .= '' . "\n"; } $_mw_adminimize_admin_head .= '' . "\n"; } elseif ( version_compare( substr( $wp_version, 0, 3 ), '2.7', '>=' ) ) { $_mw_adminimize_admin_head .= '' . "\n"; } else { $_mw_adminimize_admin_head .= '' . "\n"; } $_mw_adminimize_admin_head .= '' . "\n"; break; case 3: if ( version_compare( $wp_version, "3.2alpha", ">=" ) ) { if ( function_exists( 'is_admin_bar_showing' ) && is_admin_bar_showing() ) { $_mw_adminimize_admin_head .= '' . "\n"; } $_mw_adminimize_admin_head .= '' . "\n"; } elseif ( version_compare( $wp_version, "3.0alpha", ">=" ) ) { if ( function_exists( 'is_admin_bar_showing' ) && is_admin_bar_showing() ) { $_mw_adminimize_admin_head .= '' . "\n"; } $_mw_adminimize_admin_head .= '' . "\n"; } elseif ( version_compare( substr( $wp_version, 0, 3 ), '2.7', '>=' ) ) { $_mw_adminimize_admin_head .= '' . "\n"; } else { $_mw_adminimize_admin_head .= '' . "\n"; } $_mw_adminimize_admin_head .= '' . "\n"; break; } echo $_mw_adminimize_admin_head; } /** * Set menu for settings */ function _mw_adminimize_set_menu_option() { global $menu, $submenu, $current_screen; // exclude super admin if ( _mw_adminimize_exclude_super_admin() ) { return NULL; } if ( 'settings_page_adminimize/adminimize' === $current_screen->id ) { return NULL; } $user_roles = _mw_adminimize_get_all_user_roles(); $disabled_menu_ = ''; $disabled_submenu_ = ''; foreach ( $user_roles as $role ) { $disabled_menu_[ $role ] = _mw_adminimize_get_option_value( 'mw_adminimize_disabled_menu_' . $role . '_items' ); $disabled_submenu_[ $role ] = _mw_adminimize_get_option_value( 'mw_adminimize_disabled_submenu_' . $role . '_items' ); } $mw_adminimize_menu = ''; // set menu if ( isset( $disabled_menu_[ 'editor' ] ) && '' != $disabled_menu_[ 'editor' ] ) { // set admin-menu foreach ( $user_roles as $role ) { $user = wp_get_current_user(); if ( is_array( $user->roles ) && in_array( $role, $user->roles ) ) { if ( current_user_can( $role ) ) { $mw_adminimize_menu = $disabled_menu_[ $role ]; $mw_adminimize_submenu = $disabled_submenu_[ $role ]; } } } // fallback on users.php on all userroles smaller admin if ( is_array( $mw_adminimize_menu ) && in_array( 'users.php', $mw_adminimize_menu ) ) { $mw_adminimize_menu[ ] = 'profile.php'; } if ( isset( $menu ) && ! empty( $menu ) ) { foreach ( $menu as $index => $item ) { if ( 'index.php' === $item ) { continue; } if ( isset( $mw_adminimize_menu ) && in_array( $item[ 2 ], $mw_adminimize_menu ) ) { unset( $menu[ $index ] ); } if ( isset( $submenu ) && ! empty( $submenu[ $item[ 2 ] ] ) ) { foreach ( $submenu[ $item[ 2 ] ] as $subindex => $subitem ) { if ( isset( $mw_adminimize_submenu ) && in_array( $subitem[ 2 ], $mw_adminimize_submenu ) ) //if ( 'profile.php' === $subitem[2] ) // unset( $menu[70] ); { unset( $submenu[ $item[ 2 ] ][ $subindex ] ); } } } } } } } /** * set global options in backend in all areas */ function _mw_adminimize_set_global_option() { global $_wp_admin_css_colors; // exclude super admin if ( _mw_adminimize_exclude_super_admin() ) { return NULL; } $user_roles = _mw_adminimize_get_all_user_roles(); $_mw_adminimize_admin_head = ''; // remove_action( 'admin_head', 'index_js' ); foreach ( $user_roles as $role ) { $disabled_global_option_[ $role ] = _mw_adminimize_get_option_value( 'mw_adminimize_disabled_global_option_' . $role . '_items' ); } foreach ( $user_roles as $role ) { if ( ! isset( $disabled_global_option_[ $role ][ '0' ] ) ) { $disabled_global_option_[ $role ][ '0' ] = ''; } } $global_options = ''; // new 1.7.8 foreach ( $user_roles as $role ) { $user = wp_get_current_user(); if ( is_array( $user->roles ) && in_array( $role, $user->roles ) ) { if ( current_user_can( $role ) && isset( $disabled_global_option_[ $role ] ) && is_array( $disabled_global_option_[ $role ] ) ) { $global_options = implode( ', ', $disabled_global_option_[ $role ] ); } } } if ( isset( $global_options ) && 0 != strpos( $global_options, '#your-profile .form-table fieldset' ) ) { $_wp_admin_css_colors = 0; } $_mw_adminimize_admin_head .= '' . "\n"; $_mw_adminimize_admin_head .= '' . "\n"; if ( ! empty( $global_options ) ) { echo $_mw_adminimize_admin_head; } } /** * set metabox options from database an area post */ function _mw_adminimize_set_metabox_post_option() { // exclude super admin if ( _mw_adminimize_exclude_super_admin() ) { return NULL; } $user_roles = _mw_adminimize_get_all_user_roles(); $_mw_adminimize_admin_head = ''; $metaboxes = ''; foreach ( $user_roles as $role ) { $disabled_metaboxes_post_[ $role ] = _mw_adminimize_get_option_value( 'mw_adminimize_disabled_metaboxes_post_' . $role . '_items' ); if ( ! isset( $disabled_metaboxes_post_[ $role ][ '0' ] ) ) { $disabled_metaboxes_post_[ $role ][ '0' ] = ''; } // new 1.7.8 $user = wp_get_current_user(); if ( is_array( $user->roles ) && in_array( $role, $user->roles ) ) { if ( current_user_can( $role ) && isset( $disabled_metaboxes_post_[ $role ] ) && is_array( $disabled_metaboxes_post_[ $role ] ) ) { $metaboxes = implode( ',', $disabled_metaboxes_post_[ $role ] ); } } } $_mw_adminimize_admin_head .= '' . "\n"; if ( ! empty( $metaboxes ) ) { echo $_mw_adminimize_admin_head; } } /** * set metabox options from database an area page */ function _mw_adminimize_set_metabox_page_option() { // exclude super admin if ( _mw_adminimize_exclude_super_admin() ) { return NULL; } $user_roles = _mw_adminimize_get_all_user_roles(); $_mw_adminimize_admin_head = ''; $metaboxes = ''; foreach ( $user_roles as $role ) { $disabled_metaboxes_page_[ $role ] = _mw_adminimize_get_option_value( 'mw_adminimize_disabled_metaboxes_page_' . $role . '_items' ); if ( ! isset( $disabled_metaboxes_page_[ $role ][ '0' ] ) ) { $disabled_metaboxes_page_[ $role ][ '0' ] = ''; } // new 1.7.8 $user = wp_get_current_user(); if ( is_array( $user->roles ) && in_array( $role, $user->roles ) ) { if ( current_user_can( $role ) && isset( $disabled_metaboxes_page_[ $role ] ) && is_array( $disabled_metaboxes_page_[ $role ] ) ) { $metaboxes = implode( ',', $disabled_metaboxes_page_[ $role ] ); } } } $_mw_adminimize_admin_head .= '' . "\n"; if ( ! empty( $metaboxes ) ) { echo $_mw_adminimize_admin_head; } } /** * set metabox options from database an area post */ function _mw_adminimize_set_metabox_cp_option() { // exclude super admin if ( _mw_adminimize_exclude_super_admin() ) { return NULL; } if ( isset( $_GET[ 'post' ] ) ) { $post_id = (int) $_GET[ 'post' ]; } elseif ( isset( $_POST[ 'post_ID' ] ) ) { $post_id = (int) $_POST[ 'post_ID' ]; } else { $post_id = 0; } $current_post_type = $GLOBALS[ 'post_type' ]; if ( ! isset( $current_post_type ) ) { $current_post_type = get_post_type( $post_id ); } if ( ! isset( $current_post_type ) || ! $current_post_type ) { $current_post_type = str_replace( 'post_type=', '', esc_attr( $_SERVER[ 'QUERY_STRING' ] ) ); } // set hard to post if ( ! $current_post_type ) { $current_post_type = 'post'; } $user_roles = _mw_adminimize_get_all_user_roles(); $_mw_adminimize_admin_head = ''; $metaboxes = ''; foreach ( $user_roles as $role ) { $disabled_metaboxes_[ $current_post_type . '_' . $role ] = _mw_adminimize_get_option_value( 'mw_adminimize_disabled_metaboxes_' . $current_post_type . '_' . $role . '_items' ); if ( ! isset( $disabled_metaboxes_[ $current_post_type . '_' . $role ][ '0' ] ) ) { $disabled_metaboxes_[ $current_post_type . '_' . $role ][ '0' ] = ''; } $user = wp_get_current_user(); if ( is_array( $user->roles ) && in_array( $role, $user->roles ) ) { if ( current_user_can( $role ) && isset( $disabled_metaboxes_[ $current_post_type . '_' . $role ] ) && is_array( $disabled_metaboxes_[ $current_post_type . '_' . $role ] ) ) { $metaboxes = implode( ',', $disabled_metaboxes_[ $current_post_type . '_' . $role ] ); } } } $_mw_adminimize_admin_head .= '' . "\n"; if ( ! empty( $metaboxes ) ) { echo $_mw_adminimize_admin_head; } } /** * set link options in area Links of Backend */ function _mw_adminimize_set_link_option() { // exclude super admin if ( _mw_adminimize_exclude_super_admin() ) { return NULL; } $user_roles = _mw_adminimize_get_all_user_roles(); $_mw_adminimize_admin_head = ''; // remove_action( 'admin_head', 'index_js' ); foreach ( $user_roles as $role ) { $disabled_link_option_[ $role ] = _mw_adminimize_get_option_value( 'mw_adminimize_disabled_link_option_' . $role . '_items' ); } foreach ( $user_roles as $role ) { if ( ! isset( $disabled_link_option_[ $role ][ '0' ] ) ) { $disabled_link_option_[ $role ][ '0' ] = ''; } } $link_options = ''; // new 1.7.8 foreach ( $user_roles as $role ) { $user = wp_get_current_user(); if ( is_array( $user->roles ) && in_array( $role, $user->roles ) ) { if ( current_user_can( $role ) && isset( $disabled_link_option_[ $role ] ) && is_array( $disabled_link_option_[ $role ] ) ) { $link_options = implode( ',', $disabled_link_option_[ $role ] ); } } } $_mw_adminimize_admin_head .= '' . "\n"; if ( ! empty( $link_options ) ) { echo $_mw_adminimize_admin_head; } } /** * remove objects on wp nav menu */ function _mw_adminimize_set_nav_menu_option() { // exclude super admin if ( _mw_adminimize_exclude_super_admin() ) { return NULL; } $user_roles = _mw_adminimize_get_all_user_roles(); $_mw_adminimize_admin_head = ''; // remove_action( 'admin_head', 'index_js' ); foreach ( $user_roles as $role ) { $disabled_nav_menu_option_[ $role ] = _mw_adminimize_get_option_value( 'mw_adminimize_disabled_nav_menu_option_' . $role . '_items' ); } foreach ( $user_roles as $role ) { if ( ! isset( $disabled_nav_menu_option_[ $role ][ '0' ] ) ) { $disabled_nav_menu_option_[ $role ][ '0' ] = ''; } } $nav_menu_options = ''; // new 1.7.8 foreach ( $user_roles as $role ) { $user = wp_get_current_user(); if ( is_array( $user->roles ) && in_array( $role, $user->roles ) ) { if ( current_user_can( $role ) && isset( $disabled_nav_menu_option_[ $role ] ) && is_array( $disabled_nav_menu_option_[ $role ] ) ) { $nav_menu_options = implode( ',', $disabled_nav_menu_option_[ $role ] ); } } } //remove_meta_box( $id, 'nav-menus', 'side' ); $_mw_adminimize_admin_head .= '' . "\n"; if ( $nav_menu_options ) { echo $_mw_adminimize_admin_head; } } /** * Remove areas in Widget Settings */ function _mw_adminimize_set_widget_option() { // exclude super admin if ( _mw_adminimize_exclude_super_admin() ) { return NULL; } $user_roles = _mw_adminimize_get_all_user_roles(); $_mw_adminimize_admin_head = ''; foreach ( $user_roles as $role ) { $disabled_widget_option_[ $role ] = _mw_adminimize_get_option_value( 'mw_adminimize_disabled_widget_option_' . $role . '_items' ); } foreach ( $user_roles as $role ) { if ( ! isset( $disabled_widget_option_[ $role ][ '0' ] ) ) { $disabled_widget_option_[ $role ][ '0' ] = ''; } } $widget_options = ''; // new 1.7.8 foreach ( $user_roles as $role ) { $user = wp_get_current_user(); if ( is_array( $user->roles ) && in_array( $role, $user->roles ) ) { if ( current_user_can( $role ) && isset( $disabled_widget_option_[ $role ] ) && is_array( $disabled_widget_option_[ $role ] ) ) { $widget_options = implode( ',', $disabled_widget_option_[ $role ] ); } } } //remove_meta_box( $id, 'nav-menus', 'side' ); $_mw_adminimize_admin_head .= '' . "\n"; if ( $widget_options ) { echo $_mw_adminimize_admin_head; } } /** * small user-info */ function _mw_adminimize_small_user_info() { ?>

%s', FB_ADMINIMIZE_BASENAME, __( 'Settings' ) ) ); } return $links; } /** * settings in plugin-admin-page */ function _mw_adminimize_add_settings_page() { /* * Maybe later if ( is_multisite() && is_plugin_active_for_network( plugin_basename( __FILE__ ) ) ) { $pagehook = add_submenu_page( 'settings.php', __( 'Adminimize Network Options', FB_ADMINIMIZE_TEXTDOMAIN ), __( 'Adminimize', FB_ADMINIMIZE_TEXTDOMAIN ), 'manage_options', plugin_basename( __FILE__ ), '_mw_adminimize_options' ); } */ $pagehook = add_options_page( __( 'Adminimize Options', FB_ADMINIMIZE_TEXTDOMAIN ), __( 'Adminimize', FB_ADMINIMIZE_TEXTDOMAIN ), 'manage_options', __FILE__, '_mw_adminimize_options' ); if ( ! is_network_admin() ) { add_filter( 'plugin_action_links', '_mw_adminimize_filter_plugin_meta', 10, 2 ); } add_action( 'load-' . $pagehook, '_mw_adminimize_on_load_page' ); } function _mw_adminimize_on_load_page() { wp_register_style( 'adminimize-style', plugins_url( 'css/style.css', __FILE__ ) ); wp_enqueue_style( 'adminimize-style' ); wp_register_script( 'adminimize-settings-script', plugins_url( 'js/adminimize.js', __FILE__ ), array( 'jquery' ), '05/02/2013', TRUE ); wp_enqueue_script( 'adminimize-settings-script' ); } /** * Set theme for users * Kill with version 1.7.18 */ function _mw_adminimize_set_theme() { if ( ! current_user_can( 'edit_users' ) ) { wp_die( __( 'Cheatin’ uh?' ) ); } $user_ids = $_POST[ 'mw_adminimize_theme_items' ]; $admin_color = htmlspecialchars( stripslashes( $_POST[ '_mw_adminimize_set_theme' ] ) ); if ( ! $user_ids ) { return FALSE; } foreach ( $user_ids as $user_id ) { update_user_meta( $user_id, 'admin_color', $admin_color ); } return TRUE; } /** * read options * * @param $key * * @return null */ function _mw_adminimize_get_option_value( $key ) { // check for use on multisite if ( is_multisite() && is_plugin_active_for_network( MW_ADMIN_FILE ) ) { $adminimizeoptions = get_site_option( 'mw_adminimize' ); } else { $adminimizeoptions = get_option( 'mw_adminimize' ); } return ( isset( $adminimizeoptions[ $key ] ) ) ? ( $adminimizeoptions[ $key ] ) : NULL; } /** * Update options in database */ function _mw_adminimize_update() { $user_roles = _mw_adminimize_get_all_user_roles(); $args = array( 'public' => TRUE, '_builtin' => FALSE ); $post_types = get_post_types( $args ); $adminimizeoptions[ 'mw_adminimize_admin_bar_nodes' ] = _mw_adminimize_get_option_value( 'mw_adminimize_admin_bar_nodes' ); // admin bar options foreach ( $user_roles as $role ) { // admin abr options if ( isset( $_POST[ 'mw_adminimize_disabled_admin_bar_' . $role . '_items' ] ) ) { $adminimizeoptions[ 'mw_adminimize_disabled_admin_bar_' . $role . '_items' ] = $_POST[ 'mw_adminimize_disabled_admin_bar_' . $role . '_items' ]; } else { $adminimizeoptions[ 'mw_adminimize_disabled_admin_bar_' . $role . '_items' ] = array(); } } if ( isset( $_POST[ '_mw_adminimize_user_info' ] ) ) { $adminimizeoptions[ '_mw_adminimize_user_info' ] = strip_tags( stripslashes( $_POST[ '_mw_adminimize_user_info' ] ) ); } else { $adminimizeoptions[ '_mw_adminimize_user_info' ] = 0; } if ( isset( $_POST[ '_mw_adminimize_dashmenu' ] ) ) { $adminimizeoptions[ '_mw_adminimize_dashmenu' ] = strip_tags( stripslashes( $_POST[ '_mw_adminimize_dashmenu' ] ) ); } else { $adminimizeoptions[ '_mw_adminimize_dashmenu' ] = 0; } if ( isset( $_POST[ '_mw_adminimize_footer' ] ) ) { $adminimizeoptions[ '_mw_adminimize_footer' ] = strip_tags( stripslashes( $_POST[ '_mw_adminimize_footer' ] ) ); } else { $adminimizeoptions[ '_mw_adminimize_footer' ] = 0; } if ( isset( $_POST[ '_mw_adminimize_header' ] ) ) { $adminimizeoptions[ '_mw_adminimize_header' ] = strip_tags( stripslashes( $_POST[ '_mw_adminimize_header' ] ) ); } else { $adminimizeoptions[ '_mw_adminimize_header' ] = 0; } if ( isset( $_POST[ '_mw_adminimize_exclude_super_admin' ] ) ) { $adminimizeoptions[ '_mw_adminimize_exclude_super_admin' ] = strip_tags( stripslashes( $_POST[ '_mw_adminimize_exclude_super_admin' ] ) ); } else { $adminimizeoptions[ '_mw_adminimize_exclude_super_admin' ] = 0; } if ( isset( $_POST[ '_mw_adminimize_tb_window' ] ) ) { $adminimizeoptions[ '_mw_adminimize_tb_window' ] = strip_tags( stripslashes( $_POST[ '_mw_adminimize_tb_window' ] ) ); } else { $adminimizeoptions[ '_mw_adminimize_tb_window' ] = 0; } if ( isset( $_POST[ '_mw_adminimize_cat_full' ] ) ) { $adminimizeoptions[ '_mw_adminimize_cat_full' ] = strip_tags( stripslashes( $_POST[ '_mw_adminimize_cat_full' ] ) ); } else { $adminimizeoptions[ '_mw_adminimize_cat_full' ] = 0; } if ( isset( $_POST[ '_mw_adminimize_db_redirect' ] ) ) { $adminimizeoptions[ '_mw_adminimize_db_redirect' ] = strip_tags( stripslashes( $_POST[ '_mw_adminimize_db_redirect' ] ) ); } else { $adminimizeoptions[ '_mw_adminimize_db_redirect' ] = 0; } if ( isset( $_POST[ '_mw_adminimize_ui_redirect' ] ) ) { $adminimizeoptions[ '_mw_adminimize_ui_redirect' ] = strip_tags( stripslashes( $_POST[ '_mw_adminimize_ui_redirect' ] ) ); } else { $adminimizeoptions[ '_mw_adminimize_ui_redirect' ] = 0; } if ( isset( $_POST[ '_mw_adminimize_advice' ] ) ) { $adminimizeoptions[ '_mw_adminimize_advice' ] = strip_tags( stripslashes( $_POST[ '_mw_adminimize_advice' ] ) ); } else { $adminimizeoptions[ '_mw_adminimize_advice' ] = 0; } if ( isset( $_POST[ '_mw_adminimize_advice_txt' ] ) ) { $adminimizeoptions[ '_mw_adminimize_advice_txt' ] = stripslashes( $_POST[ '_mw_adminimize_advice_txt' ] ); } else { $adminimizeoptions[ '_mw_adminimize_advice_txt' ] = 0; } if ( isset( $_POST[ '_mw_adminimize_timestamp' ] ) ) { $adminimizeoptions[ '_mw_adminimize_timestamp' ] = strip_tags( stripslashes( $_POST[ '_mw_adminimize_timestamp' ] ) ); } else { $adminimizeoptions[ '_mw_adminimize_timestamp' ] = 0; } if ( isset( $_POST[ '_mw_adminimize_control_flashloader' ] ) ) { $adminimizeoptions[ '_mw_adminimize_control_flashloader' ] = strip_tags( stripslashes( $_POST[ '_mw_adminimize_control_flashloader' ] ) ); } else { $adminimizeoptions[ '_mw_adminimize_control_flashloader' ] = 0; } if ( isset( $_POST[ '_mw_adminimize_db_redirect_txt' ] ) ) { $adminimizeoptions[ '_mw_adminimize_db_redirect_txt' ] = stripslashes( $_POST[ '_mw_adminimize_db_redirect_txt' ] ); } else { $adminimizeoptions[ '_mw_adminimize_db_redirect_txt' ] = 0; } // menu update foreach ( $user_roles as $role ) { if ( isset( $_POST[ 'mw_adminimize_disabled_menu_' . $role . '_items' ] ) ) { $adminimizeoptions[ 'mw_adminimize_disabled_menu_' . $role . '_items' ] = $_POST[ 'mw_adminimize_disabled_menu_' . $role . '_items' ]; } else { $adminimizeoptions[ 'mw_adminimize_disabled_menu_' . $role . '_items' ] = array(); } if ( isset( $_POST[ 'mw_adminimize_disabled_submenu_' . $role . '_items' ] ) ) { $adminimizeoptions[ 'mw_adminimize_disabled_submenu_' . $role . '_items' ] = $_POST[ 'mw_adminimize_disabled_submenu_' . $role . '_items' ]; } else { $adminimizeoptions[ 'mw_adminimize_disabled_submenu_' . $role . '_items' ] = array(); } } // global_options, metaboxes update foreach ( $user_roles as $role ) { // global options if ( isset( $_POST[ 'mw_adminimize_disabled_global_option_' . $role . '_items' ] ) ) { $adminimizeoptions[ 'mw_adminimize_disabled_global_option_' . $role . '_items' ] = $_POST[ 'mw_adminimize_disabled_global_option_' . $role . '_items' ]; } else { $adminimizeoptions[ 'mw_adminimize_disabled_global_option_' . $role . '_items' ] = array(); } if ( isset( $_POST[ 'mw_adminimize_disabled_metaboxes_post_' . $role . '_items' ] ) ) { $adminimizeoptions[ 'mw_adminimize_disabled_metaboxes_post_' . $role . '_items' ] = $_POST[ 'mw_adminimize_disabled_metaboxes_post_' . $role . '_items' ]; } else { $adminimizeoptions[ 'mw_adminimize_disabled_metaboxes_post_' . $role . '_items' ] = array(); } if ( isset( $_POST[ 'mw_adminimize_disabled_metaboxes_page_' . $role . '_items' ] ) ) { $adminimizeoptions[ 'mw_adminimize_disabled_metaboxes_page_' . $role . '_items' ] = $_POST[ 'mw_adminimize_disabled_metaboxes_page_' . $role . '_items' ]; } else { $adminimizeoptions[ 'mw_adminimize_disabled_metaboxes_page_' . $role . '_items' ] = array(); } foreach ( $post_types as $post_type ) { if ( isset( $_POST[ 'mw_adminimize_disabled_metaboxes_' . $post_type . '_' . $role . '_items' ] ) ) { $adminimizeoptions[ 'mw_adminimize_disabled_metaboxes_' . $post_type . '_' . $role . '_items' ] = $_POST[ 'mw_adminimize_disabled_metaboxes_' . $post_type . '_' . $role . '_items' ]; } else { $adminimizeoptions[ 'mw_adminimize_disabled_metaboxes_' . $post_type . '_' . $role . '_items' ] = array(); } } if ( isset( $_POST[ 'mw_adminimize_disabled_link_option_' . $role . '_items' ] ) ) { $adminimizeoptions[ 'mw_adminimize_disabled_link_option_' . $role . '_items' ] = $_POST[ 'mw_adminimize_disabled_link_option_' . $role . '_items' ]; } else { $adminimizeoptions[ 'mw_adminimize_disabled_link_option_' . $role . '_items' ] = array(); } // wp nav menu options if ( isset( $_POST[ 'mw_adminimize_disabled_nav_menu_option_' . $role . '_items' ] ) ) { $adminimizeoptions[ 'mw_adminimize_disabled_nav_menu_option_' . $role . '_items' ] = $_POST[ 'mw_adminimize_disabled_nav_menu_option_' . $role . '_items' ]; } else { $adminimizeoptions[ 'mw_adminimize_disabled_nav_menu_option_' . $role . '_items' ] = array(); } // widget options if ( isset( $_POST[ 'mw_adminimize_disabled_widget_option_' . $role . '_items' ] ) ) { $adminimizeoptions[ 'mw_adminimize_disabled_widget_option_' . $role . '_items' ] = $_POST[ 'mw_adminimize_disabled_widget_option_' . $role . '_items' ]; } else { $adminimizeoptions[ 'mw_adminimize_disabled_widget_option_' . $role . '_items' ] = array(); } // wp dashboard option if ( isset( $_POST[ 'mw_adminimize_disabled_dashboard_option_' . $role . '_items' ] ) ) { $adminimizeoptions[ 'mw_adminimize_disabled_dashboard_option_' . $role . '_items' ] = $_POST[ 'mw_adminimize_disabled_dashboard_option_' . $role . '_items' ]; } else { $adminimizeoptions[ 'mw_adminimize_disabled_dashboard_option_' . $role . '_items' ] = array(); } } // own options if ( isset( $_POST[ '_mw_adminimize_own_values' ] ) ) { $adminimizeoptions[ '_mw_adminimize_own_values' ] = stripslashes( $_POST[ '_mw_adminimize_own_values' ] ); } else { $adminimizeoptions[ '_mw_adminimize_own_values' ] = 0; } if ( isset( $_POST[ '_mw_adminimize_own_options' ] ) ) { $adminimizeoptions[ '_mw_adminimize_own_options' ] = stripslashes( $_POST[ '_mw_adminimize_own_options' ] ); } else { $adminimizeoptions[ '_mw_adminimize_own_options' ] = 0; } // own post options if ( isset( $_POST[ '_mw_adminimize_own_post_values' ] ) ) { $adminimizeoptions[ '_mw_adminimize_own_post_values' ] = stripslashes( $_POST[ '_mw_adminimize_own_post_values' ] ); } else { $adminimizeoptions[ '_mw_adminimize_own_post_values' ] = 0; } if ( isset( $_POST[ '_mw_adminimize_own_post_options' ] ) ) { $adminimizeoptions[ '_mw_adminimize_own_post_options' ] = stripslashes( $_POST[ '_mw_adminimize_own_post_options' ] ); } else { $adminimizeoptions[ '_mw_adminimize_own_post_options' ] = 0; } // own page options if ( isset( $_POST[ '_mw_adminimize_own_page_values' ] ) ) { $adminimizeoptions[ '_mw_adminimize_own_page_values' ] = stripslashes( $_POST[ '_mw_adminimize_own_page_values' ] ); } else { $adminimizeoptions[ '_mw_adminimize_own_page_values' ] = 0; } if ( isset( $_POST[ '_mw_adminimize_own_page_options' ] ) ) { $adminimizeoptions[ '_mw_adminimize_own_page_options' ] = stripslashes( $_POST[ '_mw_adminimize_own_page_options' ] ); } else { $adminimizeoptions[ '_mw_adminimize_own_page_options' ] = 0; } // own custom post options foreach ( $post_types as $post_type ) { if ( isset( $_POST[ '_mw_adminimize_own_values_' . $post_type ] ) ) { $adminimizeoptions[ '_mw_adminimize_own_values_' . $post_type ] = stripslashes( $_POST[ '_mw_adminimize_own_values_' . $post_type ] ); } else { $adminimizeoptions[ '_mw_adminimize_own_values_' . $post_type ] = 0; } if ( isset( $_POST[ '_mw_adminimize_own_options_' . $post_type ] ) ) { $adminimizeoptions[ '_mw_adminimize_own_options_' . $post_type ] = stripslashes( $_POST[ '_mw_adminimize_own_options_' . $post_type ] ); } else { $adminimizeoptions[ '_mw_adminimize_own_options_' . $post_type ] = 0; } } // own link options if ( isset( $_POST[ '_mw_adminimize_own_link_values' ] ) ) { $adminimizeoptions[ '_mw_adminimize_own_link_values' ] = stripslashes( $_POST[ '_mw_adminimize_own_link_values' ] ); } else { $adminimizeoptions[ '_mw_adminimize_own_link_values' ] = 0; } if ( isset( $_POST[ '_mw_adminimize_own_link_options' ] ) ) { $adminimizeoptions[ '_mw_adminimize_own_link_options' ] = stripslashes( $_POST[ '_mw_adminimize_own_link_options' ] ); } else { $adminimizeoptions[ '_mw_adminimize_own_link_options' ] = 0; } // wp nav menu options if ( isset( $_POST[ '_mw_adminimize_own_nav_menu_values' ] ) ) { $adminimizeoptions[ '_mw_adminimize_own_nav_menu_values' ] = stripslashes( $_POST[ '_mw_adminimize_own_nav_menu_values' ] ); } else { $adminimizeoptions[ '_mw_adminimize_own_nav_menu_values' ] = 0; } if ( isset( $_POST[ '_mw_adminimize_own_nav_menu_options' ] ) ) { $adminimizeoptions[ '_mw_adminimize_own_nav_menu_options' ] = stripslashes( $_POST[ '_mw_adminimize_own_nav_menu_options' ] ); } else { $adminimizeoptions[ '_mw_adminimize_own_nav_menu_options' ] = 0; } // widget options if ( isset( $_POST[ '_mw_adminimize_own_widget_values' ] ) ) { $adminimizeoptions[ '_mw_adminimize_own_widget_values' ] = stripslashes( $_POST[ '_mw_adminimize_own_widget_values' ] ); } else { $adminimizeoptions[ '_mw_adminimize_own_widget_values' ] = 0; } if ( isset( $_POST[ '_mw_adminimize_own_widget_options' ] ) ) { $adminimizeoptions[ '_mw_adminimize_own_widget_options' ] = stripslashes( $_POST[ '_mw_adminimize_own_widget_options' ] ); } else { $adminimizeoptions[ '_mw_adminimize_own_widget_options' ] = 0; } // own dashboard options if ( isset( $_POST[ '_mw_adminimize_own_dashboard_values' ] ) ) { $adminimizeoptions[ '_mw_adminimize_own_dashboard_values' ] = stripslashes( $_POST[ '_mw_adminimize_own_dashboard_values' ] ); } else { $adminimizeoptions[ '_mw_adminimize_own_dashboard_values' ] = 0; } if ( isset( $_POST[ '_mw_adminimize_own_dashboard_options' ] ) ) { $adminimizeoptions[ '_mw_adminimize_own_dashboard_options' ] = stripslashes( $_POST[ '_mw_adminimize_own_dashboard_options' ] ); } else { $adminimizeoptions[ '_mw_adminimize_own_dashboard_options' ] = 0; } $adminimizeoptions[ 'mw_adminimize_dashboard_widgets' ] = _mw_adminimize_get_option_value( 'mw_adminimize_dashboard_widgets' ); if ( isset( $GLOBALS[ 'menu' ] ) ) { $adminimizeoptions[ 'mw_adminimize_default_menu' ] = $GLOBALS[ 'menu' ]; } if ( isset( $GLOBALS[ 'submenu' ] ) ) { $adminimizeoptions[ 'mw_adminimize_default_submenu' ] = $GLOBALS[ 'submenu' ]; } //update_option( 'mw_adminimize1', $adminimizeoptions['mw_adminimize_disabled_admin_bar_administrator_items'] ); //update_site_option( 'mw_adminimize1', $adminimizeoptions['mw_adminimize_disabled_admin_bar_administrator_items'] ); // update if ( is_multisite() && is_plugin_active_for_network( MW_ADMIN_FILE ) ) { update_site_option( 'mw_adminimize', $adminimizeoptions ); } else { update_option( 'mw_adminimize', $adminimizeoptions ); } $myErrors = new _mw_adminimize_message_class(); $myErrors = '

' . $myErrors->get_error( '_mw_adminimize_update' ) . '

'; echo $myErrors; } /** * Delete options in database */ function _mw_adminimize_deinstall() { delete_site_option( 'mw_adminimize' ); delete_option( 'mw_adminimize' ); } /** * Install options in database */ function _mw_adminimize_install() { if ( ! is_admin() ) { return NULL; } global $menu, $submenu; $user_roles = _mw_adminimize_get_all_user_roles(); $adminimizeoptions = array(); foreach ( $user_roles as $role ) { $adminimizeoptions[ 'mw_adminimize_disabled_menu_' . $role . '_items' ] = array(); $adminimizeoptions[ 'mw_adminimize_disabled_submenu_' . $role . '_items' ] = array(); $adminimizeoptions[ 'mw_adminimize_disabled_admin_bar_' . $role . '_items' ] = array(); $adminimizeoptions[ 'mw_adminimize_disabled_global_option_' . $role . '_items' ] = array(); $adminimizeoptions[ 'mw_adminimize_disabled_metaboxes_post_' . $role . '_items' ] = array(); $adminimizeoptions[ 'mw_adminimize_disabled_metaboxes_page_' . $role . '_items' ] = array(); $args = array( 'public' => TRUE, '_builtin' => FALSE ); foreach ( get_post_types( $args ) as $post_type ) { $adminimizeoptions[ 'mw_adminimize_disabled_metaboxes_' . $post_type . '_' . $role . '_items' ] = array(); } } $adminimizeoptions[ 'mw_adminimize_default_menu' ] = $menu; $adminimizeoptions[ 'mw_adminimize_default_submenu' ] = $submenu; if ( is_multisite() && is_plugin_active_for_network( MW_ADMIN_FILE ) ) { add_site_option( 'mw_adminimize', $adminimizeoptions ); } else { add_option( 'mw_adminimize', $adminimizeoptions ); } } /** * export options in file */ function _mw_adminimize_export() { global $wpdb; $filename = 'adminimize_export-' . date( 'Y-m-d_G-i-s' ) . '.seq'; header( "Content-Description: File Transfer" ); header( "Content-Disposition: attachment; filename=" . urlencode( $filename ) ); header( "Content-Type: application/force-download" ); header( "Content-Type: application/octet-stream" ); header( "Content-Type: application/download" ); header( 'Content-Type: text/seq; charset=' . get_option( 'blog_charset' ), TRUE ); flush(); $export_data = mysql_query( "SELECT option_value FROM $wpdb->options WHERE option_name = 'mw_adminimize'" ); $export_data = mysql_result( $export_data, 0 ); echo $export_data; flush(); } /** * import options in table _options */ function _mw_adminimize_import() { // check file extension $str_file_name = $_FILES[ 'datei' ][ 'name' ]; $str_file_ext = explode( ".", $str_file_name ); if ( $str_file_ext[ 1 ] != 'seq' ) { wp_die( 'No exist.' ); } elseif ( file_exists( $_FILES[ 'datei' ][ 'name' ] ) ) { wp_die( 'Exist.' ); } else { // path for file $str_ziel = WP_CONTENT_DIR . '/' . $_FILES[ 'datei' ][ 'name' ]; // transfer move_uploaded_file( $_FILES[ 'datei' ][ 'tmp_name' ], $str_ziel ); // access authorization chmod( $str_ziel, 0644 ); // SQL import ini_set( 'default_socket_timeout', 120 ); $import_file = file_get_contents( $str_ziel ); _mw_adminimize_deinstall(); $import_file = unserialize( $import_file ); if ( file_exists( $str_ziel ) ) { unlink( $str_ziel ); } if ( is_multisite() && is_plugin_active_for_network( MW_ADMIN_FILE ) ) { update_site_option( 'mw_adminimize', $import_file ); } else { update_option( 'mw_adminimize', $import_file ); } if ( file_exists( $str_ziel ) ) { unlink( $str_ziel ); } } $myErrors = new _mw_adminimize_message_class(); $myErrors = '

' . $myErrors->get_error( '_mw_adminimize_import' ) . '

'; echo $myErrors; }