Properly handle pages that exist in sub-dirs in search results
This commit is contained in:
committed by
Henrik Hansen
parent
50c207ad91
commit
e9239050e0
+9
-1
@@ -35,6 +35,14 @@ module Gollum
|
|||||||
filename =~ /^_/ ? false : match
|
filename =~ /^_/ ? false : match
|
||||||
end
|
end
|
||||||
|
|
||||||
|
# Reusable filter to turn a filename (without path) into a canonical name.
|
||||||
|
# Strips extension, converts spaces to dashes.
|
||||||
|
#
|
||||||
|
# Returns the filtered String.
|
||||||
|
def self.canonicalize_filename(filename)
|
||||||
|
filename.split('.')[0..-2].join('.').gsub('-', ' ')
|
||||||
|
end
|
||||||
|
|
||||||
# Public: Initialize a page.
|
# Public: Initialize a page.
|
||||||
#
|
#
|
||||||
# wiki - The Gollum::Wiki in question.
|
# wiki - The Gollum::Wiki in question.
|
||||||
@@ -57,7 +65,7 @@ module Gollum
|
|||||||
#
|
#
|
||||||
# Returns the String name.
|
# Returns the String name.
|
||||||
def name
|
def name
|
||||||
filename.split('.')[0..-2].join('.').gsub('-', ' ')
|
self.class.canonicalize_filename(filename)
|
||||||
end
|
end
|
||||||
|
|
||||||
# Public: If the first element of a formatted page is an <h1> tag it can
|
# Public: If the first element of a formatted page is an <h1> tag it can
|
||||||
|
|||||||
+2
-2
@@ -219,11 +219,11 @@ module Gollum
|
|||||||
|
|
||||||
search_output.split("\n").collect do |line|
|
search_output.split("\n").collect do |line|
|
||||||
result = line.split(':')
|
result = line.split(':')
|
||||||
file_name = result[1]
|
file_name = Gollum::Page.canonicalize_filename(::File.basename(result[1]))
|
||||||
|
|
||||||
{
|
{
|
||||||
:count => result[2].to_i,
|
:count => result[2].to_i,
|
||||||
:name => file_name.split('.').first
|
:name => file_name
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
Reference in New Issue
Block a user