Preserve the bounding box when redirecting history URLs

Using the options style for the redirect seems to cause parameters
to be preserved, which the path style of redirect does not.
This commit is contained in:
Tom Hughes 2013-12-01 19:59:57 +00:00
parent 3b6580297f
commit 61bb31ebdd
2 changed files with 23 additions and 15 deletions

View file

@ -117,21 +117,21 @@ OpenStreetMap::Application.routes.draw do
match '/history/friends' => 'changeset#list', :via => :get, :friends => true, :as => "friend_changesets" match '/history/friends' => 'changeset#list', :via => :get, :friends => true, :as => "friend_changesets"
match '/history/nearby' => 'changeset#list', :via => :get, :nearby => true, :as => "nearby_changesets" match '/history/nearby' => 'changeset#list', :via => :get, :nearby => true, :as => "nearby_changesets"
get '/browse/way/:id', :to => redirect('/way/%{id}') get '/browse/way/:id', :to => redirect(:path => '/way/%{id}')
get '/browse/way/:id/history', :to => redirect('/way/%{id}/history') get '/browse/way/:id/history', :to => redirect(:path => '/way/%{id}/history')
get '/browse/node/:id', :to => redirect('/node/%{id}') get '/browse/node/:id', :to => redirect(:path => '/node/%{id}')
get '/browse/node/:id/history', :to => redirect('/node/%{id}/history') get '/browse/node/:id/history', :to => redirect(:path => '/node/%{id}/history')
get '/browse/relation/:id', :to => redirect('/relation/%{id}') get '/browse/relation/:id', :to => redirect(:path => '/relation/%{id}')
get '/browse/relation/:id/history', :to => redirect('/relation/%{id}/history') get '/browse/relation/:id/history', :to => redirect(:path => '/relation/%{id}/history')
get '/browse/changeset/:id', :to => redirect('/changeset/%{id}') get '/browse/changeset/:id', :to => redirect(:path => '/changeset/%{id}')
get '/browse/note/:id', :to => redirect('/note/%{id}') get '/browse/note/:id', :to => redirect(:path => '/note/%{id}')
get '/user/:display_name/edits', :to => redirect('/user/%{display_name}/history') get '/user/:display_name/edits', :to => redirect(:path => '/user/%{display_name}/history')
get '/user/:display_name/edits/feed', :to => redirect('/user/%{display_name}/history/feed') get '/user/:display_name/edits/feed', :to => redirect(:path => '/user/%{display_name}/history/feed')
get '/browse/friends', :to => redirect('/history/friends') get '/browse/friends', :to => redirect(:path => '/history/friends')
get '/browse/nearby', :to => redirect('/history/nearby') get '/browse/nearby', :to => redirect(:path => '/history/nearby')
get '/browse/changesets/feed', :to => redirect('/history/feed') get '/browse/changesets/feed', :to => redirect(:path => '/history/feed')
get '/browse/changesets', :to => redirect('/history') get '/browse/changesets', :to => redirect(:path => '/history')
get '/browse', :to => redirect('/history') get '/browse', :to => redirect(:path => '/history')
# web site # web site
root :to => 'site#index', :via => [:get, :post] root :to => 'site#index', :via => [:get, :post]

View file

@ -16,6 +16,10 @@ class RedirectTest < ActionDispatch::IntegrationTest
assert_response :redirect assert_response :redirect
assert_redirected_to "/history" assert_redirected_to "/history"
get "/browse/changesets?bbox=-80.54%2C40.358%2C-79.526%2C40.779"
assert_response :redirect
assert_redirected_to "/history?bbox=-80.54%2C40.358%2C-79.526%2C40.779"
get "/browse/friends" get "/browse/friends"
assert_response :redirect assert_response :redirect
assert_redirected_to "/history/friends" assert_redirected_to "/history/friends"
@ -34,6 +38,10 @@ class RedirectTest < ActionDispatch::IntegrationTest
assert_response :redirect assert_response :redirect
assert_redirected_to "/history/feed" assert_redirected_to "/history/feed"
get "/browse/changesets/feed?bbox=-80.54%2C40.358%2C-79.526%2C40.779"
assert_response :redirect
assert_redirected_to "/history/feed?bbox=-80.54%2C40.358%2C-79.526%2C40.779"
get "/user/name/edits/feed" get "/user/name/edits/feed"
assert_response :redirect assert_response :redirect
assert_redirected_to "/user/name/history/feed" assert_redirected_to "/user/name/history/feed"