summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Leitzen <pl@neopoly.de>2018-07-28 23:42:06 +0200
committerPeter Leitzen <pl@neopoly.de>2018-08-10 16:45:11 +0200
commit9b95fe78ae39aa2c0f9c3dc49b897097fc3fef5e (patch)
treea06e64b4da02a29644d44dff6db2c2c0e485197d
parent19f97d2a0fe16b905f95dc17480fdbbfba4654d7 (diff)
downloadgitlab-ce-9b95fe78ae39aa2c0f9c3dc49b897097fc3fef5e.tar.gz
Move finding autocompletion targets into AutocompleteService
-rw-r--r--app/controllers/projects/autocomplete_sources_controller.rb11
-rw-r--r--app/services/projects/autocomplete_service.rb11
2 files changed, 13 insertions, 9 deletions
diff --git a/app/controllers/projects/autocomplete_sources_controller.rb b/app/controllers/projects/autocomplete_sources_controller.rb
index eaaac5ca940..6e3edb31b99 100644
--- a/app/controllers/projects/autocomplete_sources_controller.rb
+++ b/app/controllers/projects/autocomplete_sources_controller.rb
@@ -1,5 +1,5 @@
class Projects::AutocompleteSourcesController < Projects::ApplicationController
- before_action :load_autocomplete_service, except: [:members]
+ before_action :load_autocomplete_service
def members
render json: ::Projects::ParticipantsService.new(@project, current_user).execute(target)
@@ -32,13 +32,6 @@ class Projects::AutocompleteSourcesController < Projects::ApplicationController
end
def target
- case params[:type]&.downcase
- when 'issue'
- IssuesFinder.new(current_user, project_id: @project.id).find_by(iid: params[:type_id]) || @project.issues.build
- when 'mergerequest'
- MergeRequestsFinder.new(current_user, project_id: @project.id).find_by(iid: params[:type_id]) || @project.merge_requests.build
- when 'commit'
- @project.commit(params[:type_id])
- end
+ @autocomplete_service.target(params[:type], params[:type_id])
end
end
diff --git a/app/services/projects/autocomplete_service.rb b/app/services/projects/autocomplete_service.rb
index 5286b92ab6b..d116ad11294 100644
--- a/app/services/projects/autocomplete_service.rb
+++ b/app/services/projects/autocomplete_service.rb
@@ -51,5 +51,16 @@ module Projects
QuickActions::InterpretService.new(project, current_user).available_commands(noteable)
end
+
+ def target(type, type_id)
+ case type&.downcase
+ when 'issue'
+ IssuesFinder.new(current_user, project_id: project.id).find_by(iid: type_id) || project.issues.build
+ when 'mergerequest'
+ MergeRequestsFinder.new(current_user, project_id: project.id).find_by(iid: type_id) || project.merge_requests.build
+ when 'commit'
+ project.commit(type_id)
+ end
+ end
end
end