mirror of
https://github.com/pretix/pretix.git
synced 2026-05-05 15:14:04 +00:00
Refactor: separate forms from view, improve code style
This commit is contained in:
@@ -1,12 +1,11 @@
|
||||
from django import forms
|
||||
from django.contrib import messages
|
||||
from django.core.urlresolvers import reverse
|
||||
from django.http import HttpResponseForbidden
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
from django.views.generic import ListView, UpdateView, CreateView
|
||||
from pretix.base.forms import VersionedModelForm
|
||||
|
||||
from pretix.base.models import Organizer, OrganizerPermission
|
||||
from pretix.control.forms.organizer import OrganizerUpdateForm, OrganizerForm
|
||||
from pretix.control.permissions import OrganizerPermissionRequiredMixin
|
||||
|
||||
|
||||
@@ -25,35 +24,6 @@ class OrganizerList(ListView):
|
||||
)
|
||||
|
||||
|
||||
class OrganizerForm(VersionedModelForm):
|
||||
error_messages = {
|
||||
'duplicate_slug': _("This slug is already in use. Please choose a different one."),
|
||||
}
|
||||
|
||||
class Meta:
|
||||
model = Organizer
|
||||
fields = ['name', 'slug']
|
||||
|
||||
def clean_slug(self):
|
||||
slug = self.cleaned_data['slug']
|
||||
if Organizer.objects.filter(slug=slug).exists():
|
||||
raise forms.ValidationError(
|
||||
self.error_messages['duplicate_slug'],
|
||||
code='duplicate_slug',
|
||||
)
|
||||
return slug
|
||||
|
||||
|
||||
class OrganizerUpdateForm(OrganizerForm):
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
super().__init__(*args, **kwargs)
|
||||
self.fields['slug'].widget.attrs['disabled'] = 'disabled'
|
||||
|
||||
def clean_slug(self):
|
||||
return self.instance.slug
|
||||
|
||||
|
||||
class OrganizerUpdate(OrganizerPermissionRequiredMixin, UpdateView):
|
||||
model = Organizer
|
||||
form_class = OrganizerUpdateForm
|
||||
|
||||
Reference in New Issue
Block a user