diff --git a/src/backoffice/forms.py b/src/backoffice/forms.py index e211c295b2811608523cb20bbac3b89daf2ea2de..1ddb05345dd80e3d5d4153fdd30e7b7466e5d150 100644 --- a/src/backoffice/forms.py +++ b/src/backoffice/forms.py @@ -126,6 +126,11 @@ class AssemblyEditForm(forms.ModelForm): # call original .clean() which e.g. removes 'slug' from cleaned_data if that isn't a slug super().clean() + # ensure assembly is either a channel or an assembly + if self.cleaned_data.get('state_assembly') == Assembly.State.NONE and self.cleaned_data.get('state_channel') == Assembly.State.NONE: + self.add_error('state_assembly', _('Assembly__states_must_not_be_none')) + self.add_error('state_channel', _('Assembly__states_must_not_be_none')) + # slug must not already exist in the conference slug = self.cleaned_data.get('slug') if slug is not None and Assembly.objects.filter(conference=self.instance.conference, slug=slug).exclude(pk=self.instance.pk).exists(): diff --git a/src/core/locale/de/LC_MESSAGES/django.po b/src/core/locale/de/LC_MESSAGES/django.po index b13824bf5a09fb0097498e2bbda512deea6148e4..7dad9e681166152bcb9e6862b7bb53cd76c48b52 100644 --- a/src/core/locale/de/LC_MESSAGES/django.po +++ b/src/core/locale/de/LC_MESSAGES/django.po @@ -255,6 +255,9 @@ msgstr "Die Assembly muss einen Typ haben (zumindest eins von physisch/virtuell/ msgid "Assembly__technical_user__must_be_assembly" msgstr "Der technische Benutzer muss vom Typ 'Assembly' sein." +msgid "Assembly__states_must_not_be_none" +msgstr "Assemblystate oder Channelstate muss gesetzt sein!" + msgid "Assembly__slug__is_forbidden" msgstr "Dieser Kurzname ist verboten!" diff --git a/src/core/locale/en/LC_MESSAGES/django.po b/src/core/locale/en/LC_MESSAGES/django.po index 7eddfc35b8d5c168c483ab0f2ae5429567d1b4a1..62b73f72e1abfe58c9d8f43659f22b751b977d9f 100644 --- a/src/core/locale/en/LC_MESSAGES/django.po +++ b/src/core/locale/en/LC_MESSAGES/django.po @@ -255,6 +255,9 @@ msgstr "The assembly requires a type (at least one of physical/virtual/remote)." msgid "Assembly__technical_user__must_be_assembly" msgstr "The technical user must be of type 'assembly'." +msgid "Assembly__states_must_not_be_none" +msgstr "assembly state or channel state must be set!" + msgid "Assembly__slug__is_forbidden" msgstr "this short name is forbidden"