diff options
author | Louise Crow <louise.crow@gmail.com> | 2013-06-26 11:13:38 -0700 |
---|---|---|
committer | Louise Crow <louise.crow@gmail.com> | 2013-06-26 11:13:38 -0700 |
commit | 411aee219e14fe3d942699f230f7a8e3ed70bfe0 (patch) | |
tree | cbd41460afc2f0e24d7490d3034eee2544f3bac5 /app/controllers/reports_controller.rb | |
parent | 9ccc03bc7d4c4e9064a9217d6e332abfb3f15b7f (diff) | |
parent | 0d9de53bdccf20cc2884f0ad896d5e9dd2edee03 (diff) |
Merge branch 'release/0.12' into wdtk
Conflicts:
locale/he_IL/app.po
locale/hr_HR/app.po
locale/nb_NO/app.po
locale/uk/app.po
spec/models/info_request_spec.rb
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 |