From 0938bf3246627f75851008a6d7b5710cc0977ad5 Mon Sep 17 00:00:00 2001 From: Martin Gross Date: Mon, 22 Jan 2024 14:07:29 +0100 Subject: [PATCH] Stripe: Unidecode Statement Descriptor; unify allowed characters and symbols (#3825) * Stripe: Unidecode Statement Descriptor; unify allowed characters and symbols * Reverse str/unidecode order --- src/pretix/plugins/stripe/payment.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/pretix/plugins/stripe/payment.py b/src/pretix/plugins/stripe/payment.py index 094499e5f1..89214b7f65 100644 --- a/src/pretix/plugins/stripe/payment.py +++ b/src/pretix/plugins/stripe/payment.py @@ -55,6 +55,7 @@ from django.utils.safestring import mark_safe from django.utils.timezone import now from django.utils.translation import gettext, gettext_lazy as _, pgettext from django_countries import countries +from text_unidecode import unidecode from pretix import __version__ from pretix.base.decimal import round_decimal @@ -556,7 +557,7 @@ class StripeMethod(BasePaymentProvider): # the postfix. return '{code} {postfix}'.format( code=payment.order.code, - postfix=re.sub('[^a-zA-Z0-9 ]', '', str(self.settings.postfix)), + postfix=re.sub("[^a-zA-Z0-9-_. ]", "", unidecode(str(self.settings.postfix))), )[:length] else: # If no custom postfix is set, we transmit the event slug and event name for backwards compatibility @@ -564,7 +565,7 @@ class StripeMethod(BasePaymentProvider): return '{event}-{code} {eventname}'.format( event=self.event.slug.upper(), code=payment.order.code, - eventname=re.sub('[^a-zA-Z0-9 ]', '', str(self.event.name)) + eventname=re.sub("[^a-zA-Z0-9-_. ]", "", unidecode(str(self.event.name))), )[:length] @property