WordPress 4.0.1-scripts
[autoinstalls/wordpress.git] / wp-admin / admin-header.php
index 248897c9877233ba4e4f1e6f0e3278050bf746c8..c9d49d2b1b5418359d2c5076c301f020e26c51fd 100644 (file)
@@ -8,11 +8,11 @@
 
 @header('Content-Type: ' . get_option('html_type') . '; charset=' . get_option('blog_charset'));
 if ( ! defined( 'WP_ADMIN' ) )
-       require_once( './admin.php' );
+       require_once( dirname( __FILE__ ) . '/admin.php' );
 
 // In case admin-header.php is included in a function.
 global $title, $hook_suffix, $current_screen, $wp_locale, $pagenow, $wp_version,
-       $current_site, $update_title, $total_update_count, $parent_file;
+       $update_title, $total_update_count, $parent_file;
 
 // Catch plugins that include admin-header.php before admin.php completes.
 if ( empty( $current_screen ) )
@@ -22,9 +22,9 @@ get_admin_page_title();
 $title = esc_html( strip_tags( $title ) );
 
 if ( is_network_admin() )
-       $admin_title = __( 'Network Admin' );
+       $admin_title = sprintf( __( 'Network Admin: %s' ), esc_html( get_current_site()->site_name ) );
 elseif ( is_user_admin() )
-       $admin_title = __( 'Global Dashboard' );
+       $admin_title = sprintf( __( 'Global Dashboard: %s' ), esc_html( get_current_site()->site_name ) );
 else
        $admin_title = get_bloginfo( 'name' );
 
@@ -33,6 +33,14 @@ if ( $admin_title == $title )
 else
        $admin_title = sprintf( __( '%1$s ‹ %2$s — WordPress' ), $title, $admin_title );
 
+/**
+ * Filter the <title> content for an admin page.
+ *
+ * @since 3.1.0
+ *
+ * @param string $admin_title The page title, with extra context added.
+ * @param string $title       The original page title.
+ */
 $admin_title = apply_filters( 'admin_title', $admin_title, $title );
 
 wp_user_settings();
@@ -45,17 +53,13 @@ _wp_admin_html_begin();
 wp_enqueue_style( 'colors' );
 wp_enqueue_style( 'ie' );
 wp_enqueue_script('utils');
+wp_enqueue_script( 'svg-painter' );
 
 $admin_body_class = preg_replace('/[^a-z0-9_-]+/i', '-', $hook_suffix);
 ?>
 <script type="text/javascript">
 addLoadEvent = function(func){if(typeof jQuery!="undefined")jQuery(document).ready(func);else if(typeof wpOnload!='function'){wpOnload=func;}else{var oldonload=wpOnload;wpOnload=function(){oldonload();func();}}};
-var userSettings = {
-               'url': '<?php echo SITECOOKIEPATH; ?>',
-               'uid': '<?php if ( ! isset($current_user) ) $current_user = wp_get_current_user(); echo $current_user->ID; ?>',
-               'time':'<?php echo time() ?>'
-       },
-       ajaxurl = '<?php echo admin_url( 'admin-ajax.php', 'relative' ); ?>',
+var ajaxurl = '<?php echo admin_url( 'admin-ajax.php', 'relative' ); ?>',
        pagenow = '<?php echo $current_screen->id; ?>',
        typenow = '<?php echo $current_screen->post_type; ?>',
        adminpage = '<?php echo $admin_body_class; ?>',
@@ -63,25 +67,78 @@ var userSettings = {
        decimalPoint = '<?php echo addslashes( $wp_locale->number_format['decimal_point'] ); ?>',
        isRtl = <?php echo (int) is_rtl(); ?>;
 </script>
+<meta name="viewport" content="width=device-width,initial-scale=1.0">
 <?php
 
-do_action('admin_enqueue_scripts', $hook_suffix);
-do_action("admin_print_styles-$hook_suffix");
-do_action('admin_print_styles');
-do_action("admin_print_scripts-$hook_suffix");
-do_action('admin_print_scripts');
-do_action("admin_head-$hook_suffix");
-do_action('admin_head');
+/**
+ * Enqueue scripts for all admin pages.
+ *
+ * @since 2.8.0
+ *
+ * @param string $hook_suffix The current admin page.
+ */
+do_action( 'admin_enqueue_scripts', $hook_suffix );
+
+/**
+ * Fires when styles are printed for a specific admin page based on $hook_suffix.
+ *
+ * @since 2.6.0
+ */
+do_action( "admin_print_styles-$hook_suffix" );
+
+/**
+ * Fires when styles are printed for all admin pages.
+ *
+ * @since 2.6.0
+ */
+do_action( 'admin_print_styles' );
+
+/**
+ * Fires when scripts are printed for a specific admin page based on $hook_suffix.
+ *
+ * @since 2.1.0
+ */
+do_action( "admin_print_scripts-$hook_suffix" );
+
+/**
+ * Fires when scripts are printed for all admin pages.
+ *
+ * @since 2.1.0
+ */
+do_action( 'admin_print_scripts' );
+
+/**
+ * Fires in <head> for a specific admin page based on $hook_suffix.
+ *
+ * @since 2.1.0
+ */
+do_action( "admin_head-$hook_suffix" );
+
+/**
+ * Fires in <head> for all admin pages.
+ *
+ * @since 2.1.0
+ */
+do_action( 'admin_head' );
 
 if ( get_user_setting('mfold') == 'f' )
        $admin_body_class .= ' folded';
 
+if ( !get_user_setting('unfold') )
+       $admin_body_class .= ' auto-fold';
+
 if ( is_admin_bar_showing() )
        $admin_body_class .= ' admin-bar';
 
 if ( is_rtl() )
        $admin_body_class .= ' rtl';
 
+if ( $current_screen->post_type )
+       $admin_body_class .= ' post-type-' . $current_screen->post_type;
+
+if ( $current_screen->taxonomy )
+       $admin_body_class .= ' taxonomy-' . $current_screen->taxonomy;
+
 $admin_body_class .= ' branch-' . str_replace( array( '.', ',' ), '-', floatval( $wp_version ) );
 $admin_body_class .= ' version-' . str_replace( '.', '-', preg_replace( '/^([.0-9]+).*/', '$1', $wp_version ) );
 $admin_body_class .= ' admin-color-' . sanitize_html_class( get_user_option( 'admin_color' ), 'fresh' );
@@ -90,28 +147,53 @@ $admin_body_class .= ' locale-' . sanitize_html_class( strtolower( str_replace(
 if ( wp_is_mobile() )
        $admin_body_class .= ' mobile';
 
-$admin_body_class .= ' no-customize-support';
+if ( is_multisite() )
+       $admin_body_class .= ' multisite';
+
+if ( is_network_admin() )
+       $admin_body_class .= ' network-admin';
+
+$admin_body_class .= ' no-customize-support no-svg';
 
 ?>
 </head>
-<body class="wp-admin no-js <?php echo apply_filters( 'admin_body_class', '' ) . " $admin_body_class"; ?>">
+<?php
+/**
+ * Filter the admin <body> CSS classes.
+ *
+ * This filter differs from the post_class or body_class filters in two important ways:
+ * 1. $classes is a space-separated string of class names instead of an array.
+ * 2. Not all core admin classes are filterable, notably: wp-admin, wp-core-ui, and no-js cannot be removed.
+ *
+ * @since 2.3.0
+ *
+ * @param string $classes Space-separated string of CSS classes.
+ */
+?>
+<body class="wp-admin wp-core-ui no-js <?php echo apply_filters( 'admin_body_class', '' ) . " $admin_body_class"; ?>">
 <script type="text/javascript">
        document.body.className = document.body.className.replace('no-js','js');
 </script>
 
 <?php
-// If the customize-loader script is enqueued, make sure the customize
-// body classes are correct as early as possible.
-if ( wp_script_is( 'customize-loader', 'queue' ) && current_user_can( 'edit_theme_options' ) )
+// Make sure the customize body classes are correct as early as possible.
+if ( current_user_can( 'customize' ) ) {
        wp_customize_support_script();
+}
 ?>
 
 <div id="wpwrap">
+<a tabindex="1" href="#wpbody-content" class="screen-reader-shortcut"><?php _e('Skip to main content'); ?></a>
 <?php require(ABSPATH . 'wp-admin/menu-header.php'); ?>
 <div id="wpcontent">
 
 <?php
-do_action('in_admin_header');
+/**
+ * Fires at the beginning of the content section in an admin page.
+ *
+ * @since 3.0.0
+ */
+do_action( 'in_admin_header' );
 ?>
 
 <div id="wpbody">
@@ -122,19 +204,40 @@ $current_screen->set_parentage( $parent_file );
 
 ?>
 
-<div id="wpbody-content">
+<div id="wpbody-content" aria-label="<?php esc_attr_e('Main content'); ?>" tabindex="0">
 <?php
 
 $current_screen->render_screen_meta();
 
-if ( is_network_admin() )
-       do_action('network_admin_notices');
-elseif ( is_user_admin() )
-       do_action('user_admin_notices');
-else
-       do_action('admin_notices');
+if ( is_network_admin() ) {
+       /**
+        * Print network admin screen notices.
+        *
+        * @since 3.1.0
+        */
+       do_action( 'network_admin_notices' );
+} elseif ( is_user_admin() ) {
+       /**
+        * Print user admin screen notices.
+        *
+        * @since 3.1.0
+        */
+       do_action( 'user_admin_notices' );
+} else {
+       /**
+        * Print admin screen notices.
+        *
+        * @since 3.1.0
+        */
+       do_action( 'admin_notices' );
+}
 
-do_action('all_admin_notices');
+/**
+ * Print generic admin screen notices.
+ *
+ * @since 3.1.0
+ */
+do_action( 'all_admin_notices' );
 
 if ( $parent_file == 'options-general.php' )
        require(ABSPATH . 'wp-admin/options-head.php');