summaryrefslogtreecommitdiff
path: root/lib/gitlab/project_search_results.rb
diff options
context:
space:
mode:
authorRalf Seidler <ralf.seidler@uni-jena.de>2014-09-05 12:33:05 +0200
committerRalf Seidler <ralf.seidler@uni-jena.de>2014-09-05 13:36:43 +0200
commitd93b046c4c7adf5a8fe37122864d7b1fabbd5bf6 (patch)
treee8e9be84ff67cd2b1465d990c58156988c69adfe /lib/gitlab/project_search_results.rb
parent3a971ca9ef612f44950182ded49c3bf9907fa530 (diff)
downloadgitlab-ce-d93b046c4c7adf5a8fe37122864d7b1fabbd5bf6.tar.gz
Added search wiki feature
Diffstat (limited to 'lib/gitlab/project_search_results.rb')
-rw-r--r--lib/gitlab/project_search_results.rb16
1 files changed, 15 insertions, 1 deletions
diff --git a/lib/gitlab/project_search_results.rb b/lib/gitlab/project_search_results.rb
index 90511662b20..5d959dfe0a5 100644
--- a/lib/gitlab/project_search_results.rb
+++ b/lib/gitlab/project_search_results.rb
@@ -14,13 +14,15 @@ module Gitlab
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
+ @total_count ||= issues_count + merge_requests_count + blobs_count + notes_count + wiki_blobs_count
end
def blobs_count
@@ -31,6 +33,10 @@ module Gitlab
@notes_count ||= notes.count
end
+ def wiki_blobs_count
+ @wiki_blobs_count ||= wiki_blobs.count
+ end
+
private
def blobs
@@ -41,6 +47,14 @@ module Gitlab
end
end
+ def wiki_blobs
+ if !project.wiki_enabled?
+ []
+ else
+ Repository.new(ProjectWiki.new(project).path_with_namespace).search_files(query)
+ end
+ end
+
def notes
Note.where(project_id: limit_project_ids).search(query).order('updated_at DESC')
end