diff --git a/src/pretix/control/templates/pretixcontrol/item/include_variations.html b/src/pretix/control/templates/pretixcontrol/item/include_variations.html
index 0318cfffb..5ebb98d28 100644
--- a/src/pretix/control/templates/pretixcontrol/item/include_variations.html
+++ b/src/pretix/control/templates/pretixcontrol/item/include_variations.html
@@ -67,10 +67,22 @@
{% if form.instance.pk and not form.instance.quotas.exists %}
- {% blocktrans trimmed %}
- Please note that your variation will
not be available for sale
- until you have added it to an existing or newly created quota.
- {% endblocktrans %}
+
+
+ {% blocktrans trimmed %}
+ Please note that your variation will not be available for sale
+ until you have added it to an existing or newly created quota.
+ {% endblocktrans %}
+
+
+
{% endif %}
{% bootstrap_form_errors form %}
diff --git a/src/pretix/control/views/item.py b/src/pretix/control/views/item.py
index 325b3e10b..79e1fb297 100644
--- a/src/pretix/control/views/item.py
+++ b/src/pretix/control/views/item.py
@@ -920,16 +920,19 @@ class QuotaCreate(EventPermissionRequiredMixin, CreateView):
def get_form_kwargs(self):
kwargs = super().get_form_kwargs()
+ kwargs.setdefault('initial', {})
if self.copy_from:
i = modelcopy(self.copy_from)
i.pk = None
kwargs['instance'] = i
- kwargs.setdefault('initial', {})
kwargs['initial']['itemvars'] = [str(i.pk) for i in self.copy_from.items.all()] + [
'{}-{}'.format(v.item_id, v.pk) for v in self.copy_from.variations.all()
]
else:
kwargs['instance'] = Quota(event=self.request.event)
+ if 'product' in self.request.GET:
+ kwargs['initial']['itemvars'] = self.request.GET.getlist('product')
+
return kwargs
def form_invalid(self, form):
diff --git a/src/pretix/static/pretixcontrol/js/ui/quota.js b/src/pretix/static/pretixcontrol/js/ui/quota.js
index 9d8a060e2..b8a9f1e0d 100644
--- a/src/pretix/static/pretixcontrol/js/ui/quota.js
+++ b/src/pretix/static/pretixcontrol/js/ui/quota.js
@@ -29,7 +29,7 @@ $(function () {
autofill = false;
})
- $("input[name=itemvars]").change(function () {
+ function do_autofill() {
if (autofill) {
var names = [];
$("input[name=itemvars]:checked").each(function () {
@@ -37,5 +37,7 @@ $(function () {
});
$("#id_name").val(names.join(', '));
}
- });
+ }
+ $("input[name=itemvars]").change(do_autofill);
+ do_autofill();
});