aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--app/controllers/request_controller.rb4
-rw-r--r--spec/controllers/request_controller_spec.rb9
2 files changed, 11 insertions, 2 deletions
diff --git a/app/controllers/request_controller.rb b/app/controllers/request_controller.rb
index bd89a7db9..e48ffab72 100644
--- a/app/controllers/request_controller.rb
+++ b/app/controllers/request_controller.rb
@@ -148,11 +148,11 @@ class RequestController < ApplicationController
# First time we get to the page, just display it
if params[:submitted_new_request].nil? || params[:reedit]
# Read parameters in - public body must be passed in
- if !params[:public_body_id]
+ params[:info_request] = { :public_body_id => params[:public_body_id] } if !params[:info_request]
+ if !params[:info_request][:public_body_id]
redirect_to frontpage_url
return
end
- params[:info_request] = { :public_body_id => params[:public_body_id] }
@info_request = InfoRequest.new(params[:info_request])
params[:info_request_id] = @info_request.id
params[:outgoing_message] = {} if !params[:outgoing_message]
diff --git a/spec/controllers/request_controller_spec.rb b/spec/controllers/request_controller_spec.rb
index 6a8f3538a..9474b1d77 100644
--- a/spec/controllers/request_controller_spec.rb
+++ b/spec/controllers/request_controller_spec.rb
@@ -285,6 +285,15 @@ describe RequestController, "when creating a new request" do
response.should render_template('preview')
end
+ it "should allow re-editing of a request" do
+ post :new, :info_request => { :public_body_id => @body.id,
+ :title => "Why is your quango called Geraldine?"},
+ :outgoing_message => { :body => "This is a silly letter. It is too short to be interesting." },
+ :submitted_new_request => 1, :preview => 0,
+ :reedit => "Re-edit this request"
+ response.should render_template('new')
+ end
+
it "should redirect to sign in page when input is good and nobody is logged in" do
params = { :info_request => { :public_body_id => @body.id,
:title => "Why is your quango called Geraldine?"},