gitlab-org--gitlab-foss/app/services/search/global_service.rb

29 lines
692 B
Ruby
Raw Normal View History

module Search
class GlobalService
attr_accessor :current_user, :params
def initialize(user, params)
@current_user, @params = user, params.dup
end
def execute
2014-01-19 18:55:59 +00:00
group = Group.find_by(id: params[:group_id]) if params[:group_id].present?
projects = ProjectsFinder.new(current_user: current_user).execute
if group
projects = projects.inside_path(group.full_path)
end
Gitlab::SearchResults.new(current_user, projects, params[:search])
end
2017-03-31 13:03:55 +00:00
def scope
@scope ||= begin
allowed_scopes = %w[issues merge_requests milestones]
allowed_scopes.delete(params[:scope]) { 'projects' }
end
2017-03-31 13:03:55 +00:00
end
end
end