WordPress.org

Make WordPress Core

Ticket #9170: users.diff

File users.diff, 2.6 KB (added by aaron_guitar, 6 years ago)
  • wp-admin/users.php

     
    1818$title = __('Users'); 
    1919$parent_file = 'users.php'; 
    2020 
     21/** 
     22 * Display JavaScript for users page. 
     23 * 
     24 * @since 2.8.0 
     25 */ 
     26function users_js ( ) { 
     27?> 
     28<script type="text/javascript"> 
     29(function($){ 
     30        $(document).ready( function() { 
     31                var query = window.location.search.substring(1); 
     32                var vars = query.split("&"); 
     33                for (var i=0;i<vars.length;i++) { 
     34                        var pair = vars[i].split("="); 
     35                        if (pair[0] == 'user') { 
     36                                var newUser = pair[1]; 
     37                        } 
     38                } 
     39                if(newUser != undefined) { 
     40                        var userRow = jQuery('#user-' + newUser); 
     41                        var origColor = userRow.css('background-color'); 
     42                        userRow.animate({ backgroundColor: '#FFFBCC' }, 500) 
     43                               .animate({ opacity: 1.0 }, 1000) // to delay the fadeout 
     44                               .animate({ backgroundColor: origColor }, 1000); 
     45                } 
     46        }); 
     47})(jQuery); 
     48</script> 
     49<?php 
     50} 
     51 
     52add_action('admin_head', 'users_js'); 
     53 
    2154$update = $doaction = ''; 
    2255if ( isset($_REQUEST['action']) ) 
    2356        $doaction = $_REQUEST['action'] ? $_REQUEST['action'] : $_REQUEST['action2']; 
  • wp-admin/includes/user.php

     
    471471        $user->remove_all_caps(); 
    472472} 
    473473 
     474/** 
     475 * Determines which page of results a certain user will be listed on. 
     476 * 
     477 * @since 2.8.0 
     478 * 
     479 * @param int $id User ID. 
     480 */ 
     481function get_user_page_number($id) { 
     482        global $wpdb; 
     483         
     484        $wp_user_search = new WP_User_Search(); 
     485        $users_per_page = $wp_user_search->users_per_page; 
     486        $users = $wpdb->get_results("SELECT ID FROM $wpdb->users ORDER BY user_login ASC"); 
     487        foreach( $users as $key => $user ) { 
     488                if( $user->ID == $id ) { 
     489                        break; 
     490                } 
     491        } 
     492        return floor($key / $users_per_page) + 1; 
     493} 
     494 
    474495if ( !class_exists('WP_User_Search') ) : 
    475496/** 
    476497 * WordPress User Search class. 
  • wp-admin/user-new.php

     
    2626        if ( is_wp_error( $user_id ) ) { 
    2727                $add_user_errors = $user_id; 
    2828        } else { 
    29                 $new_user_login = apply_filters('pre_user_login', sanitize_user(stripslashes($_REQUEST['user_login']), true)); 
    30                 $redirect = 'users.php?usersearch='. urlencode($new_user_login) . '&update=add'; 
     29                $userspage = get_user_page_number($user_id); 
     30                $redirect = 'users.php?update=add&userspage=' . $userspage . '&user=' . $user_id; 
    3131                wp_redirect( $redirect . '#user-' . $user_id ); 
    3232                die(); 
    3333        }