X-Git-Url: https://scripts.mit.edu/gitweb/autoinstalls/wordpress.git/blobdiff_plain/58f607a1de715c9bca69340a4d6fb9e1b9c2bed2..0b8a53f298029318648c37e477703e903dfcb82b:/wp-admin/includes/ms.php diff --git a/wp-admin/includes/ms.php b/wp-admin/includes/ms.php index 8009d7d2..84585264 100644 --- a/wp-admin/includes/ms.php +++ b/wp-admin/includes/ms.php @@ -65,12 +65,12 @@ function wpmu_delete_blog( $blog_id, $drop = false ) { do_action( 'delete_blog', $blog_id, $drop ); - $users = get_users_of_blog( $blog_id ); + $users = get_users( array( 'blog_id' => $blog_id, 'fields' => 'ids' ) ); // Remove users from this blog. if ( ! empty( $users ) ) { - foreach ( $users as $user ) { - remove_user_from_blog( $user->user_id, $blog_id) ; + foreach ( $users as $user_id ) { + remove_user_from_blog( $user_id, $blog_id) ; } } @@ -177,72 +177,6 @@ function wpmu_delete_user( $id ) { return true; } -function confirm_delete_users( $users ) { - $current_user = wp_get_current_user(); - if ( !is_array( $users ) ) - return false; - - screen_icon(); - ?> -

-

-
- - ID'>$current_user->user_login"; - - foreach ( ( $allusers = (array) $_POST['allusers'] ) as $key => $val ) { - if ( $val != '' && $val != '0' ) { - $delete_user = new WP_User( $val ); - - if ( in_array( $delete_user->user_login, $site_admins ) ) - wp_die( sprintf( __( 'Warning! User cannot be deleted. The user %s is a network admnistrator.' ), $delete_user->user_login ) ); - - echo "\n"; - $blogs = get_blogs_of_user( $val, true ); - - if ( !empty( $blogs ) ) { - ?> -

%s?" ), $delete_user->user_login ); ?>

- $details ) { - $blog_users = get_users_of_blog( $details->userblog_id ); - if ( is_array( $blog_users ) && !empty( $blog_users ) ) { - $user_site = "{$details->blogname}"; - $user_dropdown = "\n"; - ?> - - "; - } - } - } - ?> -

- - $quota ) - $percentused = '100'; - else - $percentused = ( $used / $quota ) * 100; - $used_color = ( $percentused < 70 ) ? ( ( $percentused >= 40 ) ? 'waiting' : 'approved' ) : 'spam'; - $used = round( $used, 2 ); - $percentused = number_format( $percentused ); - - ?> -

-
- - - - - -
%2$sMB' ), esc_url( admin_url( 'upload.php' ) ), $quota ); ?>
-
-
- - - - - -
%2$sMB (%3$s%%)' ), esc_url( admin_url( 'upload.php' ) ), $used, $percentused ); ?>
-
-
- update( $wpdb->users, array( $pref => $value ), array( 'ID' => $id ) ); - if ( $refresh == 1 ) - refresh_user_details( $id ); + clean_user_cache( $id ); if ( $pref == 'spam' ) { if ( $value == 1 ) @@ -608,30 +507,13 @@ function redirect_user_to_blog() { $c ++; $blog = get_active_blog_for_user( get_current_user_id() ); - $dashboard_blog = get_dashboard_blog(); + if ( is_object( $blog ) ) { wp_redirect( get_admin_url( $blog->blog_id, '?c=' . $c ) ); // redirect and count to 5, "just in case" - exit; - } - - /* - If the user is a member of only 1 blog and the user's primary_blog isn't set to that blog, - then update the primary_blog record to match the user's blog - */ - $blogs = get_blogs_of_user( get_current_user_id() ); - - if ( !empty( $blogs ) ) { - foreach( $blogs as $blogid => $blog ) { - if ( $blogid != $dashboard_blog->blog_id && get_user_meta( get_current_user_id() , 'primary_blog', true ) == $dashboard_blog->blog_id ) { - update_user_meta( get_current_user_id(), 'primary_blog', $blogid ); - continue; - } - } - $blog = get_blog_details( get_user_meta( get_current_user_id(), 'primary_blog', true ) ); - wp_redirect( get_admin_url( $blog->blog_id, '?c=' . $c ) ); - exit; + } else { + wp_redirect( user_admin_url( '?c=' . $c ) ); // redirect and count to 5, "just in case" } - wp_die( __( 'You do not have sufficient permissions to access this page.' ) ); + exit; } add_action( 'admin_page_access_denied', 'redirect_user_to_blog', 99 ); @@ -693,47 +575,17 @@ function secret_salt_warning() { echo "
$msg
"; } } -add_action( 'admin_notices', 'secret_salt_warning' ); - -function admin_notice_feed() { - global $current_screen; - if ( $current_screen->id != 'dashboard' ) - return; - - if ( !empty( $_GET['feed_dismiss'] ) ) { - update_user_option( get_current_user_id(), 'admin_feed_dismiss', $_GET['feed_dismiss'], true ); - return; - } - - $url = get_site_option( 'admin_notice_feed' ); - if ( empty( $url ) ) - return; - - $rss = fetch_feed( $url ); - if ( ! is_wp_error( $rss ) && $item = $rss->get_item() ) { - $title = $item->get_title(); - if ( md5( $title ) == get_user_option( 'admin_feed_dismiss' ) ) - return; - $msg = "

" . esc_html( $title ) . "

\n"; - $content = $item->get_description(); - $content = $content ? wp_html_excerpt( $content, 200 ) . ' … ' : ''; - $link = esc_url( strip_tags( $item->get_link() ) ); - $msg .= "

" . $content . "" . __( 'Read More' ) . " " . __( 'Dismiss' ) . "

"; - echo "
$msg
"; - } elseif ( is_super_admin() ) { - printf( '
' . __( 'Your feed at %s is empty.' ) . '
', esc_html( $url ) ); - } -} -add_action( 'admin_notices', 'admin_notice_feed' ); +add_action( 'network_admin_notices', 'secret_salt_warning' ); function site_admin_notice() { global $wp_db_version; if ( !is_super_admin() ) return false; if ( get_site_option( 'wpmu_upgrade_site' ) != $wp_db_version ) - echo "
" . sprintf( __( 'Thank you for Updating! Please visit the Update Network page to update all your sites.' ), esc_url( admin_url( 'ms-upgrade-network.php' ) ) ) . "
"; + echo "
" . sprintf( __( 'Thank you for Updating! Please visit the Update Network page to update all your sites.' ), esc_url( network_admin_url( 'upgrade.php' ) ) ) . "
"; } add_action( 'admin_notices', 'site_admin_notice' ); +add_action( 'network_admin_notices', 'site_admin_notice' ); function avoid_blog_page_permalink_collision( $data, $postarr ) { if ( is_subdomain_install() ) @@ -805,16 +657,6 @@ function choose_primary_blog() { " . sprintf( __( "Warning! The current theme supports Featured Images. You must enable image uploads on the options page for it to work." ), esc_url( admin_url( 'ms-options.php' ) ) ) . ""; - } -} -add_action( 'admin_notices', 'show_post_thumbnail_warning' ); - function ms_deprecated_blogs_file() { if ( ! is_super_admin() ) return; @@ -822,24 +664,13 @@ function ms_deprecated_blogs_file() { return; echo '
' . sprintf( __( 'The %1$s file is deprecated. Please remove it and update your server rewrite rules to use %2$s instead.' ), 'wp-content/blogs.php', 'wp-includes/ms-files.php' ) . '
'; } -add_action( 'admin_notices', 'ms_deprecated_blogs_file' ); - -/** - * Outputs the notice message for multisite regarding activation of plugin page. - * - * @since 3.0.0 - * @return none - */ -function _admin_notice_multisite_activate_plugins_page() { - $message = sprintf( __( 'The plugins page is not visible to normal users. It must be activated first. %s' ), '' . __( 'Activate' ) . '' ); - echo "

$message

"; -} +add_action( 'network_admin_notices', 'ms_deprecated_blogs_file' ); /** * Grants super admin privileges. * * @since 3.0.0 - * @param $user_id + * @param int $user_id */ function grant_super_admin( $user_id ) { global $super_admins; @@ -867,7 +698,7 @@ function grant_super_admin( $user_id ) { * Revokes super admin privileges. * * @since 3.0.0 - * @param $user_id + * @param int $user_id */ function revoke_super_admin( $user_id ) { global $super_admins; @@ -892,4 +723,41 @@ function revoke_super_admin( $user_id ) { } return false; } + +/** + * Whether or not we can edit this network from this page + * + * By default editing of network is restricted to the Network Admin for that site_id this allows for this to be overridden + * + * @since 3.1.0 + * @param integer $site_id The network/site id to check. + */ +function can_edit_network( $site_id ) { + global $wpdb; + + if ($site_id == $wpdb->siteid ) + $result = true; + else + $result = false; + + return apply_filters( 'can_edit_network', $result, $site_id ); +} + +/** + * Thickbox image paths for Network Admin. + * + * @since 3.1.0 + * @access private + */ +function _thickbox_path_admin_subfolder() { +?> + +