Verification if the agenda can be created.
This commit is contained in:
@@ -155,16 +155,9 @@ class Post(models.Model):
|
|||||||
if not self.public_date:
|
if not self.public_date:
|
||||||
self.public_date = timezone.now()
|
self.public_date = timezone.now()
|
||||||
|
|
||||||
if (self.id is None) and (not self.slug):
|
if not self.slug:
|
||||||
self.slug = slugify(self.public_date.date()) + "-" + slugify(self.title)
|
self.slug = slugify(self.public_date.date()) + "-" + slugify(self.title)
|
||||||
|
|
||||||
if self.has_agenda:
|
|
||||||
self.agenda_key = ep.createPadifNotExists(self.slug + "-agenda")
|
|
||||||
|
|
||||||
if self.has_protocol:
|
|
||||||
self.protocol_key = ep.createPadifNotExists(self.slug + "-protocol")
|
|
||||||
request_logger.info(self.post_type)
|
|
||||||
|
|
||||||
super().save(*args, **kwargs)
|
super().save(*args, **kwargs)
|
||||||
|
|
||||||
self.tags.set(
|
self.tags.set(
|
||||||
@@ -255,31 +248,54 @@ class FetMeeting(Event):
|
|||||||
verbose_name = "Fet Sitzung"
|
verbose_name = "Fet Sitzung"
|
||||||
verbose_name_plural = "Fet Sitzungen"
|
verbose_name_plural = "Fet Sitzungen"
|
||||||
|
|
||||||
|
def __get_slug(self):
|
||||||
|
self.slug = slugify(self.event_start.date()) + "-" + slugify("Fachschaftssitzung")
|
||||||
|
|
||||||
|
if Post.objects.filter(slug=self.slug).exists():
|
||||||
|
if Post.objects.get(slug=self.slug).id != self.id:
|
||||||
|
raise ValidationError(
|
||||||
|
_('Es existiert bereits eine Sitzung mit demselben Datum.')
|
||||||
|
)
|
||||||
|
|
||||||
|
def __get_agenda_key(self):
|
||||||
|
try:
|
||||||
|
self.agenda_key = ep.createPadifNotExists(self.slug + "-agenda")
|
||||||
|
except Exception as e:
|
||||||
|
raise ValidationError(
|
||||||
|
_('Die Agenda konnte nicht erstellt werden. Error: %(error)s'),
|
||||||
|
params={'error': str(e)},
|
||||||
|
)
|
||||||
|
|
||||||
|
def __get_protocol_key(self):
|
||||||
|
try:
|
||||||
|
self.protocol_key = ep.createPadifNotExists(self.slug + "-protocol")
|
||||||
|
except Exception as e:
|
||||||
|
raise ValidationError(
|
||||||
|
_('Das Protokoll konnte nicht erstellt werden. Error: %(error)s'),
|
||||||
|
params={'error': str(e)},
|
||||||
|
)
|
||||||
|
|
||||||
def clean(self):
|
def clean(self):
|
||||||
if self.event_start is None:
|
if self.event_start is None:
|
||||||
raise ValidationError(_('Das Datum des Events fehlt.'))
|
raise ValidationError(_('Das Datum des Events fehlt.'))
|
||||||
elif (self.event_end) and (self.event_end < self.event_start):
|
elif (self.event_end) and (self.event_end < self.event_start):
|
||||||
raise ValidationError(_('Das Ende des Events liegt vor dem Beginn.'))
|
raise ValidationError(_('Das Ende des Events liegt vor dem Beginn.'))
|
||||||
|
|
||||||
slug = slugify(self.event_start.date()) + "-" + slugify("Fachschaftssitzung")
|
if not self.slug:
|
||||||
|
self.__get_slug()
|
||||||
|
|
||||||
if Post.objects.filter(slug=slug).exists():
|
if self.has_agenda:
|
||||||
if Post.objects.get(slug=slug).id != self.id:
|
self.__get_agenda_key()
|
||||||
raise ValidationError(_('Es existiert bereits eine Sitzung mit demselben Datum.'))
|
|
||||||
|
if self.has_protocol:
|
||||||
|
self.__get_protocol_key()
|
||||||
|
|
||||||
def save(self, *args, **kwargs):
|
def save(self, *args, **kwargs):
|
||||||
self.title = "Fachschaftssitzung"
|
self.title = "Fachschaftssitzung"
|
||||||
if not self.slug:
|
|
||||||
self.slug = slugify(self.event_start.date()) + "-" + slugify(self.title)
|
|
||||||
self.body = "TODO: Agenda + Protokoll Link"
|
|
||||||
|
|
||||||
# TODO
|
# TODO
|
||||||
# self.image
|
# self.image
|
||||||
|
|
||||||
# TODO
|
|
||||||
# self.protocol_key
|
|
||||||
# self.agenda_key
|
|
||||||
|
|
||||||
if not self.post_type:
|
if not self.post_type:
|
||||||
self.post_type = 'F'
|
self.post_type = 'F'
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user