summaryrefslogtreecommitdiff
path: root/app/finders/personal_access_tokens_finder.rb
diff options
context:
space:
mode:
Diffstat (limited to 'app/finders/personal_access_tokens_finder.rb')
-rw-r--r--app/finders/personal_access_tokens_finder.rb42
1 files changed, 42 insertions, 0 deletions
diff --git a/app/finders/personal_access_tokens_finder.rb b/app/finders/personal_access_tokens_finder.rb
index 7d356c1014c..8403c531945 100644
--- a/app/finders/personal_access_tokens_finder.rb
+++ b/app/finders/personal_access_tokens_finder.rb
@@ -18,6 +18,12 @@ class PersonalAccessTokensFinder
tokens = by_impersonation(tokens)
tokens = by_state(tokens)
tokens = by_owner_type(tokens)
+ tokens = by_revoked_state(tokens)
+ tokens = by_created_before(tokens)
+ tokens = by_created_after(tokens)
+ tokens = by_last_used_before(tokens)
+ tokens = by_last_used_after(tokens)
+ tokens = by_search(tokens)
sort(tokens)
end
@@ -83,4 +89,40 @@ class PersonalAccessTokensFinder
tokens
end
end
+
+ def by_revoked_state(tokens)
+ return tokens unless params.has_key?(:revoked)
+
+ params[:revoked] ? tokens.revoked : tokens.not_revoked
+ end
+
+ def by_created_before(tokens)
+ return tokens unless params[:created_before]
+
+ tokens.created_before(params[:created_before])
+ end
+
+ def by_created_after(tokens)
+ return tokens unless params[:created_after]
+
+ tokens.created_after(params[:created_after])
+ end
+
+ def by_last_used_before(tokens)
+ return tokens unless params[:last_used_before]
+
+ tokens.last_used_before(params[:last_used_before])
+ end
+
+ def by_last_used_after(tokens)
+ return tokens unless params[:last_used_after]
+
+ tokens.last_used_after(params[:last_used_after])
+ end
+
+ def by_search(tokens)
+ return tokens unless params[:search]
+
+ tokens.search(params[:search])
+ end
end