fix 'could not create a fetmeeting'

This commit is contained in:
2020-10-21 10:31:52 +00:00
parent 49a36e4f20
commit 7fc0ea932d

View File

@@ -111,13 +111,43 @@ class Post(models.Model):
request_logger.info("Accessing etherpad ...")
if not self.agenda_key:
request_logger.info("not agenda key!")
self.agenda_key = self.__get_agenda_key()
self.agenda_key = self.get_agenda_key()
request_logger.info("AGENDA KEY: "+self.agenda_key)
request_logger.info("VALUE: "+value)
setPadHTML(self.agenda_key, value)
request_logger.info("set etherpad!")
return value
def get_agenda_key(self):
if not self.slug:
return None
try:
agenda_key = createPadifNotExists(self.slug + "-agenda")
except Exception as e:
raise ValidationError(
_('Die Agenda konnte nicht erstellt werden. Error: %(error)s'),
params={'error': str(e)},
)
return None
return agenda_key
def get_protocol_key(self):
if not self.slug:
return None
try:
protocol_key = createPadifNotExists(self.slug + "-protocol")
except Exception as e:
raise ValidationError(
_('Das Protokoll konnte nicht erstellt werden. Error: %(error)s'),
params={'error': str(e)},
)
return None
return protocol_key
@property
def get_tagnames(self):
return ["#%s" % t for t in self.tags.names()]
@@ -171,28 +201,6 @@ class Post(models.Model):
*re.findall(r'\#([\d\w-]+)', str(self.title))
)
def __get_agenda_key(self):
try:
self.agenda_key = createPadifNotExists(self.slug + "-agenda")
return self.agenda_key
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 = createPadifNotExists(self.slug + "-protocol")
return self.protocol_key
except Exception as e:
raise ValidationError(
_('Das Protokoll konnte nicht erstellt werden. Error: %(error)s'),
params={'error': str(e)},
)
def __str__(self):
return "Post (%s, %s): %s " % (self.slug, self.public_date.strftime("%d.%m.%Y"), self.title)
@@ -269,14 +277,16 @@ class FetMeeting(Event):
verbose_name_plural = "Fet Sitzungen"
def __get_slug(self):
self.slug = slugify(self.event_start.date()) + "-" + slugify("Fachschaftssitzung")
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:
if Post.objects.filter(slug=slug).exists():
if Post.objects.get(slug=slug).id != self.id:
raise ValidationError(
_('Es existiert bereits eine Sitzung mit demselben Datum.')
)
return None
return slug
def clean(self):
if self.event_start is None:
@@ -285,13 +295,13 @@ class FetMeeting(Event):
raise ValidationError(_('Das Ende des Events liegt vor dem Beginn.'))
if not self.slug:
self.__get_slug()
self.slug = self.__get_slug()
if self.has_agenda:
self.__get_agenda_key()
self.agenda_key = self.get_agenda_key()
if self.has_protocol:
self.__get_protocol_key()
self.protocol_key = self.get_protocol_key()
def save(self, *args, **kwargs):
self.title = "Fachschaftssitzung"