diff options
Diffstat (limited to 'perllib/Open311/GetServiceRequestUpdates.pm')
-rw-r--r-- | perllib/Open311/GetServiceRequestUpdates.pm | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/perllib/Open311/GetServiceRequestUpdates.pm b/perllib/Open311/GetServiceRequestUpdates.pm index 8d05a358f..661b039b0 100644 --- a/perllib/Open311/GetServiceRequestUpdates.pm +++ b/perllib/Open311/GetServiceRequestUpdates.pm @@ -116,7 +116,7 @@ sub update_comments { problem => $p, user => $self->system_user, external_id => $request->{update_id}, - text => $self->comment_text_for_request($request, $p, $state), + text => $self->comment_text_for_request($request, $p, $state, $external_status_code), mark_fixed => 0, mark_open => 0, anonymous => 0, @@ -183,13 +183,20 @@ sub update_comments { } sub comment_text_for_request { - my ($self, $request, $problem, $state) = @_; + my ($self, $request, $problem, $state, $external_status_code) = @_; return $request->{description} if $request->{description}; + my $state_params = { + 'me.state' => $state + }; + if ($external_status_code) { + $state_params->{'me.external_status_code'} = $external_status_code; + }; + if (my $template = $problem->response_templates->search({ auto_response => 1, - 'me.state' => $state + -or => $state_params, })->first) { return $template->text; } |