Skip to:
Content

BuddyPress.org

Changeset 6854


Ignore:
Timestamp:
03/23/2013 06:21:38 AM (13 years ago)
Author:
johnjamesjacoby
Message:

Additional hardening to bp_core_delete_account() to ensure users cannot be accidentally deleted. For 1.6.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/1.6/bp-members/bp-members-functions.php

    r6575 r6854  
    783783function bp_core_delete_account( $user_id = 0 ) {
    784784
     785        // Use logged in user ID if none is passed
    785786        if ( empty( $user_id ) )
    786787                $user_id = bp_loggedin_user_id();
    787788
    788         // Make sure account deletion is not disabled
    789         if ( !bp_current_user_can( 'delete_users' ) && bp_disable_account_deletion() )
     789        // Bail if account deletion is disabled
     790        if ( bp_disable_account_deletion() )
    790791                return false;
    791792
    792793        // Site admins cannot be deleted
    793794        if ( is_super_admin( $user_id ) )
     795                return false;
     796
     797        // Bail if current user cannot delete any users
     798        if ( ! bp_current_user_can( 'delete_users' ) )
     799                return false;
     800
     801        // Bail if current user cannot delete this user
     802        if ( ! current_user_can_for_blog( bp_get_root_blog_id(), 'delete_user', $user_id ) )
    794803                return false;
    795804
Note: See TracChangeset for help on using the changeset viewer.