Adminimize requires WordPress 2.5 or newer. Please update WordPress or delete the plugin.'; else $exit_msg = ''; header('Status: 403 Forbidden'); header('HTTP/1.1 403 Forbidden'); exit($exit_msg); } if ( function_exists('add_action') ) { // Pre-2.6 compatibility if ( !defined( 'WP_CONTENT_URL' ) ) define( 'WP_CONTENT_URL', get_option( 'siteurl' ) . '/wp-content' ); if ( !defined( 'WP_CONTENT_DIR' ) ) define( 'WP_CONTENT_DIR', ABSPATH . 'wp-content' ); if ( !defined( 'WP_PLUGIN_URL' ) ) define( 'WP_PLUGIN_URL', WP_CONTENT_URL. '/plugins' ); if ( !defined( 'WP_PLUGIN_DIR' ) ) define( 'WP_PLUGIN_DIR', WP_CONTENT_DIR . '/plugins' ); // plugin definitions define( 'FB_ADMINIMIZE_BASENAME', plugin_basename( __FILE__ ) ); define( 'FB_ADMINIMIZE_BASEFOLDER', plugin_basename( dirname( __FILE__ ) ) ); define( 'FB_ADMINIMIZE_TEXTDOMAIN', 'adminimize' ); } function _mw_adminimize_textdomain() { if ( function_exists('load_plugin_textdomain') ) load_plugin_textdomain( FB_ADMINIMIZE_TEXTDOMAIN, false, dirname( FB_ADMINIMIZE_BASENAME ) . '/languages'); } function recursive_in_array($needle, $haystack) { if ($haystack != '') { foreach ($haystack as $stalk) { if ( $needle == $stalk || ( is_array($stalk) && recursive_in_array($needle, $stalk) ) ) { return true; } } return false; } } /** * some basics for message */ class _mw_adminimize_message_class { function _mw_adminimize_message_class() { $this->localizionName = 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) Returns an error message */ function get_error($code = '') { $errorMessage = $this->errors->get_error_message($code); if ($errorMessage == null) { return __("Unknown error.", $this->localizionName); } return $errorMessage; } // Initializes all the error messages function initialize_errors() { $this->errors->add('_mw_adminimize_update', __('The updates was saved.', $this->localizionName)); $this->errors->add('_mw_adminimize_access_denied', __('You have not enough rights for edit entries in the database.', $this->localizionName)); $this->errors->add('_mw_adminimize_import', __('All entries in the database was imported.', $this->localizionName)); $this->errors->add('_mw_adminimize_deinstall', __('All entries in the database was delleted.', $this->localizionName)); $this->errors->add('_mw_adminimize_deinstall_yes', __('Set the checkbox on deinstall-button.', $this->localizionName)); $this->errors->add('_mw_adminimize_get_option', __('Can\'t load menu and submenu.', $this->localizionName)); $this->errors->add('_mw_adminimize_set_theme', __('Backend-Theme was activated!', $this->localizionName)); $this->errors->add('_mw_adminimize_load_theme', __('Load user data to themes was successful.', $this->localizionName)); } } /** * 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 */ function get_all_user_roles() { global $wp_roles; $user_roles = array(); foreach ($wp_roles->roles as $role => $data) { array_push($user_roles, $role); //$data contains caps, maybe for later use.. } return $user_roles; } /** * 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 */ function 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 = translate_with_context( $data ); array_push($user_roles_names, $data ); } return $user_roles_names; } function _mw_adminimize_control_flashloader() { $_mw_adminimize_control_flashloader = _mw_adminimize_getOptionValue('_mw_adminimize_control_flashloader'); if ($_mw_adminimize_control_flashloader == '1') { return false; } else { return true; } } /** * check user-option and add new style * @uses $pagenow */ function _mw_adminimize_init() { global $pagenow, $menu, $submenu, $adminimizeoptions, $wp_version; $user_roles = get_all_user_roles(); $adminimizeoptions = get_option('mw_adminimize'); foreach ($user_roles as $role) { $disabled_global_option_[$role] = _mw_adminimize_getOptionValue('mw_adminimize_disabled_global_option_'. $role .'_items'); $disabled_metaboxes_post_[$role] = _mw_adminimize_getOptionValue('mw_adminimize_disabled_metaboxes_post_'. $role .'_items'); $disabled_metaboxes_page_[$role] = _mw_adminimize_getOptionValue('mw_adminimize_disabled_metaboxes_page_'. $role .'_items'); $disabled_link_option_[$role] = _mw_adminimize_getOptionValue('mw_adminimize_disabled_link_option_'. $role .'_items'); } $disabled_metaboxes_post_all = array(); $disabled_metaboxes_page_all = array(); foreach ($user_roles as $role) { array_push($disabled_metaboxes_post_all, $disabled_metaboxes_post_[$role]); array_push($disabled_metaboxes_page_all, $disabled_metaboxes_page_[$role]); } $_mw_admin_color = get_user_option('admin_color'); //global options $_mw_adminimize_footer = _mw_adminimize_getOptionValue('_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; } //post-page options $post_page_pages = array('post-new.php', 'post.php', 'page-new.php', 'page.php'); if ( in_array( $pagenow, $post_page_pages ) ) { $_mw_adminimize_writescroll = _mw_adminimize_getOptionValue('_mw_adminimize_writescroll'); switch ($_mw_adminimize_writescroll) { case 1: wp_enqueue_script( '_mw_adminimize_writescroll', WP_PLUGIN_URL . '/' . FB_ADMINIMIZE_BASEFOLDER . '/js/writescroll.js', array('jquery') ); break; } $_mw_adminimize_tb_window = _mw_adminimize_getOptionValue('_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_getOptionValue('_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_getOptionValue('_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 ( recursive_in_array('#editor-toolbar #edButtonHTML, #quicktags', $disabled_metaboxes_page_all) || recursive_in_array('#editor-toolbar #edButtonHTML, #quicktags', $disabled_metaboxes_post_all) ) add_filter( 'wp_default_editor', create_function('', 'return "tinymce";') ); // remove media bottons if ( recursive_in_array('media_buttons', $disabled_metaboxes_page_all) || recursive_in_array('media_buttons', $disabled_metaboxes_post_all) ) remove_action('media_buttons', 'media_buttons'); //add_filter('image_downsize', '_mw_adminimize_image_downsize', 1, 3); } $_mw_adminimize_control_flashloader = _mw_adminimize_getOptionValue('_mw_adminimize_control_flashloader'); switch ($_mw_adminimize_control_flashloader) { case 1: add_filter( 'flash_uploader', '_mw_adminimize_control_flashloader', 1 ); break; } if ( ($_mw_admin_color == 'mw_fresh') || ($_mw_admin_color == 'mw_classic') || ($_mw_admin_color == 'mw_colorblind') || ($_mw_admin_color == 'mw_grey') || ($_mw_admin_color == 'mw_fresh_ozh_am') || ($_mw_admin_color == 'mw_classic_ozh_am') || ($_mw_admin_color == 'mw_fresh_lm') || ($_mw_admin_color == 'mw_classic_lm') || ($_mw_admin_color == 'mw_wp23') ) { // only posts if ( ('post-new.php' == $pagenow) || ('post.php' == $pagenow) ) { if ( version_compare( substr($wp_version, 0, 3), '2.7', '<' ) ) add_action('admin_head', '_mw_adminimize_remove_box', 99); // check for array empty if ( !isset($disabled_metaboxes_post_['editor']['0']) ) $disabled_metaboxes_post_['editor']['0'] = ''; if ( isset($disabled_metaboxes_post_['administrator']['0']) ) $disabled_metaboxes_post_['administrator']['0'] = ''; if ( version_compare(substr($wp_version, 0, 3), '2.7', '<') ) { if ( !recursive_in_array('#categorydivsb', $disabled_metaboxes_post_all) ) add_action('submitpost_box', '_mw_adminimize_sidecat_list_category_box'); if ( !recursive_in_array('#tagsdivsb', $disabled_metaboxes_post_all) ) add_action('submitpost_box', '_mw_adminimize_sidecat_list_tag_box'); } } // only pages if ( ('page-new.php' == $pagenow) || ('page.php' == $pagenow) ) { // check for array empty if ( !isset($disabled_metaboxes_page_['editor']['0']) ) $disabled_metaboxes_page_['editor']['0'] = ''; if ( isset($disabled_metaboxes_page_['administrator']['0']) ) $disabled_metaboxes_page_['administrator']['0'] = ''; } } // 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 $post_pages = array('post-new.php', 'post.php'); if ( in_array( $pagenow, $post_pages ) ) add_action('admin_head', '_mw_adminimize_set_metabox_post_option', 1); // set metabox page option $page_pages = array('page-new.php', 'page.php'); if ( in_array( $pagenow, $page_pages ) ) add_action('admin_head', '_mw_adminimize_set_metabox_page_option', 1); // set link option $link_pages = array('link-manager.php', 'link-add.php', 'edit-link-categories.php'); if ( in_array( $pagenow, $link_pages ) ) add_action('admin_head', '_mw_adminimize_set_link_option', 1); add_action('in_admin_footer', '_mw_adminimize_admin_footer'); $adminimizeoptions['mw_adminimize_default_menu'] = $menu; $adminimizeoptions['mw_adminimize_default_submenu'] = $submenu; } add_action('init', '_mw_adminimize_textdomain'); if ( is_admin() ) { add_action('admin_menu', '_mw_adminimize_add_settings_page'); add_action('admin_menu', '_mw_adminimize_remove_dashboard'); add_action('admin_init', '_mw_adminimize_init', 1); add_action('admin_init', '_mw_adminimize_admin_styles', 1); } if ( function_exists('register_activation_hook') ) register_activation_hook(__FILE__, '_mw_adminimize_install'); if ( function_exists('register_uninstall_hook') ) register_uninstall_hook(__FILE__, '_mw_adminimize_deinstall'); //register_deactivation_hook(__FILE__, '_mw_adminimize_deinstall'); /** * Uses WordPress filter for image_downsize, kill wp-image-dimension * code by Andrew Rickmann * http://www.wp-fun.co.uk/ * @param $value, $id, $size */ function _mw_adminimize_image_downsize($value = false, $id = 0, $size = "medium") { if ( !wp_attachment_is_image($id) ) return false; $img_url = wp_get_attachment_url($id); // Mimic functionality in image_downsize function in wp-includes/media.php if ( $intermediate = image_get_intermediate_size($id, $size) ) { $img_url = str_replace(basename($img_url), $intermediate['file'], $img_url); } elseif ( $size == 'thumbnail' ) { // fall back to the old thumbnail if ( $thumb_file = wp_get_attachment_thumb_file() && $info = getimagesize($thumb_file) ) { $img_url = str_replace(basename($img_url), basename($thumb_file), $img_url); } } if ( $img_url) return array($img_url, 0, 0); return false; } /** * 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 ) ); ?>

' . "\n"; $_mw_adminimize_sidecat_admin_head .= "\t" . 'jQuery(document).ready(function() { jQuery(\'#categorydiv\').remove(); });' . "\n"; $_mw_adminimize_sidecat_admin_head .= "\t" . 'jQuery(document).ready(function() { jQuery(\'#tagsdiv\').remove(); });' . "\n"; $_mw_adminimize_sidecat_admin_head .= '' . "\n"; echo $_mw_adminimize_sidecat_admin_head; } } /** * add new adminstyle to usersettings * @param $file */ function _mw_adminimize_admin_styles($file) { global $wp_version; $_mw_adminimize_path = WP_PLUGIN_URL . '/' . plugin_basename( dirname(__FILE__) ) . '/css/'; if ( version_compare( $wp_version, '2.7alpha', '>=' ) ) { // MW Adminimize Classic $styleName = 'Adminimize:' . ' ' . __('Blue'); wp_admin_css_color ( 'mw_classic', $styleName, $_mw_adminimize_path . 'mw_classic27.css', array('#073447', '#21759b', '#eaf3fa', '#bbd8e7') ); // MW Adminimize Fresh $styleName = 'Adminimize:' . ' ' . __('Gray'); wp_admin_css_color ( 'mw_fresh', $styleName, $_mw_adminimize_path . 'mw_fresh27.css', array('#464646', '#6d6d6d', '#f1f1f1', '#dfdfdf') ); // MW Adminimize Classic Fixed $styleName = 'Adminimize:' . ' Fixed ' . __('Blue'); wp_admin_css_color ( 'mw_classic_fixed', $styleName, $_mw_adminimize_path . 'mw_classic28_fixed.css', array('#073447', '#21759b', '#eaf3fa', '#bbd8e7') ); // MW Adminimize Fresh Fixed $styleName = 'Adminimize:' . ' Fixed ' . __('Gray'); wp_admin_css_color ( 'mw_fresh_fixed', $styleName, $_mw_adminimize_path . 'mw_fresh28_fixed.css', array('#464646', '#6d6d6d', '#f1f1f1', '#dfdfdf') ); // MW Adminimize Classic Tweak $styleName = 'Adminimize:' . ' Tweak ' . __('Blue'); wp_admin_css_color ( 'mw_classic_tweak', $styleName, $_mw_adminimize_path . 'mw_classic28_tweak.css', array('#073447', '#21759b', '#eaf3fa', '#bbd8e7') ); // MW Adminimize Fresh Tweak $styleName = 'Adminimize:' . ' Tweak ' . __('Gray'); wp_admin_css_color ( 'mw_fresh_tweak', $styleName, $_mw_adminimize_path . 'mw_fresh28_tweak.css', array('#464646', '#6d6d6d', '#f1f1f1', '#dfdfdf') ); } else { // MW Adminimize Classic $styleName = 'MW Adminimize:' . ' ' . __('Classic'); wp_admin_css_color ( 'mw_classic', $styleName, $_mw_adminimize_path . 'mw_classic.css', array('#07273E', '#14568A', '#D54E21', '#2683AE') ); // MW Adminimize Fresh $styleName = 'MW Adminimize:' . ' ' . __('Fresh'); wp_admin_css_color ( 'mw_fresh', $styleName, $_mw_adminimize_path . 'mw_fresh.css', array('#464646', '#CEE1EF', '#D54E21', '#2683AE') ); // MW Adminimize WordPress 2.3 $styleName = 'MW Adminimize:' . ' ' . __('WordPress 2.3'); wp_admin_css_color ( 'mw_wp23', $styleName, $_mw_adminimize_path . 'mw_wp23.css', array('#000000', '#14568A', '#448ABD', '#83B4D8') ); // MW Adminimize Colorblind $styleName = 'MW Adminimize:' . ' ' . __('Maybe i\'m colorblind'); wp_admin_css_color ( 'mw_colorblind', $styleName, $_mw_adminimize_path . 'mw_colorblind.css', array('#FF9419', '#F0720C', '#710001', '#550007', '#CF4529') ); // MW Adminimize Grey $styleName = 'MW Adminimize:' . ' ' . __('Grey'); wp_admin_css_color ( 'mw_grey', $styleName, $_mw_adminimize_path . 'mw_grey.css', array('#000000', '#787878', '#F0F0F0', '#D8D8D8', '#909090') ); } /** * style and changes for plugin Admin Drop Down Menu * by Ozh * http://planetozh.com/blog/my-projects/wordpress-admin-menu-drop-down-css/ */ if ( function_exists('wp_ozh_adminmenu') ) { // MW Adminimize Classic include ozh adminmenu $styleName = 'MW Adminimize inc. Admin Drop Down Menu' . ' ' . __('Classic'); wp_admin_css_color ( 'mw_classic_ozh_am', $styleName, $_mw_adminimize_path . 'mw_classic_ozh_am.css', array('#07273E', '#14568A', '#D54E21', '#2683AE') ); // MW Adminimize Fresh include ozh adminmenu $styleName = 'MW Adminimize inc. Admin Drop Down Menu' . ' ' . __('Fresh'); wp_admin_css_color ( 'mw_fresh_ozh_am', $styleName, $_mw_adminimize_path . 'mw_fresh_ozh_am.css', array('#464646', '#CEE1EF', '#D54E21', '#2683AE') ); } /** * style and changes for plugin Lighter Menus * by corpodibacco * http://www.italyisfalling.com/lighter-menus */ if ( function_exists('lm_build') ) { // MW Adminimize Classic include Lighter Menus $styleName = 'MW Adminimize inc. Lighter Menus' . ' ' . __('Classic'); wp_admin_css_color ( 'mw_classic_lm', $styleName, $_mw_adminimize_path . 'mw_classic_lm.css', array('#07273E', '#14568A', '#D54E21', '#2683AE') ); // MW Adminimize Fresh include Lighter Menus $styleName = 'MW Adminimize inc. Lighter Menus' . ' ' . __('Fresh'); wp_admin_css_color ( 'mw_fresh_lm', $styleName, $_mw_adminimize_path . 'mw_fresh_lm.css', array('#464646', '#CEE1EF', '#D54E21', '#2683AE') ); } } /** * remove the dashbord * @author of basic Austin Matzko * http://www.ilfilosofo.com/blog/2006/05/24/plugin-remove-the-wordpress-dashboard/ */ function _mw_adminimize_remove_dashboard() { global $menu, $submenu, $user_ID; $user_roles = get_all_user_roles(); foreach ($user_roles as $role) { $disabled_menu_[$role] = _mw_adminimize_getOptionValue('mw_adminimize_disabled_menu_'. $role .'_items'); $disabled_submenu_[$role] = _mw_adminimize_getOptionValue('mw_adminimize_disabled_submenu_'. $role .'_items'); } $disabled_menu_all = array(); $disabled_submenu_all = array(); foreach ($user_roles as $role) { array_push($disabled_menu_all, $disabled_menu_[$role]); array_push($disabled_submenu_all, $disabled_submenu_[$role]); } // remove dashboard if ( $disabled_menu_all != '' || $disabled_submenu_all != '' ) { $i = 0; foreach ($user_roles as $role) { if ( current_user_can($role) && $i == 0 ) { if ( recursive_in_array('index.php', $disabled_menu_[$role]) || recursive_in_array('index.php', $disabled_submenu_[$role]) ) $redirect = 'true'; } elseif ( current_user_can($role) ) { if ( recursive_in_array('index.php', $disabled_menu_[$role]) || recursive_in_array('index.php', $disabled_submenu_[$role]) ) $redirect = 'true'; } $i++; } if ( isset($redirect) && $redirect == 'true' ) { $_mw_adminimize_db_redirect = _mw_adminimize_getOptionValue('_mw_adminimize_db_redirect'); switch ($_mw_adminimize_db_redirect) { case 0: $_mw_adminimize_db_redirect = 'profile.php'; break; case 1: $_mw_adminimize_db_redirect = 'edit.php'; break; case 2: $_mw_adminimize_db_redirect = 'edit-pages.php'; break; case 3: $_mw_adminimize_db_redirect = 'post-new.php'; break; case 4: $_mw_adminimize_db_redirect = 'page-new.php'; break; case 5: $_mw_adminimize_db_redirect = 'edit-comments.php'; break; case 6: $_mw_adminimize_db_redirect = htmlspecialchars( stripslashes( _mw_adminimize_getOptionValue('_mw_adminimize_db_redirect_txt') ) ); break; } $the_user = new WP_User($user_ID); reset($menu); $page = key($menu); while ( (__('Dashboard') != $menu[$page][0]) && next($menu) || (__('Dashboard') != $menu[$page][1]) && next($menu) ) $page = key($menu); if (__('Dashboard') == $menu[$page][0] || __('Dashboard') == $menu[$page][1]) unset($menu[$page]); reset($menu); $page = key($menu); while ( !$the_user->has_cap($menu[$page][1]) && next($menu) ) $page = key($menu); if ( preg_match('#wp-admin/?(index.php)?$#', $_SERVER['REQUEST_URI']) ) { if ( function_exists('admin_url') ) { wp_redirect( admin_url($_mw_adminimize_db_redirect) ); } else { wp_redirect( get_option('siteurl') . '/wp-admin/' . $_mw_adminimize_db_redirect ); } } } } } /** * remove the flash_uploader */ function _mw_adminimize_disable_flash_uploader() { return false; } /** * set menu options from database */ function _mw_adminimize_set_menu_option() { global $pagenow, $menu, $submenu, $user_identity, $wp_version; $user_roles = get_all_user_roles(); foreach ($user_roles as $role) { $disabled_menu_[$role] = _mw_adminimize_getOptionValue('mw_adminimize_disabled_menu_'. $role .'_items'); $disabled_submenu_[$role] = _mw_adminimize_getOptionValue('mw_adminimize_disabled_submenu_'. $role .'_items'); } $_mw_adminimize_admin_head = "\n"; $_mw_adminimize_user_info = _mw_adminimize_getOptionValue('_mw_adminimize_user_info'); $_mw_adminimize_ui_redirect = _mw_adminimize_getOptionValue('_mw_adminimize_ui_redirect'); switch ($_mw_adminimize_user_info) { case 1: $_mw_adminimize_admin_head .= '' . "\n"; break; case 2: if ( 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(substr($wp_version, 0, 3), '2.7', '>=') ) { $_mw_adminimize_admin_head .= '' . "\n"; } else { $_mw_adminimize_admin_head .= '' . "\n"; } $_mw_adminimize_admin_head .= '' . "\n"; break; } // set menu if ($disabled_menu_['editor'] != '') { // set admin-menu foreach ($user_roles as $role) { if($role == $role[0]){ if ( current_user_can($role) ) { $mw_adminimize_menu = $disabled_menu_[$role]; $mw_adminimize_submenu = $disabled_submenu_[$role]; } } elseif ( current_user_can($role) ) { $mw_adminimize_menu = $disabled_menu_[$role]; $mw_adminimize_submenu = $disabled_submenu_[$role]; } } foreach ($menu as $index => $item) { if ($item == 'index.php') 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)) unset($submenu[$item[2]][$subindex]); } } } } echo $_mw_adminimize_admin_head; } /** * set global options in backend in all areas */ function _mw_adminimize_set_global_option() { $user_roles = 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_getOptionValue('mw_adminimize_disabled_global_option_'. $role .'_items'); } foreach ($user_roles as $role) { if ( !isset($disabled_global_option_[$role]['0']) ) $disabled_global_option_[$role]['0'] = ''; } foreach ($user_roles as $role) { if ($role == $role[0]) { if ( current_user_can($role) ) { $global_options = implode(', ', $disabled_global_option_[$role]); } } elseif ( current_user_can($role) ) { $global_options = implode(', ', $disabled_global_option_[$role]); } } $_mw_adminimize_admin_head .= '' . "\n"; $_mw_adminimize_admin_head .= '' . "\n"; if ($global_options) echo $_mw_adminimize_admin_head; } /** * set metabox options from database an area post */ function _mw_adminimize_set_metabox_post_option() { $user_roles = get_all_user_roles(); $_mw_adminimize_admin_head = ''; remove_action('admin_head', 'index_js'); foreach ($user_roles as $role) { $disabled_metaboxes_post_[$role] = _mw_adminimize_getOptionValue('mw_adminimize_disabled_metaboxes_post_'. $role .'_items'); if ( !isset($disabled_metaboxes_post_[$role]['0']) ) $disabled_metaboxes_post_[$role]['0'] = ''; if ($role == $role[0]) { if ( current_user_can($role) ) { $metaboxes = implode(',', $disabled_metaboxes_post_[$role]); } } elseif ( current_user_can($role) ) { $metaboxes = implode(',', $disabled_metaboxes_post_[$role]); } } $_mw_adminimize_admin_head .= '' . "\n"; if ($metaboxes) echo $_mw_adminimize_admin_head; } /** * set metabox options from database an area page */ function _mw_adminimize_set_metabox_page_option() { $user_roles = get_all_user_roles(); $_mw_adminimize_admin_head = ''; remove_action('admin_head', 'index_js'); foreach ($user_roles as $role) { $disabled_metaboxes_page_[$role] = _mw_adminimize_getOptionValue('mw_adminimize_disabled_metaboxes_page_'. $role .'_items'); if ( !isset($disabled_metaboxes_page_[$role]['0']) ) $disabled_metaboxes_page_[$role]['0'] = ''; if($role == $role[0]){ if ( current_user_can($role) ) { $metaboxes = implode(',', $disabled_metaboxes_page_[$role]); } } elseif ( current_user_can($role) ) { $metaboxes = implode(',', $disabled_metaboxes_page_[$role]); } } $_mw_adminimize_admin_head .= '' . "\n"; if ($metaboxes) echo $_mw_adminimize_admin_head; } /** * set link options in area Links of Backend */ function _mw_adminimize_set_link_option() { $user_roles = 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_getOptionValue('mw_adminimize_disabled_link_option_'. $role .'_items'); } foreach ($user_roles as $role) { if ( !isset($disabled_link_option_[$role]['0']) ) $disabled_link_option_[$role]['0'] = ''; } foreach ($user_roles as $role) { if ($role == $role[0]) { if ( current_user_can($role) ) { $link_options = implode(', ', $disabled_link_option_[$role]); } } elseif ( current_user_can($role) ) { $link_options = implode(', ', $disabled_link_option_[$role]); } } $_mw_adminimize_admin_head .= '' . "\n"; if ($link_options) echo $_mw_adminimize_admin_head; } /** * small user-info * @uses $post_ID */ function _mw_adminimize_small_user_info() { ?>

' . $plugin_data['Name'] . ''; if ( basename($_SERVER['REQUEST_URI']) == 'adminimize.php') { printf('%1$s ' . __('plugin') . ' | ' . __('Version') . ' %2$s | ' . __('Author') . ' %3$s
', $plugin_data['Title'], $plugin_data['Version'], $plugin_data['Author']); } if ( _mw_adminimize_getOptionValue('_mw_adminimize_advice') == 1 && basename($_SERVER['REQUEST_URI']) != 'adminimize.php' ) { printf('%1$s ' . __('plugin activate', FB_ADMINIMIZE_TEXTDOMAIN ) . ' | ' . stripslashes( _mw_adminimize_getOptionValue('_mw_adminimize_advice_txt') ) . '
', $plugin_data['Title']); } } /** * @version WP 2.8 * Add action link(s) to plugins page * * @package Secure WordPress * * @param $links, $file * @return $links */ function _mw_adminimize_filter_plugin_meta($links, $file) { /* create link */ if ( $file == FB_ADMINIMIZE_BASENAME ) { array_unshift( $links, sprintf( '%s', FB_ADMINIMIZE_BASENAME, __('Settings') ) ); } return $links; } /** * Images/ Icons in base64-encoding * @use function _mw_adminimize_get_resource_url() for display */ if( isset($_GET['resource']) && !empty($_GET['resource'])) { # base64 encoding performed by base64img.php from http://php.holtsmark.no $resources = array( 'adminimize.gif' => 'R0lGODlhCwALAKIEAPb29tTU1Kurq5SUlP///wAAAAAAAAAAAC'. 'H5BAEAAAQALAAAAAALAAsAAAMlSErTuw1Ix4a8s4mYgxZbE4wf'. 'OIzkAJqop64nWm7tULHu0+xLAgA7'. ''); if(array_key_exists($_GET['resource'], $resources)) { $content = base64_decode($resources[ $_GET['resource'] ]); $lastMod = filemtime(__FILE__); $client = ( isset($_SERVER['HTTP_IF_MODIFIED_SINCE']) ? $_SERVER['HTTP_IF_MODIFIED_SINCE'] : false ); // Checking if the client is validating his cache and if it is current. if (isset($client) && (strtotime($client) == $lastMod)) { // Client's cache IS current, so we just respond '304 Not Modified'. header('Last-Modified: '.gmdate('D, d M Y H:i:s', $lastMod).' GMT', true, 304); exit; } else { // Image not cached or cache outdated, we respond '200 OK' and output the image. header('Last-Modified: '.gmdate('D, d M Y H:i:s', $lastMod).' GMT', true, 200); header('Content-Length: '.strlen($content)); header('Content-Type: image/' . substr(strrchr($_GET['resource'], '.'), 1) ); echo $content; exit; } } } /** * Display Images/ Icons in base64-encoding * @return $resourceID */ function _mw_adminimize_get_resource_url($resourceID) { return trailingslashit( get_bloginfo('url') ) . '?resource=' . $resourceID; } /** * content of help * * @package Secure WordPress */ function _mw_adminimize_contextual_help() { $content = __('Documentation', FB_ADMINIMIZE_TEXTDOMAIN ); return $content; } /** * settings in plugin-admin-page */ function _mw_adminimize_add_settings_page() { global $wp_version; if( current_user_can('switch_themes') && function_exists('add_submenu_page') ) { $menutitle = ''; if ( version_compare( $wp_version, '2.7alpha', '>' ) ) { $menutitle = ''; } $menutitle .= ' ' . __('Adminimize', FB_ADMINIMIZE_TEXTDOMAIN ); $pagehook = add_submenu_page('options-general.php', __('Adminimize Options', FB_ADMINIMIZE_TEXTDOMAIN ), $menutitle, 'unfiltered_html', __FILE__, '_mw_adminimize_options'); if ( version_compare( $wp_version, '2.7alpha', '>' ) ) add_contextual_help( $pagehook, __( 'Documentation', FB_ADMINIMIZE_TEXTDOMAIN ) ); else add_filter( 'contextual_help', '_mw_adminimize_contextual_help' ); add_filter( 'plugin_action_links', '_mw_adminimize_filter_plugin_meta', 10, 2 ); } } /** * Set theme for users */ 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_usermeta($user_id, 'admin_color', $admin_color); } } /** * read otpions */ function _mw_adminimize_getOptionValue($key) { $adminimizeoptions = get_option('mw_adminimize'); if ( isset($adminimizeoptions[$key]) ) return ($adminimizeoptions[$key]); } /** * Update options in database */ function _mw_adminimize_update() { global $menu, $submenu, $adminimizeoptions; $user_roles = get_all_user_roles(); 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_writescroll'])) { $adminimizeoptions['_mw_adminimize_writescroll'] = strip_tags(stripslashes($_POST['_mw_adminimize_writescroll'])); } else { $adminimizeoptions['_mw_adminimize_writescroll'] = 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) { 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(); } 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(); } } // 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 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; } // update update_option('mw_adminimize', $adminimizeoptions); $adminimizeoptions = get_option('mw_adminimize'); $myErrors = new _mw_adminimize_message_class(); $myErrors = '

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

'; echo $myErrors; } /** * Delete options in database */ function _mw_adminimize_deinstall() { delete_option('mw_adminimize'); } /** * Install options in database */ function _mw_adminimize_install() { global $menu, $submenu; $user_roles = 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_global_option_'. $role .'_items'] = array(); $adminimizeoptions['mw_adminimize_disabled_metaboxes_post_'. $role .'_items'] = array(); $adminimizeoptions['mw_adminimize_disabled_metaboxes_page_'. $role .'_items'] = array(); } $adminimizeoptions['mw_adminimize_default_menu'] = $menu; $adminimizeoptions['mw_adminimize_default_submenu'] = $submenu; 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') { $addreferer = 'notexist'; } elseif (file_exists($_FILES['datei']['name'])) { $addreferer = 'exist'; } else { // path for file $str_ziel = WP_CONTENT_DIR . '/' . $_FILES['datei']['name']; // transfer move_uploaded_file($_FILES['datei']['tmp_name'], $str_ziel); // access authorisation 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); update_option('mw_adminimize', $import_file); unlink($str_ziel); $addreferer = 'true'; } $myErrors = new _mw_adminimize_message_class(); $myErrors = '

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

'; echo $myErrors; } ?>