Merge pull request #7695 from coverer/search_wiki
Added search wiki feature
This commit is contained in:
commit
0e78d00bcb
4 changed files with 34 additions and 2 deletions
|
@ -10,7 +10,8 @@ class SearchController < ApplicationController
|
|||
@search_results = if @project
|
||||
return access_denied! unless can?(current_user, :download_code, @project)
|
||||
|
||||
unless %w(blobs notes issues merge_requests).include?(@scope)
|
||||
unless %w(blobs notes issues merge_requests wiki_blobs).
|
||||
include?(@scope)
|
||||
@scope = 'blobs'
|
||||
end
|
||||
|
||||
|
|
|
@ -23,3 +23,9 @@
|
|||
Comments
|
||||
.pull-right
|
||||
= @search_results.notes_count
|
||||
%li{class: ("active" if @scope == 'wiki_blobs')}
|
||||
= link_to search_filter_path(scope: 'wiki_blobs') do
|
||||
Wiki
|
||||
.pull-right
|
||||
= @search_results.wiki_blobs_count
|
||||
|
||||
|
|
9
app/views/search/results/_wiki_blob.html.haml
Normal file
9
app/views/search/results/_wiki_blob.html.haml
Normal file
|
@ -0,0 +1,9 @@
|
|||
.blob-result
|
||||
.file-holder
|
||||
.file-title
|
||||
= link_to project_wiki_path(@project, wiki_blob.filename) do
|
||||
%i.icon-file
|
||||
%strong
|
||||
= wiki_blob.filename
|
||||
.file-content.code.term
|
||||
= render 'shared/file_hljs', blob: wiki_blob, first_line_number: wiki_blob.startline
|
|
@ -14,13 +14,16 @@ 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 +34,10 @@ module Gitlab
|
|||
@notes_count ||= notes.count
|
||||
end
|
||||
|
||||
def wiki_blobs_count
|
||||
@wiki_blobs_count ||= wiki_blobs.count
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def blobs
|
||||
|
@ -41,6 +48,15 @@ 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
|
||||
|
|
Loading…
Reference in a new issue