aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSeb Bacon <seb.bacon@gmail.com>2011-08-03 15:07:40 +0100
committerSeb Bacon <seb.bacon@gmail.com>2011-08-03 15:07:40 +0100
commit4f501309ade230f65f4ba45e1d0161e89587d755 (patch)
treeb97c9597ed159f7d7b817ff07a1a9cce8c70d06f
parentcd73e401622d31a189d8cf3b38e9cbe46ca73e96 (diff)
Force a trailing slash on the end of the administrators' index page. Fixes #106
-rw-r--r--app/controllers/admin_general_controller.rb7
-rw-r--r--spec/controllers/admin_general_controller_spec.rb8
2 files changed, 14 insertions, 1 deletions
diff --git a/app/controllers/admin_general_controller.rb b/app/controllers/admin_general_controller.rb
index 5073cdc5b..ae51e0923 100644
--- a/app/controllers/admin_general_controller.rb
+++ b/app/controllers/admin_general_controller.rb
@@ -8,6 +8,13 @@
class AdminGeneralController < AdminController
def index
+ # ensure we have a trailing slash
+ current_uri = request.env['REQUEST_URI']
+ if params[:suppress_redirect].nil? && !(current_uri =~ /\/$/)
+ redirect_to admin_general_index_url + "/"
+ return
+ end
+
# Overview counts of things
@public_body_count = PublicBody.count
diff --git a/spec/controllers/admin_general_controller_spec.rb b/spec/controllers/admin_general_controller_spec.rb
index 4c3708268..820d1e7f3 100644
--- a/spec/controllers/admin_general_controller_spec.rb
+++ b/spec/controllers/admin_general_controller_spec.rb
@@ -5,8 +5,14 @@ describe AdminGeneralController, "when viewing front page of admin interface" do
before { basic_auth_login @request }
it "should render the front page" do
- get :index
+ get :index, :suppress_redirect => 1
response.should render_template('index')
end
+ it "should redirect to include trailing slash" do
+ get :index
+ response.should redirect_to(:controller => 'admin_general',
+ :action => 'index')
+ end
+
end