forked from CGM_Public/pretix_original
Subevent and quota creation: Prevent common mistakes
This commit is contained in:
@@ -213,7 +213,7 @@ class QuotaForm(I18nModelForm):
|
|||||||
|
|
||||||
self.fields['itemvars'] = forms.MultipleChoiceField(
|
self.fields['itemvars'] = forms.MultipleChoiceField(
|
||||||
label=_('Products'),
|
label=_('Products'),
|
||||||
required=False,
|
required=True,
|
||||||
choices=choices,
|
choices=choices,
|
||||||
widget=forms.CheckboxSelectMultiple
|
widget=forms.CheckboxSelectMultiple
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -263,7 +263,6 @@ class SubEventEditorMixin(MetaDataEditorMixin):
|
|||||||
|
|
||||||
@cached_property
|
@cached_property
|
||||||
def formset(self):
|
def formset(self):
|
||||||
extra = 0
|
|
||||||
kwargs = {}
|
kwargs = {}
|
||||||
|
|
||||||
if self.copy_from and self.request.method != "POST":
|
if self.copy_from and self.request.method != "POST":
|
||||||
@@ -277,7 +276,14 @@ class SubEventEditorMixin(MetaDataEditorMixin):
|
|||||||
]
|
]
|
||||||
} for q in self.copy_from.quotas.prefetch_related('items', 'variations')
|
} for q in self.copy_from.quotas.prefetch_related('items', 'variations')
|
||||||
]
|
]
|
||||||
extra = len(kwargs['initial'])
|
extra = len(kwargs['initial']) - 1
|
||||||
|
else:
|
||||||
|
kwargs['initial'] = [
|
||||||
|
{
|
||||||
|
'name': _('Tickets'),
|
||||||
|
}
|
||||||
|
]
|
||||||
|
extra = 0
|
||||||
|
|
||||||
formsetclass = inlineformset_factory(
|
formsetclass = inlineformset_factory(
|
||||||
SubEvent, Quota,
|
SubEvent, Quota,
|
||||||
@@ -509,6 +515,11 @@ class SubEventCreate(SubEventEditorMixin, EventPermissionRequiredMixin, CreateVi
|
|||||||
context_object_name = 'subevent'
|
context_object_name = 'subevent'
|
||||||
form_class = SubEventForm
|
form_class = SubEventForm
|
||||||
|
|
||||||
|
def get_initial(self):
|
||||||
|
return {
|
||||||
|
'active': True,
|
||||||
|
}
|
||||||
|
|
||||||
def post(self, request, *args, **kwargs):
|
def post(self, request, *args, **kwargs):
|
||||||
self.object = SubEvent(event=self.request.event)
|
self.object = SubEvent(event=self.request.event)
|
||||||
form = self.get_form()
|
form = self.get_form()
|
||||||
@@ -568,6 +579,10 @@ class SubEventCreate(SubEventEditorMixin, EventPermissionRequiredMixin, CreateVi
|
|||||||
f.save()
|
f.save()
|
||||||
return ret
|
return ret
|
||||||
|
|
||||||
|
def form_invalid(self, form):
|
||||||
|
messages.error(self.request, _('We could not save your changes. See below for details.'))
|
||||||
|
return super().form_invalid(form)
|
||||||
|
|
||||||
@cached_property
|
@cached_property
|
||||||
def meta_forms(self):
|
def meta_forms(self):
|
||||||
def clone(o):
|
def clone(o):
|
||||||
|
|||||||
Reference in New Issue
Block a user