summaryrefslogtreecommitdiff
path: root/app/services/search/group_service.rb
blob: 6f3b5f00b867efcb86de590932f43851b662ed85 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# frozen_string_literal: true

module Search
  class GroupService < Search::GlobalService
    attr_accessor :group

    def initialize(user, group, params)
      super(user, params)

      @default_project_filter = false
      @group = group
    end

    def execute
      Gitlab::GroupSearchResults.new(
        current_user, projects, group, params[:search], default_project_filter: default_project_filter
      )
    end

    def projects
      return Project.none unless group
      return @projects if defined? @projects

      @projects = super.inside_path(group.full_path)
    end
  end
end