Fixes #9634: Respect image URLs which are already fully formed

For local storage, URLs will always be relative, but some custom storage backends
such as S3 may return absolute ones.
This commit is contained in:
Stephen Muth 2022-07-13 19:22:47 -04:00
parent 9e2583de89
commit 8586a6cc87

View File

@ -113,8 +113,12 @@ class RackElevationSVG:
# Embed front device type image if one exists
if self.include_images and device.device_type.front_image:
url = device.device_type.front_image.url
# Convert any relative URLs to absolute
if url.startswith('/'):
url = '{}{}'.format(self.base_url, url)
image = drawing.image(
href='{}{}'.format(self.base_url, device.device_type.front_image.url),
href=url,
insert=start,
size=end,
class_='device-image'
@ -139,8 +143,12 @@ class RackElevationSVG:
# Embed rear device type image if one exists
if self.include_images and device.device_type.rear_image:
url = device.device_type.rear_image.url
# Convert any relative URLs to absolute
if url.startswith('/'):
url = '{}{}'.format(self.base_url, url)
image = drawing.image(
href='{}{}'.format(self.base_url, device.device_type.rear_image.url),
href=url,
insert=start,
size=end,
class_='device-image'