Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app/finders/bulk_imports/imports_finder.rb')
-rw-r--r--app/finders/bulk_imports/imports_finder.rb17
1 files changed, 12 insertions, 5 deletions
diff --git a/app/finders/bulk_imports/imports_finder.rb b/app/finders/bulk_imports/imports_finder.rb
index b554bbfa5e7..d682080576f 100644
--- a/app/finders/bulk_imports/imports_finder.rb
+++ b/app/finders/bulk_imports/imports_finder.rb
@@ -2,13 +2,14 @@
module BulkImports
class ImportsFinder
- def initialize(user:, status: nil)
+ def initialize(user:, params: {})
@user = user
- @status = status
+ @params = params
end
def execute
- filter_by_status(user.bulk_imports)
+ imports = filter_by_status(user.bulk_imports)
+ sort(imports)
end
private
@@ -16,9 +17,15 @@ module BulkImports
attr_reader :user, :status
def filter_by_status(imports)
- return imports unless BulkImport.all_human_statuses.include?(status)
+ return imports unless BulkImport.all_human_statuses.include?(@params[:status])
- imports.with_status(status)
+ imports.with_status(@params[:status])
+ end
+
+ def sort(imports)
+ return imports unless @params[:sort]
+
+ imports.order_by_created_at(@params[:sort])
end
end
end