mirror of
https://github.com/pretix/pretix.git
synced 2026-05-03 14:54:04 +00:00
Move method once again
This commit is contained in:
@@ -99,7 +99,21 @@ class MetaDataEditorMixin:
|
||||
f.instance.delete()
|
||||
|
||||
|
||||
class EventUpdate(EventSettingsViewMixin, EventPermissionRequiredMixin, MetaDataEditorMixin, UpdateView):
|
||||
class DecoupleMixin:
|
||||
|
||||
def _save_decoupled(self, form):
|
||||
# Save fields that are currently only set via the organizer but should be decoupled
|
||||
fields = set()
|
||||
for f in self.request.POST.getlist("decouple"):
|
||||
fields |= set(f.split(","))
|
||||
for f in fields:
|
||||
if f not in form.fields:
|
||||
continue
|
||||
if f not in self.request.event.settings._cache():
|
||||
self.request.event.settings.set(f, self.request.event.settings.get(f))
|
||||
|
||||
|
||||
class EventUpdate(DecoupleMixin, EventSettingsViewMixin, EventPermissionRequiredMixin, MetaDataEditorMixin, UpdateView):
|
||||
model = Event
|
||||
form_class = EventUpdateForm
|
||||
template_name = 'pretixcontrol/event/settings.html'
|
||||
@@ -327,7 +341,7 @@ class PaymentProviderSettings(EventSettingsViewMixin, EventPermissionRequiredMix
|
||||
return self.get(request)
|
||||
|
||||
|
||||
class EventSettingsFormView(EventPermissionRequiredMixin, FormView):
|
||||
class EventSettingsFormView(EventPermissionRequiredMixin, DecoupleMixin, FormView):
|
||||
model = Event
|
||||
permission = 'can_change_event_settings'
|
||||
|
||||
@@ -343,17 +357,6 @@ class EventSettingsFormView(EventPermissionRequiredMixin, FormView):
|
||||
def form_success(self):
|
||||
pass
|
||||
|
||||
def _save_decoupled(self, form):
|
||||
# Save fields that are currently only set via the organizer but should be decoupled
|
||||
fields = set()
|
||||
for f in self.request.POST.getlist("decouple"):
|
||||
fields |= set(f.split(","))
|
||||
for f in fields:
|
||||
if f not in form.fields:
|
||||
continue
|
||||
if f not in self.request.event.settings._cache():
|
||||
self.request.event.settings.set(f, self.request.event.settings.get(f))
|
||||
|
||||
@transaction.atomic
|
||||
def post(self, request, *args, **kwargs):
|
||||
form = self.get_form()
|
||||
|
||||
Reference in New Issue
Block a user