From 5e699c98029869a507a2b623340ec94eec5dea4e Mon Sep 17 00:00:00 2001
From: Mark Chao <mchao@gitlab.com>
Date: Wed, 20 Jun 2018 09:58:31 +0800
Subject: [PATCH] Add autocomplete_sources/epics endpoint

Add epics path to autocomplete_data_sources
---
 config/routes/group.rb                                 |  1 +
 .../groups/autocomplete_sources_controller.rb          | 10 ++++++++++
 ee/app/helpers/ee/application_helper.rb                |  3 ++-
 3 files changed, 13 insertions(+), 1 deletion(-)

diff --git a/config/routes/group.rb b/config/routes/group.rb
index ab7fefb3d0d..c7dc67e9734 100644
--- a/config/routes/group.rb
+++ b/config/routes/group.rb
@@ -90,6 +90,7 @@ constraints(::Constraints::GroupUrlConstrainer.new) do
     resources :autocomplete_sources, only: [] do
       collection do
         get 'members'
+        get 'epics'
       end
     end
 
diff --git a/ee/app/controllers/groups/autocomplete_sources_controller.rb b/ee/app/controllers/groups/autocomplete_sources_controller.rb
index ae16eb3e5da..096e25aaf01 100644
--- a/ee/app/controllers/groups/autocomplete_sources_controller.rb
+++ b/ee/app/controllers/groups/autocomplete_sources_controller.rb
@@ -1,10 +1,20 @@
 class Groups::AutocompleteSourcesController < Groups::ApplicationController
+  before_action :load_autocomplete_service, except: [:members]
+
   def members
     render json: ::Groups::ParticipantsService.new(@group, current_user).execute(target)
   end
 
+  def epics
+    render json: @autocomplete_service.epics
+  end
+
   private
 
+  def load_autocomplete_service
+    @autocomplete_service = ::Groups::AutocompleteService.new(@group, current_user)
+  end
+
   def target
     case params[:type]&.downcase
     when 'epic'
diff --git a/ee/app/helpers/ee/application_helper.rb b/ee/app/helpers/ee/application_helper.rb
index 6fb9e38ff47..3963b593c8b 100644
--- a/ee/app/helpers/ee/application_helper.rb
+++ b/ee/app/helpers/ee/application_helper.rb
@@ -66,7 +66,8 @@ module EE
       return super unless object.is_a?(Group)
 
       {
-        members: members_group_autocomplete_sources_path(object, type: noteable_type, type_id: params[:id])
+        members: members_group_autocomplete_sources_path(object, type: noteable_type, type_id: params[:id]),
+        epics: epics_group_autocomplete_sources_path(object)
       }
     end
 
-- 
2.30.9