From: Edward Z. Yang Date: Sun, 8 Jan 2012 17:17:56 +0000 (-0500) Subject: Wordpress 3.3.1 X-Git-Tag: wordpress-3.3.1 X-Git-Url: https://scripts.mit.edu/gitweb/autoinstalls/wordpress.git/commitdiff_plain/341dfbb66f24f5145174c373267f889c31615cc5?hp=5aa86a9053fb0fa15846bb60aac2fb8fdfff524a Wordpress 3.3.1 Signed-off-by: Edward Z. Yang --- diff --git a/readme.html b/readme.html index 72e21ee6..66c102f7 100644 --- a/readme.html +++ b/readme.html @@ -8,7 +8,7 @@

WordPress -
Version 3.3 +
Version 3.3.1

Semantic Personal Publishing Platform

diff --git a/wp-admin/about.php b/wp-admin/about.php index 21156f0f..470b5579 100644 --- a/wp-admin/about.php +++ b/wp-admin/about.php @@ -33,6 +33,14 @@ include( './admin-header.php' ); +
+

+

Version %1$s addressed a security issue and fixed %2$s bug.', + 'Version %1$s addressed a security issue and fixed %2$s bugs.', 15 ), '3.3.1', number_format_i18n( 15 ) ); ?> + the release notes.' ), 'http://codex.wordpress.org/Version_3.3.1' ); ?> +

+
+

diff --git a/wp-admin/includes/dashboard.php b/wp-admin/includes/dashboard.php index 80be66bd..008a4fdd 100644 --- a/wp-admin/includes/dashboard.php +++ b/wp-admin/includes/dashboard.php @@ -395,7 +395,7 @@ function wp_dashboard_right_now() { $sidebars_widgets = wp_get_sidebars_widgets(); $num_widgets = 0; foreach ( (array) $sidebars_widgets as $k => $v ) { - if ( 'wp_inactive_widgets' == $k ) + if ( 'wp_inactive_widgets' == $k || 'orphaned_widgets' == substr( $k, 0, 16 ) ) continue; if ( is_array($v) ) $num_widgets = $num_widgets + count($v); diff --git a/wp-admin/includes/ms.php b/wp-admin/includes/ms.php index 1b2c7e78..2c275dfc 100644 --- a/wp-admin/includes/ms.php +++ b/wp-admin/includes/ms.php @@ -385,9 +385,11 @@ function get_upload_space_available() { */ function get_space_allowed() { $space_allowed = get_option( 'blog_upload_space' ); - if ( $space_allowed === false ) + + if ( ! is_numeric( $space_allowed ) ) $space_allowed = get_site_option( 'blog_upload_space' ); - if ( empty( $space_allowed ) || !is_numeric( $space_allowed ) ) + + if ( empty( $space_allowed ) || ! is_numeric( $space_allowed ) ) $space_allowed = 50; return $space_allowed; diff --git a/wp-admin/includes/template.php b/wp-admin/includes/template.php index 010c057d..3d0c1162 100644 --- a/wp-admin/includes/template.php +++ b/wp-admin/includes/template.php @@ -334,7 +334,7 @@ function wp_comment_reply($position = '1', $checkbox = false, $mode = 'single',
'strong,em,link,block,del,ins,img,ul,ol,li,code,spell,close' ); - wp_editor( '', 'replycontent', array( 'media_buttons' => false, 'tinymce' => false, 'quicktags' => $quicktags_settings ) ); + wp_editor( '', 'replycontent', array( 'media_buttons' => false, 'tinymce' => false, 'quicktags' => $quicktags_settings, 'tabindex' => 104 ) ); ?>
@@ -1761,11 +1761,11 @@ final class WP_Internal_Pointers { } public static function pointer_wp330_toolbar() { - $content = '

' . esc_js( __( 'New Feature: Toolbar' ) ). '

'; - $content .= '

' . esc_js( __( 'We’ve combined the admin bar and the old Dashboard header into one persistent toolbar. Hover over the toolbar items to see what’s new.' ) ) . '

'; + $content = '

' . __( 'New Feature: Toolbar' ) . '

'; + $content .= '

' . __( 'We’ve combined the admin bar and the old Dashboard header into one persistent toolbar. Hover over the toolbar items to see what’s new.' ) . '

'; if ( is_multisite() && is_super_admin() ) - $content .= '

' .esc_js( __( 'Network Admin is now located in the My Sites menu.' ) ) . '

'; + $content .= '

' . __( 'Network Admin is now located in the My Sites menu.' ) . '

'; WP_Internal_Pointers::print_js( 'wp330_toolbar', '#wpadminbar', array( 'content' => $content, @@ -1779,8 +1779,8 @@ final class WP_Internal_Pointers { * @since 3.3.0 */ public static function pointer_wp330_media_uploader() { - $content = '

' . esc_js( __( 'Updated Media Uploader' ) ) . '

'; - $content .= '

' . esc_js( __( 'The single media icon now launches the uploader for all file types, and the new drag and drop interface makes uploading a breeze.' ) ) . '

'; + $content = '

' . __( 'Updated Media Uploader' ) . '

'; + $content .= '

' . __( 'The single media icon now launches the uploader for all file types, and the new drag and drop interface makes uploading a breeze.' ) . '

'; WP_Internal_Pointers::print_js( 'wp330_media_uploader', '#content-add_media', array( 'content' => $content, @@ -1794,8 +1794,8 @@ final class WP_Internal_Pointers { * @since 3.3.0 */ public static function pointer_wp330_saving_widgets() { - $content = '

' . esc_js( __( 'New Feature: Saving Widgets' ) ) . '

'; - $content .= '

' . esc_js( __( 'If you change your mind and revert to your previous theme, we’ll put the widgets back the way you had them.' ) ) . '

'; + $content = '

' . __( 'New Feature: Saving Widgets' ) . '

'; + $content .= '

' . __( 'If you change your mind and revert to your previous theme, we’ll put the widgets back the way you had them.' ). '

'; WP_Internal_Pointers::print_js( 'wp330_saving_widgets', '#message2', array( 'content' => $content, diff --git a/wp-admin/includes/update-core.php b/wp-admin/includes/update-core.php index bfdb2b09..46979d78 100644 --- a/wp-admin/includes/update-core.php +++ b/wp-admin/includes/update-core.php @@ -406,7 +406,7 @@ function update_core($from, $to) { $mysql_version = $wpdb->db_version(); $required_php_version = '5.2.4'; $required_mysql_version = '5.0'; - $wp_version = '3.3'; + $wp_version = '3.3.1'; $php_compat = version_compare( $php_version, $required_php_version, '>=' ); if ( file_exists( WP_CONTENT_DIR . '/db.php' ) && empty( $wpdb->is_mysql ) ) $mysql_compat = true; diff --git a/wp-admin/js/common.dev.js b/wp-admin/js/common.dev.js index b8ee100e..4918f1f7 100644 --- a/wp-admin/js/common.dev.js +++ b/wp-admin/js/common.dev.js @@ -209,6 +209,7 @@ $(document).ready( function() { else if ( m.css('marginTop') ) m.css({'marginTop':''}); + menu.find('.wp-submenu').removeClass('sub-open'); m.addClass('sub-open'); }, out: function(){ diff --git a/wp-admin/js/common.js b/wp-admin/js/common.js index d03d5b49..c812f3fc 100644 --- a/wp-admin/js/common.js +++ b/wp-admin/js/common.js @@ -1 +1 @@ -var showNotice,adminMenu,columns,validateForm,screenMeta,autofold_menu;(function(a){adminMenu={init:function(){},fold:function(){},restoreMenuState:function(){},toggle:function(){},favorites:function(){}};columns={init:function(){var b=this;a(".hide-column-tog","#adv-settings").click(function(){var d=a(this),c=d.val();if(d.prop("checked")){b.checked(c)}else{b.unchecked(c)}columns.saveManageColumnsState()})},saveManageColumnsState:function(){var b=this.hidden();a.post(ajaxurl,{action:"hidden-columns",hidden:b,screenoptionnonce:a("#screenoptionnonce").val(),page:pagenow})},checked:function(b){a(".column-"+b).show();this.colSpanChange(+1)},unchecked:function(b){a(".column-"+b).hide();this.colSpanChange(-1)},hidden:function(){return a(".manage-column").filter(":hidden").map(function(){return this.id}).get().join(",")},useCheckboxesForHidden:function(){this.hidden=function(){return a(".hide-column-tog").not(":checked").map(function(){var b=this.id;return b.substring(b,b.length-5)}).get().join(",")}},colSpanChange:function(b){var d=a("table").find(".colspanchange"),c;if(!d.length){return}c=parseInt(d.attr("colspan"),10)+b;d.attr("colspan",c.toString())}};a(document).ready(function(){columns.init()});validateForm=function(b){return !a(b).find(".form-required").filter(function(){return a("input:visible",this).val()==""}).addClass("form-invalid").find("input:visible").change(function(){a(this).closest(".form-invalid").removeClass("form-invalid")}).size()};showNotice={warn:function(){var b=commonL10n.warnDelete||"";if(confirm(b)){return true}return false},note:function(b){alert(b)}};screenMeta={element:null,toggles:null,page:null,init:function(){this.element=a("#screen-meta");this.toggles=a(".screen-meta-toggle a");this.page=a("#wpcontent");this.toggles.click(this.toggleEvent)},toggleEvent:function(c){var b=a(this.href.replace(/.+#/,"#"));c.preventDefault();if(!b.length){return}if(b.is(":visible")){screenMeta.close(b,a(this))}else{screenMeta.open(b,a(this))}},open:function(b,c){a(".screen-meta-toggle").not(c.parent()).css("visibility","hidden");b.parent().show();b.slideDown("fast",function(){c.addClass("screen-meta-active")})},close:function(b,c){b.slideUp("fast",function(){c.removeClass("screen-meta-active");a(".screen-meta-toggle").css("visibility","");b.parent().hide()})}};a(".contextual-help-tabs").delegate("a","click focus",function(d){var c=a(this),b;d.preventDefault();if(c.is(".active a")){return false}a(".contextual-help-tabs .active").removeClass("active");c.parent("li").addClass("active");b=a(c.attr("href"));a(".help-tab-content").not(b).removeClass("active").hide();b.addClass("active").show()});a(document).ready(function(){var j=false,c,e,k,i,b=a("#adminmenu"),d=a("input.current-page"),f=d.val(),h,g;g=function(l,n){var o=a(n),m=o.attr("tabindex");if(m){o.attr("tabindex","0").attr("tabindex",m)}};a("#collapse-menu",b).click(function(){var l=a(document.body);if(l.hasClass("folded")){l.removeClass("folded");setUserSetting("mfold","o")}else{l.addClass("folded");setUserSetting("mfold","f")}return false});a("li.wp-has-submenu",b).hoverIntent({over:function(t){var u,r,l,s,n=a(this).find(".wp-submenu"),v,p,q;if(!a(document.body).hasClass("folded")&&a(this).hasClass("wp-menu-open")){return}v=a(this).offset().top;p=a(window).scrollTop();q=v-p-30;u=v+n.height()+1;r=a("#wpwrap").height();l=60+u-r;s=a(window).height()+p-15;if(s<(u-l)){l=u-s}if(l>q){l=q}if(l>1){n.css({marginTop:"-"+l+"px"})}else{if(n.css("marginTop")){n.css({marginTop:""})}}n.addClass("sub-open")},out:function(){a(this).find(".wp-submenu").removeClass("sub-open")},timeout:200,sensitivity:7,interval:90});a("li.wp-has-submenu > a.wp-not-current-submenu",b).bind("keydown.adminmenu",function(m){if(m.which!=13){return}var l=a(m.target);m.stopPropagation();m.preventDefault();b.find(".wp-submenu").removeClass("sub-open");l.siblings(".wp-submenu").toggleClass("sub-open").find('a[role="menuitem"]').each(g)}).each(g);a('a[role="menuitem"]',b).bind("keydown.adminmenu",function(m){if(m.which!=27){return}var l=a(m.target);m.stopPropagation();m.preventDefault();l.add(l.siblings()).closest(".sub-open").removeClass("sub-open").siblings("a.wp-not-current-submenu").focus()});a("div.wrap h2:first").nextAll("div.updated, div.error").addClass("below-h2");a("div.updated, div.error").not(".below-h2, .inline").insertAfter(a("div.wrap h2:first"));screenMeta.init();a("tbody").children().children(".check-column").find(":checkbox").click(function(l){if("undefined"==l.shiftKey){return true}if(l.shiftKey){if(!j){return true}c=a(j).closest("form").find(":checkbox");e=c.index(j);k=c.index(this);i=a(this).prop("checked");if(0=0){l=this.scrollTop;n.value=r.substring(0,s).concat("\t",r.substring(m));n.selectionStart=n.selectionEnd=s+1;this.scrollTop=l}}if(q.stopPropagation){q.stopPropagation()}if(q.preventDefault){q.preventDefault()}});a("#newcontent").bind("blur.wpevent_InsertTab",function(l){if(this.lastKey&&9==this.lastKey){this.focus()}});if(d.length){d.closest("form").submit(function(l){if(a('select[name="action"]').val()==-1&&a('select[name="action2"]').val()==-1&&d.val()==f){d.val("1")}})}a(window).bind("resize.autofold",function(){if(getUserSetting("mfold")=="f"){return}var l=a(window).width();if(l<=800){if(!h){a(document.body).addClass("folded");h=true}}else{if(h){a(document.body).removeClass("folded");h=false}}}).triggerHandler("resize")});a(document).bind("wp_CloseOnEscape",function(c,b){if(typeof(b.cb)!="function"){return}if(typeof(b.condition)!="function"||b.condition()){b.cb()}return true})})(jQuery); \ No newline at end of file +var showNotice,adminMenu,columns,validateForm,screenMeta,autofold_menu;(function(a){adminMenu={init:function(){},fold:function(){},restoreMenuState:function(){},toggle:function(){},favorites:function(){}};columns={init:function(){var b=this;a(".hide-column-tog","#adv-settings").click(function(){var d=a(this),c=d.val();if(d.prop("checked")){b.checked(c)}else{b.unchecked(c)}columns.saveManageColumnsState()})},saveManageColumnsState:function(){var b=this.hidden();a.post(ajaxurl,{action:"hidden-columns",hidden:b,screenoptionnonce:a("#screenoptionnonce").val(),page:pagenow})},checked:function(b){a(".column-"+b).show();this.colSpanChange(+1)},unchecked:function(b){a(".column-"+b).hide();this.colSpanChange(-1)},hidden:function(){return a(".manage-column").filter(":hidden").map(function(){return this.id}).get().join(",")},useCheckboxesForHidden:function(){this.hidden=function(){return a(".hide-column-tog").not(":checked").map(function(){var b=this.id;return b.substring(b,b.length-5)}).get().join(",")}},colSpanChange:function(b){var d=a("table").find(".colspanchange"),c;if(!d.length){return}c=parseInt(d.attr("colspan"),10)+b;d.attr("colspan",c.toString())}};a(document).ready(function(){columns.init()});validateForm=function(b){return !a(b).find(".form-required").filter(function(){return a("input:visible",this).val()==""}).addClass("form-invalid").find("input:visible").change(function(){a(this).closest(".form-invalid").removeClass("form-invalid")}).size()};showNotice={warn:function(){var b=commonL10n.warnDelete||"";if(confirm(b)){return true}return false},note:function(b){alert(b)}};screenMeta={element:null,toggles:null,page:null,init:function(){this.element=a("#screen-meta");this.toggles=a(".screen-meta-toggle a");this.page=a("#wpcontent");this.toggles.click(this.toggleEvent)},toggleEvent:function(c){var b=a(this.href.replace(/.+#/,"#"));c.preventDefault();if(!b.length){return}if(b.is(":visible")){screenMeta.close(b,a(this))}else{screenMeta.open(b,a(this))}},open:function(b,c){a(".screen-meta-toggle").not(c.parent()).css("visibility","hidden");b.parent().show();b.slideDown("fast",function(){c.addClass("screen-meta-active")})},close:function(b,c){b.slideUp("fast",function(){c.removeClass("screen-meta-active");a(".screen-meta-toggle").css("visibility","");b.parent().hide()})}};a(".contextual-help-tabs").delegate("a","click focus",function(d){var c=a(this),b;d.preventDefault();if(c.is(".active a")){return false}a(".contextual-help-tabs .active").removeClass("active");c.parent("li").addClass("active");b=a(c.attr("href"));a(".help-tab-content").not(b).removeClass("active").hide();b.addClass("active").show()});a(document).ready(function(){var j=false,c,e,k,i,b=a("#adminmenu"),d=a("input.current-page"),f=d.val(),h,g;g=function(l,n){var o=a(n),m=o.attr("tabindex");if(m){o.attr("tabindex","0").attr("tabindex",m)}};a("#collapse-menu",b).click(function(){var l=a(document.body);if(l.hasClass("folded")){l.removeClass("folded");setUserSetting("mfold","o")}else{l.addClass("folded");setUserSetting("mfold","f")}return false});a("li.wp-has-submenu",b).hoverIntent({over:function(t){var u,r,l,s,n=a(this).find(".wp-submenu"),v,p,q;if(!a(document.body).hasClass("folded")&&a(this).hasClass("wp-menu-open")){return}v=a(this).offset().top;p=a(window).scrollTop();q=v-p-30;u=v+n.height()+1;r=a("#wpwrap").height();l=60+u-r;s=a(window).height()+p-15;if(s<(u-l)){l=u-s}if(l>q){l=q}if(l>1){n.css({marginTop:"-"+l+"px"})}else{if(n.css("marginTop")){n.css({marginTop:""})}}b.find(".wp-submenu").removeClass("sub-open");n.addClass("sub-open")},out:function(){a(this).find(".wp-submenu").removeClass("sub-open")},timeout:200,sensitivity:7,interval:90});a("li.wp-has-submenu > a.wp-not-current-submenu",b).bind("keydown.adminmenu",function(m){if(m.which!=13){return}var l=a(m.target);m.stopPropagation();m.preventDefault();b.find(".wp-submenu").removeClass("sub-open");l.siblings(".wp-submenu").toggleClass("sub-open").find('a[role="menuitem"]').each(g)}).each(g);a('a[role="menuitem"]',b).bind("keydown.adminmenu",function(m){if(m.which!=27){return}var l=a(m.target);m.stopPropagation();m.preventDefault();l.add(l.siblings()).closest(".sub-open").removeClass("sub-open").siblings("a.wp-not-current-submenu").focus()});a("div.wrap h2:first").nextAll("div.updated, div.error").addClass("below-h2");a("div.updated, div.error").not(".below-h2, .inline").insertAfter(a("div.wrap h2:first"));screenMeta.init();a("tbody").children().children(".check-column").find(":checkbox").click(function(l){if("undefined"==l.shiftKey){return true}if(l.shiftKey){if(!j){return true}c=a(j).closest("form").find(":checkbox");e=c.index(j);k=c.index(this);i=a(this).prop("checked");if(0=0){l=this.scrollTop;n.value=r.substring(0,s).concat("\t",r.substring(m));n.selectionStart=n.selectionEnd=s+1;this.scrollTop=l}}if(q.stopPropagation){q.stopPropagation()}if(q.preventDefault){q.preventDefault()}});a("#newcontent").bind("blur.wpevent_InsertTab",function(l){if(this.lastKey&&9==this.lastKey){this.focus()}});if(d.length){d.closest("form").submit(function(l){if(a('select[name="action"]').val()==-1&&a('select[name="action2"]').val()==-1&&d.val()==f){d.val("1")}})}a(window).bind("resize.autofold",function(){if(getUserSetting("mfold")=="f"){return}var l=a(window).width();if(l<=800){if(!h){a(document.body).addClass("folded");h=true}}else{if(h){a(document.body).removeClass("folded");h=false}}}).triggerHandler("resize")});a(document).bind("wp_CloseOnEscape",function(c,b){if(typeof(b.cb)!="function"){return}if(typeof(b.condition)!="function"||b.condition()){b.cb()}return true})})(jQuery); \ No newline at end of file diff --git a/wp-admin/load-scripts.php b/wp-admin/load-scripts.php index 95a0c0cc..833677c2 100644 --- a/wp-admin/load-scripts.php +++ b/wp-admin/load-scripts.php @@ -92,6 +92,13 @@ function includes_url() {} */ function wp_guess_url() {} +if ( ! function_exists( 'json_encode' ) ) : +/** + * @ignore + */ +function json_encode() {} +endif; + function get_file($path) { if ( function_exists('realpath') ) diff --git a/wp-admin/press-this.php b/wp-admin/press-this.php index 0c36dbf7..f368b213 100644 --- a/wp-admin/press-this.php +++ b/wp-admin/press-this.php @@ -314,6 +314,20 @@ var photostorage = false; do_action('admin_print_scripts'); do_action('admin_head'); ?> + - +
diff --git a/wp-admin/users.php b/wp-admin/users.php index f124b9ca..5fefb427 100644 --- a/wp-admin/users.php +++ b/wp-admin/users.php @@ -100,10 +100,11 @@ case 'promote': if ( ! current_user_can('promote_user', $id) ) wp_die(__('You can’t edit that user.')); - // The new role of the current user must also have the promote_users cap or be a super admin - if ( $id == $current_user->ID && ! is_super_admin() && ! $wp_roles->role_objects[ $_REQUEST['new_role'] ]->has_cap('promote_users') ) { - $update = 'err_admin_role'; - continue; + // The new role of the current user must also have the promote_users cap or be a multisite super admin + if ( $id == $current_user->ID && ! $wp_roles->role_objects[ $_REQUEST['new_role'] ]->has_cap('promote_users') + && ! ( is_multisite() && is_super_admin() ) ) { + $update = 'err_admin_role'; + continue; } // If the user doesn't already belong to the blog, bail. diff --git a/wp-includes/capabilities.php b/wp-includes/capabilities.php index 5a8224db..19bdaa48 100644 --- a/wp-includes/capabilities.php +++ b/wp-includes/capabilities.php @@ -487,10 +487,15 @@ class WP_User { static function get_data_by( $field, $value ) { global $wpdb; - if ( 'id' == $field ) + if ( 'id' == $field ) { + // Make sure the value is numeric to avoid casting objects, for example, + // to int 1. + if ( ! is_numeric( $value ) ) + return false; $value = absint( $value ); - else + } else { $value = trim( $value ); + } if ( !$value ) return false; diff --git a/wp-includes/class-wp-admin-bar.php b/wp-includes/class-wp-admin-bar.php index 8ee6d1cf..1b8f8b33 100644 --- a/wp-includes/class-wp-admin-bar.php +++ b/wp-includes/class-wp-admin-bar.php @@ -196,7 +196,8 @@ class WP_Admin_Bar { public function render() { $root = $this->_bind(); - $this->_render( $root ); + if ( $root ) + $this->_render( $root ); } final protected function _bind() { diff --git a/wp-includes/functions.php b/wp-includes/functions.php index 6b5aa505..521b0dd0 100644 --- a/wp-includes/functions.php +++ b/wp-includes/functions.php @@ -2896,6 +2896,13 @@ function _default_wp_die_handler( $message, $title = '', $args = array() ) { -moz-box-sizing: content-box; -webkit-box-sizing: content-box; box-sizing: content-box; + background-color: #f5f5f5; + background-image: -ms-linear-gradient(top, #ffffff, #f2f2f2); + background-image: -moz-linear-gradient(top, #ffffff, #f2f2f2); + background-image: -o-linear-gradient(top, #ffffff, #f2f2f2); + background-image: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#f2f2f2)); + background-image: -webkit-linear-gradient(top, #ffffff, #f2f2f2); + background-image: linear-gradient(top, #ffffff, #f2f2f2); } .button:hover { @@ -2903,13 +2910,15 @@ function _default_wp_die_handler( $message, $title = '', $args = array() ) { border-color: #666; } - .button { - background: #f2f2f2 url(/wp-admin/images/white-grad.png) repeat-x scroll left top; - } - .button:active { - background: #eee url(/wp-admin/images/white-grad-active.png) repeat-x scroll left top; + background-image: -ms-linear-gradient(top, #f2f2f2, #ffffff); + background-image: -moz-linear-gradient(top, #f2f2f2, #ffffff); + background-image: -o-linear-gradient(top, #f2f2f2, #ffffff); + background-image: -webkit-gradient(linear, left top, left bottom, from(#f2f2f2), to(#ffffff)); + background-image: -webkit-linear-gradient(top, #f2f2f2, #ffffff); + background-image: linear-gradient(top, #f2f2f2, #ffffff); } + body { font-family: Tahoma, Arial; } diff --git a/wp-includes/functions.wp-styles.php b/wp-includes/functions.wp-styles.php index 8a887e8e..db8b583e 100644 --- a/wp-includes/functions.wp-styles.php +++ b/wp-includes/functions.wp-styles.php @@ -18,10 +18,12 @@ * @return bool True on success, false on failure. */ function wp_print_styles( $handles = false ) { - do_action( 'wp_print_styles' ); if ( '' === $handles ) // for wp_head $handles = false; + if ( ! $handles ) + do_action( 'wp_print_styles' ); + global $wp_styles; if ( ! is_a( $wp_styles, 'WP_Styles' ) ) { if ( ! did_action( 'init' ) ) diff --git a/wp-includes/nav-menu-template.php b/wp-includes/nav-menu-template.php index ad6b5aa9..f412c8db 100644 --- a/wp-includes/nav-menu-template.php +++ b/wp-includes/nav-menu-template.php @@ -362,10 +362,11 @@ function _wp_menu_item_classes_by_context( &$menu_items ) { } elseif ( 'custom' == $menu_item->object ) { $_root_relative_current = untrailingslashit( $_SERVER['REQUEST_URI'] ); $current_url = ( is_ssl() ? 'https://' : 'http://' ) . $_SERVER['HTTP_HOST'] . $_root_relative_current; - $item_url = untrailingslashit( strpos( $menu_item->url, '#' ) ? substr( $menu_item->url, 0, strpos( $menu_item->url, '#' ) ) : $menu_item->url ); + $raw_item_url = strpos( $menu_item->url, '#' ) ? substr( $menu_item->url, 0, strpos( $menu_item->url, '#' ) ) : $menu_item->url; + $item_url = untrailingslashit( $raw_item_url ); $_indexless_current = untrailingslashit( preg_replace( '/index.php$/', '', $current_url ) ); - if ( in_array( $item_url, array( $current_url, $_indexless_current, $_root_relative_current ) ) ) { + if ( $raw_item_url && in_array( $item_url, array( $current_url, $_indexless_current, $_root_relative_current ) ) ) { $classes[] = 'current-menu-item'; $menu_items[$key]->current = true; $_anc_id = (int) $menu_item->db_id; diff --git a/wp-includes/script-loader.php b/wp-includes/script-loader.php index 47a00fb1..3a2fbf27 100644 --- a/wp-includes/script-loader.php +++ b/wp-includes/script-loader.php @@ -61,7 +61,7 @@ function wp_default_scripts( &$scripts ) { $scripts->add( 'utils', "/wp-admin/js/utils$suffix.js", false, '20101110' ); - $scripts->add( 'common', "/wp-admin/js/common$suffix.js", array('jquery', 'hoverIntent', 'utils'), '20111130', 1 ); + $scripts->add( 'common', "/wp-admin/js/common$suffix.js", array('jquery', 'hoverIntent', 'utils'), '20120102', 1 ); $scripts->localize( 'common', 'commonL10n', array( 'warnDelete' => __("You are about to permanently delete the selected items.\n 'Cancel' to stop, 'OK' to delete.") ) ); diff --git a/wp-includes/user.php b/wp-includes/user.php index c4edb184..2b0508fa 100644 --- a/wp-includes/user.php +++ b/wp-includes/user.php @@ -696,7 +696,7 @@ function get_blogs_of_user( $user_id, $all = false ) { foreach ( $keys as $key ) { if ( 'capabilities' !== substr( $key, -12 ) ) continue; - if ( 0 !== strpos( $key, $wpdb->base_prefix ) ) + if ( $wpdb->base_prefix && 0 !== strpos( $key, $wpdb->base_prefix ) ) continue; $blog_id = str_replace( array( $wpdb->base_prefix, '_capabilities' ), '', $key ); if ( ! is_numeric( $blog_id ) ) @@ -931,7 +931,7 @@ function setup_userdata($for_user_id = '') { else $user = new WP_User($for_user_id); - $userdata = $user->data; + $userdata = $user; $user_ID = (int) $user->ID; $user_level = (int) isset($user->user_level) ? $user->user_level : 0; diff --git a/wp-includes/version.php b/wp-includes/version.php index 4caf6fce..f6d73b90 100644 --- a/wp-includes/version.php +++ b/wp-includes/version.php @@ -4,7 +4,7 @@ * * @global string $wp_version */ -$wp_version = '3.3'; +$wp_version = '3.3.1'; /** * Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.