WordPress.org

Make WordPress Core

Ticket #12386: ms_confirm_delete2.diff

File ms_confirm_delete2.diff, 3.7 KB (added by ocean90, 5 years ago)

Fixes, show names of the blog owners which makes deletion of more users clearer http://grab.by/2HvV

  • includes/ms.php

     
    166166function confirm_delete_users( $users ) { 
    167167        if ( !is_array( $users ) ) 
    168168                return false; 
    169  
    170         echo '<p>' . __( 'Transfer posts before deleting users:' ) . '</p>'; 
    171  
    172         echo '<form action="ms-edit.php?action=allusers" method="post">'; 
    173         echo '<input type="hidden" name="alluser_transfer_delete" />'; 
    174         wp_nonce_field( 'allusers' ); 
    175         foreach ( (array) $_POST['allusers'] as $key => $val ) { 
     169    screen_icon(); 
     170    ?> 
     171    <h2><?php esc_html_e('Users'); ?></h2> 
     172    <p><?php _e( 'Transfer posts before deleting users:' ); ?></p> 
     173    <form action="ms-edit.php?action=allusers" method="post"> 
     174    <input type="hidden" name="alluser_transfer_delete" /> 
     175    <?php 
     176    wp_nonce_field( 'allusers' ); 
     177        foreach ( $allusers = (array) $_POST['allusers'] as $key => $val ) { 
    176178                if ( $val != '' && $val != '0' ) { 
    177                         $user = new WP_User( $val ); 
    178                         if ( in_array( $user->user_login, get_site_option( 'site_admins', array( 'admin' ) ) ) ) 
    179                                 wp_die( sprintf( __( 'Warning! User cannot be deleted. The user %s is a site admnistrator.' ), $user->user_login ) ); 
     179                        $user_delete = new WP_User( $val ); 
     180             
     181                        if ( in_array( $user_delete->user_login, get_site_option( 'site_admins', array( 'admin' ) ) ) ) 
     182                                wp_die( sprintf( __( 'Warning! User cannot be deleted. The user %s is a site admnistrator.' ), $user_delete->user_login ) ); 
     183                 
    180184                        echo "<input type='hidden' name='user[]' value='{$val}'/>\n"; 
    181185                        $blogs = get_blogs_of_user( $val, true ); 
     186             
    182187                        if ( !empty( $blogs ) ) { 
     188                echo '<p><strong>' . sprintf( __( 'Blogs from %s:' ), $user_delete->user_login ) . '</strong></p>'; 
    183189                                foreach ( (array) $blogs as $key => $details ) { 
    184190                                        $blog_users = get_users_of_blog( $details->userblog_id ); 
    185191                                        if ( is_array( $blog_users ) && !empty( $blog_users ) ) { 
     
    187193                                                echo "<select name='blog[$val][{$key}]'>"; 
    188194                                                $out = ''; 
    189195                                                foreach ( $blog_users as $user ) { 
    190                                                         if ( $user->user_id != $val ) 
     196                                                        if ( $user->user_id != $val && !in_array( $user->user_id, $allusers ) ) 
    191197                                                                $out .= "<option value='{$user->user_id}'>{$user->user_login}</option>"; 
    192198                                                } 
    193199                                                if ( $out == '' ) 
    194                                                         $out = "<option value='1'>admin</option>"; 
     200                                                        $out = '<option value="1">admin</option>'; 
    195201                                                echo $out; 
    196202                                                echo "</select>\n"; 
    197203                                        } 
     
    199205                        } 
    200206                } 
    201207        } 
    202         echo "<br /><input type='submit' value='" . __( 'Delete user and transfer posts' ) . "' />"; 
    203         echo "</form>"; 
     208    ?> 
     209    <br class="clear" /> 
     210    <input type="submit" class="button-secondary delete" value="<?php _e( 'Delete user and transfer posts' ); ?> " /> 
     211    </form> 
     212    <?php 
    204213        return true; 
    205214} 
    206215 
  • ms-edit.php

     
    461461                        wp_die( __('You do not have permission to access this page.') ); 
    462462 
    463463                if ( isset($_POST['alluser_delete']) ) { 
    464                         require_once('admin-header.php'); 
    465                         echo '<div class="wrap" style="position:relative;">'; 
    466                         confirm_delete_users( $_POST['allusers'] ); 
    467                         echo '</div>'; 
     464                        $title = __('Users'); 
     465            $parent_file = 'ms-admin.php'; 
     466            require_once('admin-header.php'); 
     467            echo '<div class="wrap">'; 
     468            confirm_delete_users( $_POST['allusers'] ); 
     469            require_once('admin-footer.php'); 
    468470                } elseif ( isset( $_POST[ 'alluser_transfer_delete' ] ) ) { 
    469471                        if ( is_array( $_POST[ 'blog' ] ) && !empty( $_POST[ 'blog' ] ) ) { 
    470472                                foreach ( $_POST[ 'blog' ] as $id => $users ) {