diff options
Diffstat (limited to 'app')
-rw-r--r-- | app/controllers/request_controller.rb | 4 | ||||
-rw-r--r-- | app/models/info_request.rb | 7 |
2 files changed, 8 insertions, 3 deletions
diff --git a/app/controllers/request_controller.rb b/app/controllers/request_controller.rb index e12c408ea..12ba1a3a9 100644 --- a/app/controllers/request_controller.rb +++ b/app/controllers/request_controller.rb @@ -687,9 +687,7 @@ class RequestController < ApplicationController elsif info_request.attention_requested flash[:notice] = _("This request has already been reported for administrator attention") else - info_request.set_described_state('attention_requested', @user, "Reason: #{params[:reason]}\n\n#{params[:message]}") - info_request.attention_requested = true # tells us if attention has ever been requested - info_request.save! + info_request.report!(params[:reason], params[:message], @user) flash[:notice] = _("This request has been reported for administrator attention") end redirect_to request_url(info_request) diff --git a/app/models/info_request.rb b/app/models/info_request.rb index 156399b99..83a57b4b2 100644 --- a/app/models/info_request.rb +++ b/app/models/info_request.rb @@ -555,6 +555,13 @@ public ['requires_admin', 'error_message', 'attention_requested'].include?(described_state) end + # Report this request for administrator attention + def report!(reason, message, user) + set_described_state('attention_requested', user, "Reason: #{reason}\n\n#{message}") + self.attention_requested = true # tells us if attention has ever been requested + save! + end + # change status, including for last event for later historical purposes def set_described_state(new_state, set_by = nil, message = "") old_described_state = described_state |