Create new events

This commit is contained in:
Raphael Michel
2015-05-27 23:09:33 +02:00
parent 79dfe7a084
commit 3ac26f64f3
10 changed files with 185 additions and 16 deletions

View File

@@ -1,3 +1,4 @@
from django import forms
from django.contrib import messages
from django.core.urlresolvers import reverse
from django.http import HttpResponseForbidden
@@ -25,10 +26,23 @@ 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):
@@ -71,9 +85,6 @@ class OrganizerCreate(CreateView):
return HttpResponseForbidden() # TODO
return super().dispatch(request, *args, **kwargs)
def get_object(self, queryset=None) -> Organizer:
return self.request.organizer
def form_valid(self, form):
messages.success(self.request, _('The new organizer has been created.'))
ret = super().form_valid(form)