diff --git a/src/pretix/base/migrations/0023_auto_20160601_1039.py b/src/pretix/base/migrations/0023_auto_20160601_1039.py new file mode 100644 index 0000000000..3aec83343a --- /dev/null +++ b/src/pretix/base/migrations/0023_auto_20160601_1039.py @@ -0,0 +1,25 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.9.6 on 2016-06-01 10:39 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('pretixbase', '0022_merge'), + ] + + operations = [ + migrations.AddField( + model_name='voucher', + name='comment', + field=models.TextField(blank=True, help_text='The text entered in this field will not be visible to the user and is available for your convenience.', verbose_name='Comment'), + ), + migrations.AddField( + model_name='voucher', + name='tag', + field=models.CharField(blank=True, help_text='You can use this field to group multiple vouchers together. If you enter the same value for multiple vouchers, you can get statistics on how many of them have been redeemed etc.', max_length=255, verbose_name='Tag'), + ), + ] diff --git a/src/pretix/base/models/vouchers.py b/src/pretix/base/models/vouchers.py index 4688792bb4..5da2a6fa48 100644 --- a/src/pretix/base/models/vouchers.py +++ b/src/pretix/base/models/vouchers.py @@ -101,6 +101,18 @@ class Voucher(LoggedModel): "If enabled, the voucher is valid for any product affected by this quota." ) ) + tag = models.CharField( + max_length=255, + verbose_name=_("Tag"), + blank=True, + help_text=_("You can use this field to group multiple vouchers together. If you enter the same value for " + "multiple vouchers, you can get statistics on how many of them have been redeemed etc.") + ) + comment = models.TextField( + blank=True, verbose_name=_("Comment"), + help_text=_("The text entered in this field will not be visible to the user and is available for your " + "convenience.") + ) class Meta: verbose_name = _("Voucher") diff --git a/src/pretix/control/forms/vouchers.py b/src/pretix/control/forms/vouchers.py index a81d52a4ea..4fbccea218 100644 --- a/src/pretix/control/forms/vouchers.py +++ b/src/pretix/control/forms/vouchers.py @@ -18,7 +18,8 @@ class VoucherForm(I18nModelForm): model = Voucher localized_fields = '__all__' fields = [ - 'code', 'valid_until', 'block_quota', 'allow_ignore_quota', 'price' + 'code', 'valid_until', 'block_quota', 'allow_ignore_quota', 'price', 'tag', + 'comment' ] def __init__(self, *args, **kwargs): diff --git a/src/pretix/control/templates/pretixcontrol/vouchers/detail.html b/src/pretix/control/templates/pretixcontrol/vouchers/detail.html index cc620b55f0..f3ebf569c2 100644 --- a/src/pretix/control/templates/pretixcontrol/vouchers/detail.html +++ b/src/pretix/control/templates/pretixcontrol/vouchers/detail.html @@ -20,13 +20,21 @@ {% bootstrap_field form.allow_ignore_quota layout="horizontal" %} {% bootstrap_field form.price layout="horizontal" %} {% bootstrap_field form.itemvar layout="horizontal" %} -
- {% blocktrans trimmed %} - If you choose "any product" for a specific quota and choose to reserve quota for this - voucher above, the product can still be unavailable to the voucher holder if another quota - associated with the product is sold out! - {% endblocktrans %} +
+
+
+
+ {% blocktrans trimmed %} + If you choose "any product" for a specific quota and choose to reserve quota for this + voucher above, the product can still be unavailable to the voucher holder if another quota + associated with the product is sold out! + {% endblocktrans %} +
+
+
+ {% bootstrap_field form.tag layout="horizontal" %} + {% bootstrap_field form.comment layout="horizontal" %}