diff options
Diffstat (limited to 'perllib/FixMyStreet/DB/Result/Problem.pm')
-rw-r--r-- | perllib/FixMyStreet/DB/Result/Problem.pm | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/perllib/FixMyStreet/DB/Result/Problem.pm b/perllib/FixMyStreet/DB/Result/Problem.pm index 92865ace9..13a9c52cd 100644 --- a/perllib/FixMyStreet/DB/Result/Problem.pm +++ b/perllib/FixMyStreet/DB/Result/Problem.pm @@ -924,18 +924,29 @@ sub static_map { if ($tile_url =~ m{^//}) { $tile_url = "https:$tile_url"; } - my $tile = LWP::Simple::get($tile_url); + my $tile; + if (FixMyStreet->test_mode) { + $tile = FixMyStreet->path_to('t/app/controller/sample.jpg')->slurp(iomode => '<:raw'); + } else { + $tile = LWP::Simple::get($tile_url); + } + next unless $tile; my $im = Image::Magick->new; $im->BlobToImage($tile); + my $gravity = ($i<2?'North':'South') . ($i%2?'East':'West'); if (!$image) { $image = $im; - $image->Extent(geometry => '512x512', gravity => 'NorthWest'); + $image->Extent(geometry => '512x512', gravity => $gravity); } else { - my $gravity = ($i<2?'North':'South') . ($i%2?'East':'West'); $image->Composite(image => $im, gravity => $gravity); } } + unless ($image) { + FixMyStreet::Map::set_map_class($orig_map_class) if $orig_map_class; + return; + } + # The only pin might be the report pin, with added x/y my $pin = $map_data->{pins}->[0]; if ($pin) { |