summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorDouwe Maan <douwe@gitlab.com>2017-07-07 20:52:17 +0000
committerDouwe Maan <douwe@gitlab.com>2017-07-07 20:52:17 +0000
commit94e2a286846ee8b8b36ac29ccae7d51cb19578d5 (patch)
tree6c85174841a33bf75e4be48cbe8814b4c3e36b27 /lib
parentac09bbdc18eed278cf7f1b6d24acc27a879ab00f (diff)
parent6d28ad844d154eb8f7b9b7b8683b42ce70101789 (diff)
downloadgitlab-ce-94e2a286846ee8b8b36ac29ccae7d51cb19578d5.tar.gz
Merge branch 'feature/user-datetime-search-api-mysql' into 'master'
Add creation time filters to user search API for admins Closes #29507 See merge request !12682
Diffstat (limited to 'lib')
-rw-r--r--lib/api/users.rb6
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/api/users.rb b/lib/api/users.rb
index 88bca235692..c469751c31c 100644
--- a/lib/api/users.rb
+++ b/lib/api/users.rb
@@ -48,6 +48,8 @@ module API
optional :active, type: Boolean, default: false, desc: 'Filters only active users'
optional :external, type: Boolean, default: false, desc: 'Filters only external users'
optional :blocked, type: Boolean, default: false, desc: 'Filters only blocked users'
+ optional :created_after, type: DateTime, desc: 'Return users created after the specified time'
+ optional :created_before, type: DateTime, desc: 'Return users created before the specified time'
all_or_none_of :extern_uid, :provider
use :pagination
@@ -55,6 +57,10 @@ module API
get do
authenticated_as_admin! if params[:external].present? || (params[:extern_uid].present? && params[:provider].present?)
+ unless current_user&.admin?
+ params.except!(:created_after, :created_before)
+ end
+
users = UsersFinder.new(current_user, params).execute
authorized = can?(current_user, :read_users_list)