X-Git-Url: https://scripts.mit.edu/gitweb/autoinstalls/wordpress.git/blobdiff_plain/596d585e1dc1eb25bccd3781e37210a4e2504179..6c8f14c09105d0afa4c1574215c59b5021040e76:/wp-includes/option.php diff --git a/wp-includes/option.php b/wp-includes/option.php index 33897b60..722d1f30 100644 --- a/wp-includes/option.php +++ b/wp-includes/option.php @@ -32,15 +32,15 @@ function get_option( $option, $default = false ) { global $wpdb; + $option = trim( $option ); + if ( empty( $option ) ) + return false; + // Allow plugins to short-circuit options. $pre = apply_filters( 'pre_option_' . $option, false ); if ( false !== $pre ) return $pre; - $option = trim($option); - if ( empty($option) ) - return false; - if ( defined( 'WP_SETUP_CONFIG' ) ) return false; @@ -174,7 +174,7 @@ function wp_load_core_site_options( $site_id = null ) { if ( empty($site_id) ) $site_id = $wpdb->siteid; - $core_options = array('site_name', 'siteurl', 'active_sitewide_plugins', '_site_transient_timeout_theme_roots', '_site_transient_theme_roots', 'site_admins', 'can_compress_scripts', 'global_terms_enabled' ); + $core_options = array('site_name', 'siteurl', 'active_sitewide_plugins', '_site_transient_timeout_theme_roots', '_site_transient_theme_roots', 'site_admins', 'can_compress_scripts', 'global_terms_enabled', 'ms_files_rewriting' ); $core_options_in = "'" . implode("', '", $core_options) . "'"; $options = $wpdb->get_results( $wpdb->prepare("SELECT meta_key, meta_value FROM $wpdb->sitemeta WHERE meta_key IN ($core_options_in) AND site_id = %d", $site_id) ); @@ -540,6 +540,11 @@ function wp_user_settings() { if ( ! $user = wp_get_current_user() ) return; + if ( is_super_admin( $user->ID ) && + ! in_array( get_current_blog_id(), array_keys( get_blogs_of_user( $user->ID ) ) ) + ) + return; + $settings = get_user_option( 'user-settings', $user->ID ); if ( isset( $_COOKIE['wp-settings-' . $user->ID] ) ) { @@ -560,8 +565,8 @@ function wp_user_settings() { } } - setcookie( 'wp-settings-' . $user->ID, $settings, time() + 31536000, SITECOOKIEPATH ); - setcookie( 'wp-settings-time-' . $user->ID, time(), time() + 31536000, SITECOOKIEPATH ); + setcookie( 'wp-settings-' . $user->ID, $settings, time() + YEAR_IN_SECONDS, SITECOOKIEPATH ); + setcookie( 'wp-settings-time-' . $user->ID, time(), time() + YEAR_IN_SECONDS, SITECOOKIEPATH ); $_COOKIE['wp-settings-' . $user->ID] = $settings; } @@ -697,6 +702,11 @@ function wp_set_all_user_settings($all) { if ( ! $user = wp_get_current_user() ) return false; + if ( is_super_admin( $user->ID ) && + ! in_array( get_current_blog_id(), array_keys( get_blogs_of_user( $user->ID ) ) ) + ) + return; + $_updated_user_settings = $all; $settings = ''; foreach ( $all as $k => $v ) { @@ -724,7 +734,7 @@ function delete_all_user_settings() { return; update_user_option( $user->ID, 'user-settings', '', false ); - setcookie('wp-settings-' . $user->ID, ' ', time() - 31536000, SITECOOKIEPATH); + setcookie('wp-settings-' . $user->ID, ' ', time() - YEAR_IN_SECONDS, SITECOOKIEPATH); } /**