| @@ -11,9 +11,9 @@ | ||
| 11 | 11 | Domain Path: /languages |
| 12 | 12 | Description: Visually compresses the administratrive meta-boxes so that more admin page content can be initially seen. The plugin that lets you hide 'unnecessary' items from the WordPress administration menu, for alle roles of your install. You can also hide post meta controls on the edit-area to simplify the interface. It is possible to simplify the admin in different for all roles. |
| 13 | 13 | Author: Frank Bültge |
| 14 | 14 | Author URI: http://bueltge.de/ |
| 15 | -Version: 1.7.14 | |
| 15 | +Version: 1.7.17 | |
| 16 | 16 | License: GPL |
| 17 | 17 | */ |
| 18 | 18 | |
| 19 | 19 | /** |
| @@ -120,8 +120,20 @@ | ||
| 120 | 120 | } |
| 121 | 121 | } |
| 122 | 122 | |
| 123 | 123 | |
| 124 | +function _mw_adminimize_exclude_super_admin() { | |
| 125 | + // exclude super admin | |
| 126 | + if ( function_exists('is_super_admin') | |
| 127 | + && is_super_admin() | |
| 128 | + && 1 == _mw_adminimize_getOptionValue('_mw_adminimize_exclude_super_admin') | |
| 129 | + ) | |
| 130 | + return TRUE; | |
| 131 | + | |
| 132 | + return FALSE; | |
| 133 | +} | |
| 134 | + | |
| 135 | + | |
| 124 | 136 | /** |
| 125 | 137 | * get_all_user_roles() - Returns an array with all user roles(names) in it. |
| 126 | 138 | * Inclusive self defined roles (for example with the 'Role Manager' plugin). |
| 127 | 139 | * code by Vincent Weber, www.webRtistik.nl |
| @@ -187,17 +199,11 @@ | ||
| 187 | 199 | /** |
| 188 | 200 | * check user-option and add new style |
| 189 | 201 | * @uses $pagenow |
| 190 | 202 | */ |
| 191 | -function _mw_adminimize_init() { | |
| 203 | +function _mw_adminimize_admin_init() { | |
| 192 | 204 | global $pagenow, $menu, $submenu, $adminimizeoptions, $wp_version; |
| 193 | 205 | |
| 194 | - // exclude super admin | |
| 195 | - if ( defined('WP_DEBUG') && !WP_DEBUG ) { | |
| 196 | - if ( is_super_admin() ) | |
| 197 | - return NULL; | |
| 198 | - } | |
| 199 | - | |
| 200 | 206 | if ( function_exists('get_post_type_object') ) { |
| 201 | 207 | if ( isset($_GET['post']) ) |
| 202 | 208 | $post_id = (int) $_GET['post']; |
| 203 | 209 | elseif ( isset($_POST['post_ID']) ) |
| @@ -230,9 +236,9 @@ | ||
| 230 | 236 | $post_type = ''; |
| 231 | 237 | } |
| 232 | 238 | |
| 233 | 239 | $user_roles = get_all_user_roles(); |
| 234 | - | |
| 240 | + | |
| 235 | 241 | $adminimizeoptions = get_option('mw_adminimize'); |
| 236 | 242 | |
| 237 | 243 | foreach ($user_roles as $role) { |
| 238 | 244 | $disabled_global_option_[$role] = _mw_adminimize_getOptionValue('mw_adminimize_disabled_global_option_'. $role .'_items'); |
| @@ -252,74 +258,77 @@ | ||
| 252 | 258 | |
| 253 | 259 | $_mw_admin_color = get_user_option('admin_color'); |
| 254 | 260 | |
| 255 | 261 | //global options |
| 256 | - $_mw_adminimize_footer = _mw_adminimize_getOptionValue('_mw_adminimize_footer'); | |
| 257 | - switch ($_mw_adminimize_footer) { | |
| 258 | - case 1: | |
| 259 | - wp_enqueue_script( '_mw_adminimize_remove_footer', WP_PLUGIN_URL . '/' . FB_ADMINIMIZE_BASEFOLDER . '/js/remove_footer.js', array('jquery') ); | |
| 260 | - break; | |
| 261 | - } | |
| 262 | - | |
| 263 | - $_mw_adminimize_header = _mw_adminimize_getOptionValue('_mw_adminimize_header'); | |
| 264 | - switch ($_mw_adminimize_header) { | |
| 265 | - case 1: | |
| 266 | - wp_enqueue_script( '_mw_adminimize_remove_header', WP_PLUGIN_URL . '/' . FB_ADMINIMIZE_BASEFOLDER . '/js/remove_header.js', array('jquery') ); | |
| 267 | - break; | |
| 268 | - } | |
| 269 | - | |
| 270 | - //post-page options | |
| 271 | - $post_page_pages = array('post-new.php', 'post.php', 'page-new.php', 'page.php'); | |
| 272 | - if ( in_array( $pagenow, $post_page_pages ) ) { | |
| 273 | - | |
| 274 | - $_mw_adminimize_writescroll = _mw_adminimize_getOptionValue('_mw_adminimize_writescroll'); | |
| 275 | - switch ($_mw_adminimize_writescroll) { | |
| 262 | + // exclude super admin | |
| 263 | + if ( ! _mw_adminimize_exclude_super_admin() ) { | |
| 264 | + $_mw_adminimize_footer = _mw_adminimize_getOptionValue('_mw_adminimize_footer'); | |
| 265 | + switch ($_mw_adminimize_footer) { | |
| 276 | 266 | case 1: |
| 277 | - wp_enqueue_script( '_mw_adminimize_writescroll', WP_PLUGIN_URL . '/' . FB_ADMINIMIZE_BASEFOLDER . '/js/writescroll.js', array('jquery') ); | |
| 267 | + wp_enqueue_script( '_mw_adminimize_remove_footer', WP_PLUGIN_URL . '/' . FB_ADMINIMIZE_BASEFOLDER . '/js/remove_footer.js', array('jquery') ); | |
| 278 | 268 | break; |
| 279 | 269 | } |
| 280 | - $_mw_adminimize_tb_window = _mw_adminimize_getOptionValue('_mw_adminimize_tb_window'); | |
| 281 | - switch ($_mw_adminimize_tb_window) { | |
| 270 | + | |
| 271 | + $_mw_adminimize_header = _mw_adminimize_getOptionValue('_mw_adminimize_header'); | |
| 272 | + switch ($_mw_adminimize_header) { | |
| 282 | 273 | case 1: |
| 283 | - wp_deregister_script('media-upload'); | |
| 284 | - wp_enqueue_script('media-upload', WP_PLUGIN_URL . '/' . FB_ADMINIMIZE_BASEFOLDER . '/js/tb_window.js', array('thickbox')); | |
| 274 | + wp_enqueue_script( '_mw_adminimize_remove_header', WP_PLUGIN_URL . '/' . FB_ADMINIMIZE_BASEFOLDER . '/js/remove_header.js', array('jquery') ); | |
| 285 | 275 | break; |
| 286 | 276 | } |
| 287 | - $_mw_adminimize_timestamp = _mw_adminimize_getOptionValue('_mw_adminimize_timestamp'); | |
| 288 | - switch ($_mw_adminimize_timestamp) { | |
| 289 | - case 1: | |
| 290 | - wp_enqueue_script( '_mw_adminimize_timestamp', WP_PLUGIN_URL . '/' . FB_ADMINIMIZE_BASEFOLDER . '/js/timestamp.js', array('jquery') ); | |
| 291 | - break; | |
| 277 | + | |
| 278 | + //post-page options | |
| 279 | + $post_page_pages = array('post-new.php', 'post.php', 'page-new.php', 'page.php'); | |
| 280 | + if ( in_array( $pagenow, $post_page_pages ) ) { | |
| 281 | + | |
| 282 | + $_mw_adminimize_writescroll = _mw_adminimize_getOptionValue('_mw_adminimize_writescroll'); | |
| 283 | + switch ($_mw_adminimize_writescroll) { | |
| 284 | + case 1: | |
| 285 | + wp_enqueue_script( '_mw_adminimize_writescroll', WP_PLUGIN_URL . '/' . FB_ADMINIMIZE_BASEFOLDER . '/js/writescroll.js', array('jquery') ); | |
| 286 | + break; | |
| 287 | + } | |
| 288 | + $_mw_adminimize_tb_window = _mw_adminimize_getOptionValue('_mw_adminimize_tb_window'); | |
| 289 | + switch ($_mw_adminimize_tb_window) { | |
| 290 | + case 1: | |
| 291 | + wp_deregister_script('media-upload'); | |
| 292 | + wp_enqueue_script('media-upload', WP_PLUGIN_URL . '/' . FB_ADMINIMIZE_BASEFOLDER . '/js/tb_window.js', array('thickbox')); | |
| 293 | + break; | |
| 294 | + } | |
| 295 | + $_mw_adminimize_timestamp = _mw_adminimize_getOptionValue('_mw_adminimize_timestamp'); | |
| 296 | + switch ($_mw_adminimize_timestamp) { | |
| 297 | + case 1: | |
| 298 | + wp_enqueue_script( '_mw_adminimize_timestamp', WP_PLUGIN_URL . '/' . FB_ADMINIMIZE_BASEFOLDER . '/js/timestamp.js', array('jquery') ); | |
| 299 | + break; | |
| 300 | + } | |
| 301 | + | |
| 302 | + //category options | |
| 303 | + $_mw_adminimize_cat_full = _mw_adminimize_getOptionValue('_mw_adminimize_cat_full'); | |
| 304 | + switch ($_mw_adminimize_cat_full) { | |
| 305 | + case 1: | |
| 306 | + wp_enqueue_style( 'adminimize-ful-category', WP_PLUGIN_URL . '/' . FB_ADMINIMIZE_BASEFOLDER . '/css/mw_cat_full.css' ); | |
| 307 | + break; | |
| 308 | + } | |
| 309 | + | |
| 310 | + // set default editor tinymce | |
| 311 | + if ( recursive_in_array('#editor-toolbar #edButtonHTML, #quicktags', $disabled_metaboxes_page_all) | |
| 312 | + || recursive_in_array('#editor-toolbar #edButtonHTML, #quicktags', $disabled_metaboxes_post_all) ) | |
| 313 | + add_filter( 'wp_default_editor', create_function('', 'return "tinymce";') ); | |
| 314 | + | |
| 315 | + // remove media bottons | |
| 316 | + if ( recursive_in_array('media_buttons', $disabled_metaboxes_page_all) | |
| 317 | + || recursive_in_array('media_buttons', $disabled_metaboxes_post_all) ) | |
| 318 | + remove_action('media_buttons', 'media_buttons'); | |
| 319 | + | |
| 320 | + //add_filter('image_downsize', '_mw_adminimize_image_downsize', 1, 3); | |
| 292 | 321 | } |
| 293 | - | |
| 294 | - //category options | |
| 295 | - $_mw_adminimize_cat_full = _mw_adminimize_getOptionValue('_mw_adminimize_cat_full'); | |
| 296 | - switch ($_mw_adminimize_cat_full) { | |
| 322 | + | |
| 323 | + $_mw_adminimize_control_flashloader = _mw_adminimize_getOptionValue('_mw_adminimize_control_flashloader'); | |
| 324 | + switch ($_mw_adminimize_control_flashloader) { | |
| 297 | 325 | case 1: |
| 298 | - wp_enqueue_style( 'adminimize-ful-category', WP_PLUGIN_URL . '/' . FB_ADMINIMIZE_BASEFOLDER . '/css/mw_cat_full.css' ); | |
| 326 | + add_filter( 'flash_uploader', '_mw_adminimize_control_flashloader', 1 ); | |
| 299 | 327 | break; |
| 300 | 328 | } |
| 301 | - | |
| 302 | - // set default editor tinymce | |
| 303 | - if ( recursive_in_array('#editor-toolbar #edButtonHTML, #quicktags', $disabled_metaboxes_page_all) | |
| 304 | - || recursive_in_array('#editor-toolbar #edButtonHTML, #quicktags', $disabled_metaboxes_post_all) ) | |
| 305 | - add_filter( 'wp_default_editor', create_function('', 'return "tinymce";') ); | |
| 306 | - | |
| 307 | - // remove media bottons | |
| 308 | - if ( recursive_in_array('media_buttons', $disabled_metaboxes_page_all) | |
| 309 | - || recursive_in_array('media_buttons', $disabled_metaboxes_post_all) ) | |
| 310 | - remove_action('media_buttons', 'media_buttons'); | |
| 311 | - | |
| 312 | - //add_filter('image_downsize', '_mw_adminimize_image_downsize', 1, 3); | |
| 313 | 329 | } |
| 314 | 330 | |
| 315 | - $_mw_adminimize_control_flashloader = _mw_adminimize_getOptionValue('_mw_adminimize_control_flashloader'); | |
| 316 | - switch ($_mw_adminimize_control_flashloader) { | |
| 317 | - case 1: | |
| 318 | - add_filter( 'flash_uploader', '_mw_adminimize_control_flashloader', 1 ); | |
| 319 | - break; | |
| 320 | - } | |
| 321 | - | |
| 322 | 331 | if ( ($_mw_admin_color == 'mw_fresh') || |
| 323 | 332 | ($_mw_admin_color == 'mw_classic') || |
| 324 | 333 | ($_mw_admin_color == 'mw_colorblind') || |
| 325 | 334 | ($_mw_admin_color == 'mw_grey') || |
| @@ -353,12 +362,12 @@ | ||
| 353 | 362 | } |
| 354 | 363 | |
| 355 | 364 | // only pages |
| 356 | 365 | if ( |
| 357 | - ( 'page-new.php' == $pagenow ) || | |
| 358 | - ( 'page.php' == $pagenow ) || | |
| 359 | - ( 'post_type=page' == esc_attr($_SERVER['QUERY_STRING']) ) || | |
| 360 | - ( 'page' == $post_type ) | |
| 366 | + ( 'page-new.php' == $pagenow ) || | |
| 367 | + ( 'page.php' == $pagenow ) || | |
| 368 | + ( 'post_type=page' == esc_attr($_SERVER['QUERY_STRING']) ) || | |
| 369 | + ( 'page' == $post_type ) | |
| 361 | 370 | ) { |
| 362 | 371 | |
| 363 | 372 | // check for array empty |
| 364 | 373 | if ( !isset($disabled_metaboxes_page_['editor']['0']) ) |
| @@ -363,9 +372,9 @@ | ||
| 363 | 372 | // check for array empty |
| 364 | 373 | if ( !isset($disabled_metaboxes_page_['editor']['0']) ) |
| 365 | 374 | $disabled_metaboxes_page_['editor']['0'] = ''; |
| 366 | 375 | if ( isset($disabled_metaboxes_page_['administrator']['0']) ) |
| 367 | - $disabled_metaboxes_page_['administrator']['0'] = ''; | |
| 376 | + $disabled_metaboxes_page_['administrator']['0'] = ''; | |
| 368 | 377 | } |
| 369 | 378 | |
| 370 | 379 | } |
| 371 | 380 | |
| @@ -405,13 +414,14 @@ | ||
| 405 | 414 | |
| 406 | 415 | // on init of WordPress |
| 407 | 416 | add_action( 'init', '_mw_adminimize_textdomain' ); |
| 408 | 417 | add_action( 'init', '_mw_adminimize_register_styles' ); |
| 418 | +add_action( 'init', '_mw_adminimize_remove_admin_bar' ); | |
| 409 | 419 | |
| 410 | 420 | // on admin init |
| 421 | +add_action( 'admin_init', '_mw_adminimize_admin_init', 1 ); | |
| 411 | 422 | add_action( 'admin_menu', '_mw_adminimize_add_settings_page' ); |
| 412 | 423 | add_action( 'admin_menu', '_mw_adminimize_remove_dashboard' ); |
| 413 | -add_action( 'admin_init', '_mw_adminimize_init', 1 ); | |
| 414 | 424 | add_action( 'admin_init', '_mw_adminimize_admin_styles', 1 ); |
| 415 | 425 | |
| 416 | 426 | register_activation_hook( __FILE__, '_mw_adminimize_install' ); |
| 417 | 427 | register_uninstall_hook( __FILE__, '_mw_adminimize_deinstall' ); |
| @@ -539,9 +549,27 @@ | ||
| 539 | 549 | global $wp_version; |
| 540 | 550 | |
| 541 | 551 | $_mw_adminimize_path = WP_PLUGIN_URL . '/' . plugin_basename( dirname(__FILE__) ) . '/css/'; |
| 542 | 552 | |
| 543 | - if ( version_compare( $wp_version, '2.7alpha', '>=' ) ) { | |
| 553 | + if ( version_compare( $wp_version, '3.0alpha', '>=' ) ) { | |
| 554 | + | |
| 555 | + // MW Adminimize Classic Tweak | |
| 556 | + $styleName = 'Adminimize:' . ' Tweak ' . __('Blue'); | |
| 557 | + wp_admin_css_color ( | |
| 558 | + 'mw_classic_tweak', $styleName, $_mw_adminimize_path . 'mw_classic28_tweak.css', | |
| 559 | + array('#073447', '#21759b', '#eaf3fa', '#bbd8e7') | |
| 560 | + ); | |
| 561 | + | |
| 562 | + // MW Adminimize Fresh Tweak | |
| 563 | + $styleName = 'Adminimize:' . ' Tweak ' . __('Gray'); | |
| 564 | + wp_admin_css_color ( | |
| 565 | + 'mw_fresh_tweak', $styleName, $_mw_adminimize_path . 'mw_fresh28_tweak.css', | |
| 566 | + array('#464646', '#6d6d6d', '#f1f1f1', '#dfdfdf') | |
| 567 | + ); | |
| 568 | + | |
| 569 | + } | |
| 570 | + | |
| 571 | + if ( version_compare( $wp_version, '2.7alpha', '>=' ) && version_compare( $wp_version, '3.0alpha', '<' ) ) { | |
| 544 | 572 | // MW Adminimize Classic |
| 545 | 573 | $styleName = 'Adminimize:' . ' ' . __('Blue'); |
| 546 | 574 | wp_admin_css_color ( |
| 547 | 575 | 'mw_classic', $styleName, $_mw_adminimize_path . 'mw_classic27.css', |
| @@ -582,9 +610,9 @@ | ||
| 582 | 610 | 'mw_fresh_tweak', $styleName, $_mw_adminimize_path . 'mw_fresh28_tweak.css', |
| 583 | 611 | array('#464646', '#6d6d6d', '#f1f1f1', '#dfdfdf') |
| 584 | 612 | ); |
| 585 | 613 | |
| 586 | - } else { | |
| 614 | + } elseif ( version_compare( $wp_version, '2.7alpha', '<' ) ) { | |
| 587 | 615 | // MW Adminimize Classic |
| 588 | 616 | $styleName = 'MW Adminimize:' . ' ' . __('Classic'); |
| 589 | 617 | wp_admin_css_color ( |
| 590 | 618 | 'mw_classic', $styleName, $_mw_adminimize_path . 'mw_classic.css', |
| @@ -674,14 +702,8 @@ | ||
| 674 | 702 | */ |
| 675 | 703 | function _mw_adminimize_remove_dashboard() { |
| 676 | 704 | global $menu, $submenu, $user_ID, $wp_version; |
| 677 | 705 | |
| 678 | - // exclude super admin | |
| 679 | - if ( defined('WP_DEBUG') && !WP_DEBUG ) { | |
| 680 | - if ( is_super_admin() ) | |
| 681 | - return NULL; | |
| 682 | - } | |
| 683 | - | |
| 684 | 706 | $user_roles = get_all_user_roles(); |
| 685 | 707 | |
| 686 | 708 | foreach ($user_roles as $role) { |
| 687 | 709 | $disabled_menu_[$role] = _mw_adminimize_getOptionValue('mw_adminimize_disabled_menu_'. $role .'_items'); |
| @@ -710,26 +732,27 @@ | ||
| 710 | 732 | } |
| 711 | 733 | |
| 712 | 734 | if ( $redirect ) { |
| 713 | 735 | $_mw_adminimize_db_redirect = _mw_adminimize_getOptionValue('_mw_adminimize_db_redirect'); |
| 736 | + $_mw_adminimize_db_redirect_admin_url = get_option('siteurl') . '/wp-admin/'; | |
| 714 | 737 | switch ($_mw_adminimize_db_redirect) { |
| 715 | 738 | case 0: |
| 716 | - $_mw_adminimize_db_redirect = 'profile.php'; | |
| 739 | + $_mw_adminimize_db_redirect = $_mw_adminimize_db_redirect_admin_url . 'profile.php'; | |
| 717 | 740 | break; |
| 718 | 741 | case 1: |
| 719 | - $_mw_adminimize_db_redirect = 'edit.php'; | |
| 742 | + $_mw_adminimize_db_redirect = $_mw_adminimize_db_redirect_admin_url . 'edit.php'; | |
| 720 | 743 | break; |
| 721 | 744 | case 2: |
| 722 | - $_mw_adminimize_db_redirect = 'edit.php?post_type=page'; | |
| 745 | + $_mw_adminimize_db_redirect = $_mw_adminimize_db_redirect_admin_url . 'edit.php?post_type=page'; | |
| 723 | 746 | break; |
| 724 | 747 | case 3: |
| 725 | - $_mw_adminimize_db_redirect = 'post-new.php'; | |
| 748 | + $_mw_adminimize_db_redirect = $_mw_adminimize_db_redirect_admin_url . 'post-new.php'; | |
| 726 | 749 | break; |
| 727 | 750 | case 4: |
| 728 | - $_mw_adminimize_db_redirect = 'page-new.php'; | |
| 751 | + $_mw_adminimize_db_redirect = $_mw_adminimize_db_redirect_admin_url . 'page-new.php'; | |
| 729 | 752 | break; |
| 730 | 753 | case 5: |
| 731 | - $_mw_adminimize_db_redirect = 'edit-comments.php'; | |
| 754 | + $_mw_adminimize_db_redirect = $_mw_adminimize_db_redirect_admin_url . 'edit-comments.php'; | |
| 732 | 755 | break; |
| 733 | 756 | case 6: |
| 734 | 757 | $_mw_adminimize_db_redirect = _mw_adminimize_getOptionValue('_mw_adminimize_db_redirect_txt'); |
| 735 | 758 | break; |
| @@ -739,9 +762,10 @@ | ||
| 739 | 762 | if ( version_compare($wp_version, "3.0alpha", "<") && 'edit.php?post_type=page' == $_mw_adminimize_db_redirect ) |
| 740 | 763 | $_mw_adminimize_db_redirect = 'edit-pages.php'; |
| 741 | 764 | |
| 742 | 765 | $the_user = new WP_User($user_ID); |
| 743 | - reset($menu); $page = key($menu); | |
| 766 | + reset($menu); | |
| 767 | + $page = key($menu); | |
| 744 | 768 | |
| 745 | 769 | while ( (__('Dashboard') != $menu[$page][0]) && next($menu) || (__('Dashboard') != $menu[$page][1]) && next($menu) ) |
| 746 | 770 | $page = key($menu); |
| 747 | 771 | |
| @@ -752,9 +776,9 @@ | ||
| 752 | 776 | while ( !$the_user->has_cap($menu[$page][1]) && next($menu) ) |
| 753 | 777 | $page = key($menu); |
| 754 | 778 | |
| 755 | 779 | if ( preg_match('#wp-admin/?(index.php)?$#', $_SERVER['REQUEST_URI']) ) { |
| 756 | - wp_redirect( get_option('siteurl') . '/wp-admin/' . $_mw_adminimize_db_redirect ); | |
| 780 | + wp_redirect( $_mw_adminimize_db_redirect ); | |
| 757 | 781 | } |
| 758 | 782 | } |
| 759 | 783 | } |
| 760 | 784 | } |
| @@ -774,8 +798,12 @@ | ||
| 774 | 798 | */ |
| 775 | 799 | function _mw_adminimize_set_menu_option() { |
| 776 | 800 | global $pagenow, $menu, $submenu, $user_identity, $wp_version; |
| 777 | 801 | |
| 802 | + // exclude super admin | |
| 803 | + if ( _mw_adminimize_exclude_super_admin() ) | |
| 804 | + return NULL; | |
| 805 | + | |
| 778 | 806 | $user_roles = get_all_user_roles(); |
| 779 | 807 | |
| 780 | 808 | foreach ($user_roles as $role) { |
| 781 | 809 | $disabled_menu_[$role] = _mw_adminimize_getOptionValue('mw_adminimize_disabled_menu_'. $role .'_items'); |
| @@ -877,8 +905,12 @@ | ||
| 877 | 905 | */ |
| 878 | 906 | function _mw_adminimize_set_global_option() { |
| 879 | 907 | global $_wp_admin_css_colors; |
| 880 | 908 | |
| 909 | + // exclude super admin | |
| 910 | + if ( _mw_adminimize_exclude_super_admin() ) | |
| 911 | + return NULL; | |
| 912 | + | |
| 881 | 913 | $user_roles = get_all_user_roles(); |
| 882 | 914 | |
| 883 | 915 | $_mw_adminimize_admin_head = ''; |
| 884 | 916 | |
| @@ -909,22 +941,63 @@ | ||
| 909 | 941 | $_wp_admin_css_colors = 0; |
| 910 | 942 | $_mw_adminimize_admin_head .= '<!-- global options -->' . "\n"; |
| 911 | 943 | $_mw_adminimize_admin_head .= '<style type="text/css">' . $global_options . ' {display: none !important;}</style>' . "\n"; |
| 912 | 944 | |
| 913 | - // for deactivate admin bar | |
| 914 | - if ( $remove_adminbar ) | |
| 915 | - add_filter( 'show_admin_bar','__return_false' ); | |
| 916 | - | |
| 917 | 945 | if ($global_options) |
| 918 | 946 | echo $_mw_adminimize_admin_head; |
| 919 | 947 | } |
| 920 | 948 | |
| 921 | 949 | |
| 950 | +function _mw_adminimize_remove_admin_bar() { | |
| 951 | + | |
| 952 | + // exclude super admin | |
| 953 | + if ( _mw_adminimize_exclude_super_admin() ) | |
| 954 | + return NULL; | |
| 955 | + | |
| 956 | + $user_roles = get_all_user_roles(); | |
| 957 | + | |
| 958 | + foreach ($user_roles as $role) { | |
| 959 | + $disabled_global_option_[$role] = _mw_adminimize_getOptionValue('mw_adminimize_disabled_global_option_'. $role .'_items'); | |
| 960 | + } | |
| 961 | + | |
| 962 | + foreach ($user_roles as $role) { | |
| 963 | + if ( !isset($disabled_global_option_[$role]['0']) ) | |
| 964 | + $disabled_global_option_[$role]['0'] = ''; | |
| 965 | + } | |
| 966 | + | |
| 967 | + $remove_adminbar = FALSE; | |
| 968 | + // new 1.7.8 | |
| 969 | + foreach ($user_roles as $role) { | |
| 970 | + $user = wp_get_current_user(); | |
| 971 | + if ( in_array($role, $user->roles) ) { | |
| 972 | + if ( current_user_can($role) && is_array($disabled_global_option_[$role]) ) { | |
| 973 | + $global_options = implode(', ', $disabled_global_option_[$role]); | |
| 974 | + if ( recursive_in_array('.show-admin-bar', $disabled_global_option_[$role]) ) | |
| 975 | + $remove_adminbar = TRUE; | |
| 976 | + } | |
| 977 | + } | |
| 978 | + } | |
| 979 | + | |
| 980 | + // for deactivate admin bar | |
| 981 | + if ( $remove_adminbar ) { | |
| 982 | + add_filter( 'show_admin_bar', '__return_false' ); | |
| 983 | + wp_deregister_script( 'admin-bar' ); | |
| 984 | + wp_deregister_style( 'admin-bar' ); | |
| 985 | + remove_action( 'wp_footer', 'wp_admin_bar_render', 1000 ); | |
| 986 | + remove_action( 'wp_head', '_admin_bar_bump_cb' ); | |
| 987 | + } | |
| 988 | +} | |
| 989 | + | |
| 990 | + | |
| 922 | 991 | /** |
| 923 | 992 | * set metabox options from database an area post |
| 924 | 993 | */ |
| 925 | 994 | function _mw_adminimize_set_metabox_post_option() { |
| 926 | 995 | |
| 996 | + // exclude super admin | |
| 997 | + if ( _mw_adminimize_exclude_super_admin() ) | |
| 998 | + return NULL; | |
| 999 | + | |
| 927 | 1000 | $user_roles = get_all_user_roles(); |
| 928 | 1001 | |
| 929 | 1002 | $_mw_adminimize_admin_head = ''; |
| 930 | 1003 | |
| @@ -958,8 +1031,12 @@ | ||
| 958 | 1031 | * set metabox options from database an area page |
| 959 | 1032 | */ |
| 960 | 1033 | function _mw_adminimize_set_metabox_page_option() { |
| 961 | 1034 | |
| 1035 | + // exclude super admin | |
| 1036 | + if ( _mw_adminimize_exclude_super_admin() ) | |
| 1037 | + return NULL; | |
| 1038 | + | |
| 962 | 1039 | $user_roles = get_all_user_roles(); |
| 963 | 1040 | |
| 964 | 1041 | $_mw_adminimize_admin_head = ''; |
| 965 | 1042 | |
| @@ -993,8 +1070,12 @@ | ||
| 993 | 1070 | * set link options in area Links of Backend |
| 994 | 1071 | */ |
| 995 | 1072 | function _mw_adminimize_set_link_option() { |
| 996 | 1073 | |
| 1074 | + // exclude super admin | |
| 1075 | + if ( _mw_adminimize_exclude_super_admin() ) | |
| 1076 | + return NULL; | |
| 1077 | + | |
| 997 | 1078 | $user_roles = get_all_user_roles(); |
| 998 | 1079 | |
| 999 | 1080 | $_mw_adminimize_admin_head = ''; |
| 1000 | 1081 | |
| @@ -1028,8 +1109,12 @@ | ||
| 1028 | 1109 | * remove objects on wp nav menu |
| 1029 | 1110 | */ |
| 1030 | 1111 | function _mw_adminimize_set_nav_menu_option() { |
| 1031 | 1112 | |
| 1113 | + // exclude super admin | |
| 1114 | + if ( _mw_adminimize_exclude_super_admin() ) | |
| 1115 | + return NULL; | |
| 1116 | + | |
| 1032 | 1117 | $user_roles = get_all_user_roles(); |
| 1033 | 1118 | |
| 1034 | 1119 | $_mw_adminimize_admin_head = ''; |
| 1035 | 1120 | |
| @@ -1052,8 +1137,9 @@ | ||
| 1052 | 1137 | $nav_menu_options = implode(',', $disabled_nav_menu_option_[$role]); |
| 1053 | 1138 | } |
| 1054 | 1139 | } |
| 1055 | 1140 | } |
| 1141 | + //remove_meta_box($id, 'nav-menus', 'side'); | |
| 1056 | 1142 | $_mw_adminimize_admin_head .= '<style type="text/css">' . $nav_menu_options . ' {display: none !important;}</style>' . "\n"; |
| 1057 | 1143 | |
| 1058 | 1144 | if ($nav_menu_options) |
| 1059 | 1145 | echo $_mw_adminimize_admin_head; |
| @@ -1278,9 +1364,15 @@ | ||
| 1278 | 1364 | $adminimizeoptions['_mw_adminimize_header'] = strip_tags(stripslashes($_POST['_mw_adminimize_header'])); |
| 1279 | 1365 | } else { |
| 1280 | 1366 | $adminimizeoptions['_mw_adminimize_header'] = 0; |
| 1281 | 1367 | } |
| 1282 | - | |
| 1368 | + | |
| 1369 | + if (isset($_POST['_mw_adminimize_exclude_super_admin'])) { | |
| 1370 | + $adminimizeoptions['_mw_adminimize_exclude_super_admin'] = strip_tags(stripslashes($_POST['_mw_adminimize_exclude_super_admin'])); | |
| 1371 | + } else { | |
| 1372 | + $adminimizeoptions['_mw_adminimize_exclude_super_admin'] = 0; | |
| 1373 | + } | |
| 1374 | + | |
| 1283 | 1375 | if (isset($_POST['_mw_adminimize_writescroll'])) { |
| 1284 | 1376 | $adminimizeoptions['_mw_adminimize_writescroll'] = strip_tags(stripslashes($_POST['_mw_adminimize_writescroll'])); |
| 1285 | 1377 | } else { |
| 1286 | 1378 | $adminimizeoptions['_mw_adminimize_writescroll'] = 0; |
| @@ -1440,8 +1532,21 @@ | ||
| 1440 | 1532 | } else { |
| 1441 | 1533 | $adminimizeoptions['_mw_adminimize_own_link_options'] = 0; |
| 1442 | 1534 | } |
| 1443 | 1535 | |
| 1536 | + // wp nav menu options | |
| 1537 | + if (isset($_POST['_mw_adminimize_own_nav_menu_values'])) { | |
| 1538 | + $adminimizeoptions['_mw_adminimize_own_nav_menu_values'] = stripslashes($_POST['_mw_adminimize_own_nav_menu_values']); | |
| 1539 | + } else { | |
| 1540 | + $adminimizeoptions['_mw_adminimize_own_nav_menu_values'] = 0; | |
| 1541 | + } | |
| 1542 | + | |
| 1543 | + if (isset($_POST['_mw_adminimize_own_nav_menu_options'])) { | |
| 1544 | + $adminimizeoptions['_mw_adminimize_own_nav_menu_options'] = stripslashes($_POST['_mw_adminimize_own_nav_menu_options']); | |
| 1545 | + } else { | |
| 1546 | + $adminimizeoptions['_mw_adminimize_own_nav_menu_options'] = 0; | |
| 1547 | + } | |
| 1548 | + | |
| 1444 | 1549 | // update |
| 1445 | 1550 | update_option('mw_adminimize', $adminimizeoptions); |
| 1446 | 1551 | $adminimizeoptions = get_option('mw_adminimize'); |
| 1447 | 1552 | |
| @@ -1497,9 +1602,9 @@ | ||
| 1497 | 1602 | header("Content-Type: application/octet-stream"); |
| 1498 | 1603 | header("Content-Type: application/download"); |
| 1499 | 1604 | header('Content-Type: text/seq; charset=' . get_option('blog_charset'), TRUE); |
| 1500 | 1605 | flush(); |
| 1501 | - | |
| 1606 | + | |
| 1502 | 1607 | $export_data = mysql_query("SELECT option_value FROM $wpdb->options WHERE option_name = 'mw_adminimize'"); |
| 1503 | 1608 | $export_data = mysql_result($export_data, 0); |
| 1504 | 1609 | echo $export_data; |
| 1505 | 1610 | flush(); |
| @@ -1527,12 +1632,18 @@ | ||
| 1527 | 1632 | chmod($str_ziel, 0644); |
| 1528 | 1633 | // SQL import |
| 1529 | 1634 | ini_set('default_socket_timeout', 120); |
| 1530 | 1635 | $import_file = file_get_contents($str_ziel); |
| 1636 | + | |
| 1531 | 1637 | _mw_adminimize_deinstall(); |
| 1532 | 1638 | $import_file = unserialize($import_file); |
| 1639 | + | |
| 1640 | + if ( file_exists($str_ziel) ) | |
| 1641 | + unlink($str_ziel); | |
| 1533 | 1642 | update_option('mw_adminimize', $import_file); |
| 1534 | - unlink($str_ziel); | |
| 1643 | + if ( file_exists($str_ziel) ) | |
| 1644 | + unlink($str_ziel); | |
| 1645 | + | |
| 1535 | 1646 | $addreferer = 'true'; |
| 1536 | 1647 | } |
| 1537 | 1648 | |
| 1538 | 1649 | $myErrors = new _mw_adminimize_message_class(); |