Fix language of dates on PDF tickets

This commit is contained in:
Raphael Michel
2017-11-11 22:13:28 +01:00
parent 3fc8ccf8be
commit 84b2c24f9f
2 changed files with 11 additions and 7 deletions

View File

@@ -25,6 +25,7 @@ from reportlab.pdfbase.ttfonts import TTFont
from reportlab.pdfgen.canvas import Canvas from reportlab.pdfgen.canvas import Canvas
from reportlab.platypus import Paragraph from reportlab.platypus import Paragraph
from pretix.base.i18n import language
from pretix.base.models import Order, OrderPosition from pretix.base.models import Order, OrderPosition
from pretix.base.ticketoutput import BaseTicketOutput from pretix.base.ticketoutput import BaseTicketOutput
from pretix.plugins.ticketoutputpdf.signals import ( from pretix.plugins.ticketoutputpdf.signals import (
@@ -252,12 +253,13 @@ class PdfTicketOutput(BaseTicketOutput):
def generate_order(self, order: Order): def generate_order(self, order: Order):
buffer = BytesIO() buffer = BytesIO()
p = self._create_canvas(buffer) p = self._create_canvas(buffer)
for op in order.positions.all(): with language(order.locale):
if op.addon_to_id and not self.event.settings.ticket_download_addons: for op in order.positions.all():
continue if op.addon_to_id and not self.event.settings.ticket_download_addons:
if not op.item.admission and not self.event.settings.ticket_download_nonadm: continue
continue if not op.item.admission and not self.event.settings.ticket_download_nonadm:
self._draw_page(p, op, order) continue
self._draw_page(p, op, order)
p.save() p.save()
outbuffer = self._render_with_background(buffer) outbuffer = self._render_with_background(buffer)
return 'order%s%s.pdf' % (self.event.slug, order.code), 'application/pdf', outbuffer.read() return 'order%s%s.pdf' % (self.event.slug, order.code), 'application/pdf', outbuffer.read()
@@ -266,7 +268,8 @@ class PdfTicketOutput(BaseTicketOutput):
buffer = BytesIO() buffer = BytesIO()
p = self._create_canvas(buffer) p = self._create_canvas(buffer)
order = op.order order = op.order
self._draw_page(p, op, order) with language(order.locale):
self._draw_page(p, op, order)
p.save() p.save()
outbuffer = self._render_with_background(buffer) outbuffer = self._render_with_background(buffer)
return 'order%s%s.pdf' % (self.event.slug, order.code), 'application/pdf', outbuffer.read() return 'order%s%s.pdf' % (self.event.slug, order.code), 'application/pdf', outbuffer.read()

View File

@@ -69,6 +69,7 @@ class EditorView(EventPermissionRequiredMixin, TemplateView):
from pretix.base.models import Order from pretix.base.models import Order
order = self.request.event.orders.create(status=Order.STATUS_PENDING, datetime=now(), order = self.request.event.orders.create(status=Order.STATUS_PENDING, datetime=now(),
email='sample@pretix.eu', email='sample@pretix.eu',
locale=self.request.event.settings.locale,
expires=now(), code="PREVIEW1234", total=119) expires=now(), code="PREVIEW1234", total=119)
p = order.positions.create(item=item, attendee_name=_("John Doe"), price=item.default_price) p = order.positions.create(item=item, attendee_name=_("John Doe"), price=item.default_price)