diff options
author | Louise Crow <louise.crow@gmail.com> | 2013-06-04 12:10:50 +0100 |
---|---|---|
committer | Louise Crow <louise.crow@gmail.com> | 2013-06-04 12:10:50 +0100 |
commit | cc1ff2db2899bcedd0a44ed1815034b91d3f528e (patch) | |
tree | 1d6639ca9267bf851af226674209a992ed7db1ae /app/controllers/reports_controller.rb | |
parent | f6bb0e5d33ceb5beb80f9561b77c716a04f574a2 (diff) | |
parent | 8c5a1ba9ed8a3d30564a178926a2729b9e9931d7 (diff) |
Merge remote-tracking branch 'openaustralia_github/more_info_on_report_request' into rails-3-develop
Diffstat (limited to 'app/controllers/reports_controller.rb')
-rw-r--r-- | app/controllers/reports_controller.rb | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/app/controllers/reports_controller.rb b/app/controllers/reports_controller.rb new file mode 100644 index 000000000..a1dd53125 --- /dev/null +++ b/app/controllers/reports_controller.rb @@ -0,0 +1,31 @@ +class ReportsController < ApplicationController + def create + @info_request = InfoRequest.find_by_url_title!(params[:request_id]) + @reason = params[:reason] + @message = params[:message] + if @reason.empty? + flash[:error] = _("Please choose a reason") + render "new" + return + end + + if !authenticated_user + flash[:notice] = _("You need to be logged in to report a request for administrator attention") + elsif @info_request.attention_requested + flash[:notice] = _("This request has already been reported for administrator attention") + else + @info_request.report!(@reason, @message, @user) + flash[:notice] = _("This request has been reported for administrator attention") + end + redirect_to request_url(@info_request) + end + + def new + @info_request = InfoRequest.find_by_url_title!(params[:request_id]) + if authenticated?( + :web => _("To report this request"), + :email => _("Then you can report the request '{{title}}'", :title => @info_request.title), + :email_subject => _("Report an offensive or unsuitable request")) + end + end +end |