WordPress.org

Make WordPress Core

Ticket #14842: 14842.next-iteration.patch

File 14842.next-iteration.patch, 1.6 KB (added by hakre, 9 years ago)

+ WS fix / and two docblock changes

  • wp-includes/capabilities.php

     
    206206         * @access public
    207207         *
    208208         * @param string $role Role name.
    209          * @return object|null Null, if role does not exist. WP_Role object, if found.
     209         * @return WP_Role|null Null, if role does not exist. WP_Role object, if found.
    210210         */
    211211        function &get_role( $role ) {
    212212                if ( isset( $this->role_objects[$role] ) )
     
    11371137 * @since 2.0.0
    11381138 *
    11391139 * @param string $role Role name.
    1140  * @return object
     1140 * @return WP_Role|null Null, if role does not exist. WP_Role object, if found.
    11411141 */
    11421142function get_role( $role ) {
    11431143        global $wp_roles;
     
    12131213 * @return bool True if the user is a site admin.
    12141214 */
    12151215function is_super_admin( $user_id = false ) {
    1216         if ( $user_id )
    1217                 $user = new WP_User( $user_id );
    1218         else
    1219                 $user = wp_get_current_user();
     1216        $user = $user_id
     1217                ? new WP_User( $user_id )
     1218                : wp_get_current_user();
    12201219
    1221         if ( empty( $user->id ) )
     1220        // invalid users are never superadmins
     1221        if ( empty ( $user->id ) )
    12221222                return false;
    12231223
    1224         if ( is_multisite() ) {
    1225                 $super_admins = get_super_admins();
    1226                 if ( is_array( $super_admins ) && in_array( $user->user_login, $super_admins ) )
    1227                         return true;
    1228         } else {
    1229                 if ( $user->has_cap('delete_users') )
    1230                         return true;
    1231         }
     1224        // multisite
     1225        if ( is_multisite() )
     1226                return ( $super_admins = array_flip( get_super_admins() ) )
     1227                        && isset ( $super_admins[ $user->user_login ] );
    12321228
    1233         return false;
     1229        // singlesite
     1230        return $user->has_cap('delete_users');
    12341231}
    12351232
    12361233?>