aboutsummaryrefslogtreecommitdiffstats
path: root/perllib/Open311/GetServiceRequestUpdates.pm
diff options
context:
space:
mode:
Diffstat (limited to 'perllib/Open311/GetServiceRequestUpdates.pm')
-rw-r--r--perllib/Open311/GetServiceRequestUpdates.pm14
1 files changed, 14 insertions, 0 deletions
diff --git a/perllib/Open311/GetServiceRequestUpdates.pm b/perllib/Open311/GetServiceRequestUpdates.pm
index 6d846de42..4b6d56146 100644
--- a/perllib/Open311/GetServiceRequestUpdates.pm
+++ b/perllib/Open311/GetServiceRequestUpdates.pm
@@ -3,6 +3,7 @@ package Open311::GetServiceRequestUpdates;
use Moo;
use Open311;
use FixMyStreet::DB;
+use FixMyStreet::App::Model::PhotoSet;
use DateTime::Format::W3CDTF;
has system_user => ( is => 'rw' );
@@ -116,6 +117,19 @@ sub update_comments {
}
);
+ # ref test as XML::Simple will have returned an empty hashref for empty element
+ if ($request->{media_url} && !ref $request->{media_url}) {
+ my $ua = LWP::UserAgent->new;
+ my $res = $ua->get($request->{media_url});
+ if ( $res->is_success && $res->content_type eq 'image/jpeg' ) {
+ my $photoset = FixMyStreet::App::Model::PhotoSet->new({
+ data_items => [ $res->decoded_content ],
+ });
+ my $data = $photoset->get_raw_image_data(0);
+ $comment->photo($data->[0]);
+ }
+ }
+
# if the comment is older than the last update
# do not change the status of the problem as it's
# tricky to determine the right thing to do.