diff options
author | Sean McGivern <sean@mcgivern.me.uk> | 2018-06-05 09:25:55 +0300 |
---|---|---|
committer | Sean McGivern <sean@mcgivern.me.uk> | 2018-06-05 09:25:55 +0300 |
commit | fb3f95bcaf78955c17f35b59755a69ca89386c88 (patch) | |
tree | 9542ede92175d5492c5d12d8011855f65f174894 /app/controllers | |
parent | 6bc89c0e3baf064425a47401ba97d27d8e943a59 (diff) | |
parent | 6426b507244b7f1cec4a7308ab29978d20c8ec98 (diff) |
Merge branch '36862-subgroup-milestones' into 'master'
Include all ancestors milestones in json list & autocomplete
Closes #36862
See merge request gitlab-org/gitlab-ce!19317
Diffstat (limited to 'app/controllers')
-rw-r--r-- | app/controllers/projects/milestones_controller.rb | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/app/controllers/projects/milestones_controller.rb b/app/controllers/projects/milestones_controller.rb index c5a044541f1..2494b56981d 100644 --- a/app/controllers/projects/milestones_controller.rb +++ b/app/controllers/projects/milestones_controller.rb @@ -1,4 +1,5 @@ class Projects::MilestonesController < Projects::ApplicationController + include Gitlab::Utils::StrongMemoize include MilestoneActions before_action :check_issuables_available! @@ -103,7 +104,7 @@ class Projects::MilestonesController < Projects::ApplicationController protected def milestones - @milestones ||= begin + strong_memoize(:milestones) do MilestonesFinder.new(search_params).execute end end @@ -121,10 +122,10 @@ class Projects::MilestonesController < Projects::ApplicationController end def search_params - if @project.group && can?(current_user, :read_group, @project.group) - group = @project.group + if request.format.json? && @project.group && can?(current_user, :read_group, @project.group) + groups = @project.group.self_and_ancestors end - params.permit(:state).merge(project_ids: @project.id, group_ids: group&.id) + params.permit(:state).merge(project_ids: @project.id, group_ids: groups&.select(:id)) end end |