Removed explicit conversions of URL elements - routing does that, and it was therefore done twice - wrong
This commit is contained in:
parent
5e971e00b7
commit
8b14617aea
|
@ -91,7 +91,7 @@ class ApplicationController < ActionController::Base
|
|||
|
||||
def redirect_show(page_name = @page_name, web = @web_name)
|
||||
redirect_to :web => web, :controller => 'wiki', :action => 'show',
|
||||
:id => CGI.escape(page_name || 'HomePage')
|
||||
:id => (page_name || 'HomePage')
|
||||
end
|
||||
|
||||
@@REMEMBER_NOT = ['locked', 'save', 'back', 'file', 'pic', 'import']
|
||||
|
|
|
@ -202,14 +202,14 @@ class WikiController < ApplicationController
|
|||
logger.error e
|
||||
if in_a_web?
|
||||
redirect_to :web => @web_name, :action => 'edit',
|
||||
:action_suffix => "#{CGI.escape(@page_name)}?msg=#{CGI.escape(e.message)}"
|
||||
:action_suffix => "#{@page_name}?msg=#{e.message}"
|
||||
else
|
||||
raise e
|
||||
end
|
||||
end
|
||||
else
|
||||
if not @page_name.nil? and not @page_name.empty?
|
||||
redirect_to :web => @web_name, :action => 'new', :id => CGI.escape(@page_name)
|
||||
redirect_to :web => @web_name, :action => 'new', :id => @page_name
|
||||
else
|
||||
render_text 'Page name is not specified', '404 Not Found'
|
||||
end
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
|
||||
<%= render("#{@web.markup}_help") if @web %>
|
||||
|
||||
<%= form_tag({ :action => 'save', :web => @web.address, :id => CGI.escape(@page_name)},
|
||||
<%= form_tag({ :action => 'save', :web => @web.address, :id => @page_name},
|
||||
{'id' => 'editForm', 'method' => 'post', 'onSubmit' => 'cleanAuthorName();'})
|
||||
%>
|
||||
|
||||
|
|
|
@ -89,6 +89,18 @@ class WikiControllerTest < Test::Unit::TestCase
|
|||
process 'edit', 'web' => 'wiki1', 'id' => 'UnknownPage', 'break_lock' => 'y'
|
||||
assert_redirected_to :action => 'index'
|
||||
end
|
||||
|
||||
def test_edit_page_with_special_symbols
|
||||
@wiki.write_page('wiki1', 'With : Special /> symbols',
|
||||
'This page has special symbols in the name',
|
||||
Time.now, Author.new('Special', '127.0.0.3'))
|
||||
|
||||
r = process 'edit', 'web' => 'wiki1', 'id' => 'With : Special /> symbols'
|
||||
assert_success
|
||||
xml = REXML::Document.new(r.body)
|
||||
form = REXML::XPath.first(xml, '//form')
|
||||
assert_equal '/wiki1/save/With+%3A+Special+%2F%3E+symbols', form.attributes['action']
|
||||
end
|
||||
|
||||
|
||||
def test_export_html
|
||||
|
|
Loading…
Reference in a new issue