diff options
Diffstat (limited to 'lib/gitlab/project_search_results.rb')
-rw-r--r-- | lib/gitlab/project_search_results.rb | 77 |
1 files changed, 0 insertions, 77 deletions
diff --git a/lib/gitlab/project_search_results.rb b/lib/gitlab/project_search_results.rb deleted file mode 100644 index 0dab7bcfa4d..00000000000 --- a/lib/gitlab/project_search_results.rb +++ /dev/null @@ -1,77 +0,0 @@ -module Gitlab - class ProjectSearchResults < SearchResults - attr_reader :project, :repository_ref - - def initialize(project_id, query, repository_ref = nil) - @project = Project.find(project_id) - @repository_ref = if repository_ref.present? - repository_ref - else - nil - end - @query = Shellwords.shellescape(query) if query.present? - end - - def objects(scope, page = nil) - case scope - when 'notes' - notes.page(page).per(per_page) - when 'blobs' - Kaminari.paginate_array(blobs).page(page).per(per_page) - when 'wiki_blobs' - Kaminari.paginate_array(wiki_blobs).page(page).per(per_page) - else - super - end - end - - def total_count - @total_count ||= issues_count + merge_requests_count + blobs_count + - notes_count + wiki_blobs_count - end - - def blobs_count - @blobs_count ||= blobs.count - end - - def notes_count - @notes_count ||= notes.count - end - - def wiki_blobs_count - @wiki_blobs_count ||= wiki_blobs.count - end - - private - - def blobs - if project.empty_repo? || query.blank? - [] - else - project.repository.search_files(query, repository_ref) - end - end - - def wiki_blobs - if project.wiki_enabled? && query.present? - project_wiki = ProjectWiki.new(project) - - unless project_wiki.empty? - project_wiki.search_files(query) - else - [] - end - else - [] - end - end - - def notes - Note.where(project_id: limit_project_ids).user.search(query).order('updated_at DESC') - end - - def limit_project_ids - [project.id] - end - end -end |