public function get_items_permissions_check($request)
{
// Check if roles is specified in GET request and if user can list users.
if (!empty($request['roles']) && !current_user_can('list_users')) {
return new WP_Error('rest_user_cannot_view', __('Sorry, you are not allowed to filter users by role.'), array('status' => rest_authorization_required_code()));
}
if ('edit' === $request['context'] && !current_user_can('list_users')) {
return new WP_Error('rest_forbidden_context', __('Sorry, you are not allowed to list users.'), array('status' => rest_authorization_required_code()));
}
if (in_array($request['orderby'], array('email', 'registered_date'), true) && !current_user_can('list_users')) {
return new WP_Error('rest_forbidden_orderby', __('Sorry, you are not allowed to order users by this parameter.'), array('status' => rest_authorization_required_code()));
}
return true;
}