Skip to content
Open
6 changes: 2 additions & 4 deletions app/eventyay/api/views/order.py
Original file line number Diff line number Diff line change
Expand Up @@ -296,10 +296,9 @@ def download(self, request, output, **kwargs):
return resp
else:
resp = FileResponse(ct.file.file, content_type=ct.type)
resp['Content-Disposition'] = 'attachment; filename="{}-{}-{}{}"'.format(
resp['Content-Disposition'] = 'attachment; filename="{}-{}{}"'.format(
self.request.event.slug.upper(),
order.code,
provider.identifier,
ct.extension,
)
return resp
Expand Down Expand Up @@ -1094,11 +1093,10 @@ def download(self, request, output, **kwargs):
return resp
else:
resp = FileResponse(ct.file.file, content_type=ct.type)
resp['Content-Disposition'] = 'attachment; filename="{}-{}-{}-{}{}"'.format(
resp['Content-Disposition'] = 'attachment; filename="{}-{}-{}{}"'.format(
self.request.event.slug.upper(),
pos.order.code,
pos.positionid,
provider.identifier,
ct.extension,
)
return resp
Expand Down
6 changes: 2 additions & 4 deletions app/eventyay/control/views/orders.py
Original file line number Diff line number Diff line change
Expand Up @@ -510,20 +510,18 @@ def success(self, value):
return resp
else:
resp = FileResponse(value.file.file, content_type=value.type)
resp['Content-Disposition'] = 'attachment; filename="{}-{}-{}-{}{}"'.format(
resp['Content-Disposition'] = 'attachment; filename="{}-{}-{}{}"'.format(
self.request.event.slug.upper(),
self.order.code,
self.order_position.positionid,
self.output.identifier,
value.extension,
)
return resp
elif isinstance(value, CachedCombinedTicket):
resp = FileResponse(value.file.file, content_type=value.type)
resp['Content-Disposition'] = 'attachment; filename="{}-{}-{}{}"'.format(
resp['Content-Disposition'] = 'attachment; filename="{}-{}{}"'.format(
self.request.event.slug.upper(),
self.order.code,
self.output.identifier,
value.extension,
)
return resp
Expand Down
23 changes: 15 additions & 8 deletions app/eventyay/presale/views/order.py
Original file line number Diff line number Diff line change
Expand Up @@ -1085,31 +1085,38 @@ def success(self, value):
return resp
else:
resp = FileResponse(value.file.file, content_type=value.type)
if self.order_position.subevent:
if self.order_position and self.order_position.subevent:
# Subevent date in filename improves accessibility e.g. for screen reader users
resp['Content-Disposition'] = 'attachment; filename="{}-{}-{}-{}-{}{}"'.format(
resp['Content-Disposition'] = 'attachment; filename="{}-{}-{}-{}{}"'.format(
self.request.event.slug.upper(),
self.order.code,
self.order_position.positionid,
self.order_position.subevent.date_from.strftime('%Y_%m_%d'),
self.output.identifier,
value.extension,
)
else:
resp['Content-Disposition'] = 'attachment; filename="{}-{}-{}-{}{}"'.format(
elif self.order_position:
resp['Content-Disposition'] = 'attachment; filename="{}-{}-{}{}"'.format(
self.request.event.slug.upper(),
self.order.code,
self.order_position.positionid,
self.output.identifier,
value.extension,
)
else:
# Fallback if order_position is not available
resp['Content-Disposition'] = (
'attachment; filename="{}-{}{}"'.format(
self.request.event.slug.upper(),
self.order.code,
value.extension,
)
)
return resp
return resp
elif isinstance(value, CachedCombinedTicket):
resp = FileResponse(value.file.file, content_type=value.type)
resp['Content-Disposition'] = 'attachment; filename="{}-{}-{}{}"'.format(
resp['Content-Disposition'] = 'attachment; filename="{}-{}{}"'.format(
self.request.event.slug.upper(),
self.order.code,
self.output.identifier,
value.extension,
)
return resp
Expand Down