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,6 +253,7 @@ 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)
with language(order.locale):
for op in order.positions.all(): for op in order.positions.all():
if op.addon_to_id and not self.event.settings.ticket_download_addons: if op.addon_to_id and not self.event.settings.ticket_download_addons:
continue continue
@@ -266,6 +268,7 @@ class PdfTicketOutput(BaseTicketOutput):
buffer = BytesIO() buffer = BytesIO()
p = self._create_canvas(buffer) p = self._create_canvas(buffer)
order = op.order order = op.order
with language(order.locale):
self._draw_page(p, op, order) self._draw_page(p, op, order)
p.save() p.save()
outbuffer = self._render_with_background(buffer) outbuffer = self._render_with_background(buffer)

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)