From 05b4d954d97595c415303f1de08ed442a53f1be4 Mon Sep 17 00:00:00 2001 From: Sohalt Date: Sun, 6 Oct 2019 11:52:34 +0200 Subject: [PATCH] Make voucher code in notification clickable (#1423) * Make voucher code in notification clickable * Move html out of translated string --- src/pretix/control/forms/vouchers.py | 4 +--- src/pretix/control/views/vouchers.py | 10 +++++++++- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/src/pretix/control/forms/vouchers.py b/src/pretix/control/forms/vouchers.py index c551e2b367..1056d9eb87 100644 --- a/src/pretix/control/forms/vouchers.py +++ b/src/pretix/control/forms/vouchers.py @@ -179,9 +179,7 @@ class VoucherForm(I18nModelForm): return data def save(self, commit=True): - super().save(commit) - - return ['item'] + return super().save(commit) class VoucherBulkForm(VoucherForm): diff --git a/src/pretix/control/views/vouchers.py b/src/pretix/control/views/vouchers.py index 3743465f1e..77774d8aab 100644 --- a/src/pretix/control/views/vouchers.py +++ b/src/pretix/control/views/vouchers.py @@ -12,6 +12,7 @@ from django.http import ( from django.shortcuts import redirect, render from django.urls import resolve, reverse from django.utils.functional import cached_property +from django.utils.html import format_html from django.utils.translation import ugettext_lazy as _ from django.views.generic import ( CreateView, DeleteView, ListView, TemplateView, UpdateView, View, @@ -240,8 +241,15 @@ class VoucherCreate(EventPermissionRequiredMixin, CreateView): @transaction.atomic def form_valid(self, form): form.instance.event = self.request.event - messages.success(self.request, _('The new voucher has been created: {code}').format(code=form.instance.code)) ret = super().form_valid(form) + url = reverse('control:event.voucher', kwargs={ + 'organizer': self.request.event.organizer.slug, + 'event': self.request.event.slug, + 'voucher': self.object.pk + }) + messages.success(self.request, _('The new voucher has been created: {code}').format( + code=format_html('{code}', url=url, code=self.object.code) + )) form.instance.log_action('pretix.voucher.added', data=dict(form.cleaned_data), user=self.request.user) return ret