git-svn-id: http://redmine.rubyforge.org/svn/trunk@1640 e93f8b46-1217-0410-a6f0-8f06a7374b81tags/0.8.0-RC1
@@ -112,6 +112,10 @@ module ApplicationHelper | |||
type ? CodeRay.scan(content, type).html : h(content) | |||
end | |||
def to_path_param(path) | |||
path.to_s.split(%r{[/\\]}).select {|p| !p.blank?} | |||
end | |||
def pagination_links_full(paginator, count=nil, options={}) | |||
page_param = options.delete(:page_param) || :page | |||
url_param = params.dup | |||
@@ -349,7 +353,8 @@ module ApplicationHelper | |||
if project && project.repository | |||
name =~ %r{^[/\\]*(.*?)(@([0-9a-f]+))?(#(L\d+))?$} | |||
path, rev, anchor = $1, $3, $5 | |||
link = link_to h("#{prefix}:#{name}"), {:controller => 'repositories', :action => 'entry', :id => project, :path => path, | |||
link = link_to h("#{prefix}:#{name}"), {:controller => 'repositories', :action => 'entry', :id => project, | |||
:path => to_path_param(path), | |||
:rev => rev, | |||
:anchor => anchor, | |||
:format => (prefix == 'export' ? 'raw' : nil)}, |
@@ -32,10 +32,6 @@ module RepositoriesHelper | |||
end | |||
end | |||
def to_path_param(path) | |||
path.to_s.split(%r{[/\\]}).select {|p| !p.blank?} | |||
end | |||
def to_utf8(str) | |||
return str if /\A[\r\n\t\x20-\x7e]*\Z/n.match(str) # for us-ascii | |||
@encodings ||= Setting.repositories_encodings.split(',').collect(&:strip) |
@@ -81,7 +81,7 @@ class ApplicationHelperTest < HelperTestCase | |||
version_link = link_to('1.0', {:controller => 'versions', :action => 'show', :id => 2}, | |||
:class => 'version') | |||
source_url = {:controller => 'repositories', :action => 'entry', :id => 'ecookbook', :path => 'some/file'} | |||
source_url = {:controller => 'repositories', :action => 'entry', :id => 'ecookbook', :path => ['some', 'file']} | |||
to_test = { | |||
# tickets |