WordPress.org

Make WordPress Core

Changeset 17201


Ignore:
Timestamp:
01/01/11 22:30:46 (3 years ago)
Author:
nacin
Message:

Allow us to return from whence we came. Specify wp_http_referer for user-edit in the network admin, as we may come from network/users or site-users. props PeteMall, SergeyBiryukov, fixes #16053.

Location:
trunk/wp-admin
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/wp-admin/includes/class-wp-ms-users-list-table.php

    r17189 r17201  
    172172                    case 'username': 
    173173                        $avatar = get_avatar( $user->user_email, 32 ); 
    174                         $edit_link = ( get_current_user_id() == $user->ID ) ? 'profile.php' : 'user-edit.php?user_id=' . $user->ID; 
     174                        if ( get_current_user_id() == $user->ID ) { 
     175                            $edit_link = esc_url( network_admin_url( 'profile.php' ) ); 
     176                        } else { 
     177                            $edit_link = esc_url( network_admin_url( add_query_arg( 'wp_http_referer', urlencode( stripslashes( $_SERVER['REQUEST_URI'] ) ), 'user-edit.php?user_id=' . $user->ID ) ) ); 
     178                        } 
    175179 
    176180                        echo "<td $attributes>"; ?> 
    177                             <?php echo $avatar; ?><strong><a href="<?php echo esc_url( self_admin_url( $edit_link ) ); ?>" class="edit"><?php echo stripslashes( $user->user_login ); ?></a><?php 
     181                            <?php echo $avatar; ?><strong><a href="<?php echo $edit_link; ?>" class="edit"><?php echo stripslashes( $user->user_login ); ?></a><?php 
    178182                            if ( in_array( $user->user_login, $super_admins ) ) 
    179183                                echo ' - ' . __( 'Super Admin' ); 
     
    182186                            <?php 
    183187                                $actions = array(); 
    184                                 $actions['edit'] = '<a href="' . esc_url( self_admin_url( $edit_link ) ) . '">' . __( 'Edit' ) . '</a>'; 
     188                                $actions['edit'] = '<a href="' . $edit_link . '">' . __( 'Edit' ) . '</a>'; 
    185189 
    186190                                if ( current_user_can( 'delete_user', $user->ID) && ! in_array( $user->user_login, $super_admins ) ) { 
  • trunk/wp-admin/user-edit.php

    r17161 r17201  
    148148if ( !is_wp_error( $errors ) ) { 
    149149    $redirect = (IS_PROFILE_PAGE ? "profile.php?" : "user-edit.php?user_id=$user_id&"). "updated=true"; 
    150     $redirect = add_query_arg('wp_http_referer', urlencode($wp_http_referer), $redirect); 
     150    if ( $wp_http_referer ) 
     151        $redirect = add_query_arg('wp_http_referer', urlencode($wp_http_referer), $redirect); 
    151152    wp_redirect($redirect); 
    152153    exit; 
     
    169170    <p><strong><?php _e('User updated.') ?></strong></p> 
    170171    <?php if ( $wp_http_referer && !IS_PROFILE_PAGE ) : ?> 
    171     <p><a href="users.php"><?php _e('&larr; Back to Authors and Users'); ?></a></p> 
     172    <p><a href="<?php echo esc_url( $wp_http_referer ); ?>"><?php _e('&larr; Back to Authors and Users'); ?></a></p> 
    172173    <?php endif; ?> 
    173174</div> 
Note: See TracChangeset for help on using the changeset viewer.