aboutsummaryrefslogtreecommitdiffstats
path: root/app/controllers/help_controller.rb
diff options
context:
space:
mode:
Diffstat (limited to 'app/controllers/help_controller.rb')
-rw-r--r--app/controllers/help_controller.rb33
1 files changed, 30 insertions, 3 deletions
diff --git a/app/controllers/help_controller.rb b/app/controllers/help_controller.rb
index 0ba7da12d..5fc039b3e 100644
--- a/app/controllers/help_controller.rb
+++ b/app/controllers/help_controller.rb
@@ -4,7 +4,7 @@
# Copyright (c) 2008 UK Citizens Online Democracy. All rights reserved.
# Email: francis@mysociety.org; WWW: http://www.mysociety.org/
#
-# $Id: help_controller.rb,v 1.8 2008-10-03 17:48:37 francis Exp $
+# $Id: help_controller.rb,v 1.9 2008-10-07 22:05:06 francis Exp $
class HelpController < ApplicationController
@@ -15,24 +15,51 @@ class HelpController < ApplicationController
@contact_email = MySociety::Config.get("CONTACT_EMAIL", 'contact@localhost')
@contact_email = @contact_email.gsub(/@/, "&#64;")
+ # if they clicked remove for link to request/body, remove it
+ if params[:remove]
+ @last_request = nil
+ session[:last_request_id] = nil
+ session[:last_body_id] = nil
+ end
+
+ # look up link to request/body
+ @last_request_id = session[:last_request_id].to_i
+ if @last_request_id > 0
+ @last_request = InfoRequest.find(@last_request_id)
+ else
+ @last_request = nil
+ end
+ @last_body_id = session[:last_body_id].to_i
+ if @last_body_id > 0
+ @last_body = PublicBody.find(@last_body_id)
+ else
+ @last_body = nil
+ end
+
+ # submit form
if params[:submitted_contact_form]
if @user
params[:contact][:email] = @user.email
params[:contact][:name] = @user.name
end
@contact = ContactValidator.new(params[:contact])
- if @contact.valid?
+ if @contact.valid? && !params[:remove]
ContactMailer.deliver_message(
params[:contact][:name],
params[:contact][:email],
params[:contact][:subject],
params[:contact][:message],
- @user
+ @user,
+ @last_request, @last_body
)
flash[:notice] = "Your message has been sent. Thank you for getting in touch! We'll get back to you soon."
redirect_to frontpage_url
return
end
+
+ if params[:remove]
+ @contact.errors.clear
+ end
end
end