forked from CGM_Public/pretix_original
Memberships: Check valid_from/valid_until for parallel usage (#3975)
This commit is contained in:
@@ -445,10 +445,11 @@ class MembershipStep(CartMixin, TemplateFlowStep):
|
||||
f.position.used_membership = f.cleaned_data['membership']
|
||||
|
||||
try:
|
||||
validate_memberships_in_order(self.cart_customer, self.positions, self.request.event, lock=False, testmode=self.request.event.testmode)
|
||||
validate_memberships_in_order(self.cart_customer, self.positions, self.request.event, lock=False, testmode=self.request.event.testmode,
|
||||
valid_from_not_chosen=True)
|
||||
except ValidationError as e:
|
||||
messages.error(self.request, e.message)
|
||||
self.render()
|
||||
return self.render()
|
||||
else:
|
||||
for f in self.forms:
|
||||
f.position.save(update_fields=['used_membership'])
|
||||
@@ -934,6 +935,13 @@ class QuestionsStep(QuestionsViewMixin, CartMixin, TemplateFlowStep):
|
||||
'changed accordingly.'))
|
||||
return redirect_to_url(self.get_next_url(request) + '?open_cart=true')
|
||||
|
||||
try:
|
||||
validate_memberships_in_order(self.cart_customer, self.positions, self.request.event, lock=False,
|
||||
testmode=self.request.event.testmode, valid_from_not_chosen=False)
|
||||
except ValidationError as e:
|
||||
messages.error(self.request, e.message)
|
||||
return self.render()
|
||||
|
||||
return redirect_to_url(self.get_next_url(request))
|
||||
|
||||
def is_completed(self, request, warn=False):
|
||||
|
||||
Reference in New Issue
Block a user