preparations for a new status 'published'.

This commit is contained in:
2018-02-23 17:44:56 +01:00
parent 72e04eb3f0
commit 0f0dbbd34c
4 changed files with 84 additions and 13 deletions

View File

@@ -212,6 +212,8 @@ class Event(models.Model):
self.accepted_at = timezone.now()
if user:
self.accepted_by = user
else:
logger.error('Event.accept(): no user given! (Event: %s)', self.event)
self.save()
logger.info('Event is accepted: %s', self)
@@ -227,6 +229,27 @@ class Event(models.Model):
else:
return None
def get_status(self):
now = datetime.date.today()
if self.alt_last_day:
if self.alt_last_day < now:
return 'expired'
elif self.last_day:
if self.last_day < now:
return 'expired'
elif self.alt_first_day and self.alt_first_day < now:
return 'expired'
elif self.first_day and self.first_day < now:
return 'expired'
if self.accepted:
return 'accepted'
elif self.owner:
return 'submitted'
logger.debug("here")
return 'draft'
def get_next_number(self):
counter = 0
@@ -254,6 +277,21 @@ class Event(models.Model):
else:
return '%s**/%d' % (self.sport, self.first_day.year % 100)
def get_numeric_date(self, begin_date=None, end_date=None):
if begin_date is None:
begin_date = self.first_day
if end_date is None:
end_date = self.last_day
if not end_date:
r = begin_date.strftime('%d.%m.%Y')
else:
begin = begin_date.strftime('%d.%m.%Y')
end = end_date.strftime('%d.%m.%Y')
r = u'{begin} - {end}'.format(begin=begin, end=end)
return r
def get_short_date(self, begin_date=None, end_date=None):
if begin_date is None:
begin_date = self.first_day
@@ -287,6 +325,7 @@ class Event(models.Model):
def get_template_context(self):
context = {
'event': self,
'status': self.get_status(),
'number': self.get_number(),
'mode': self.mode,
'sport': self.sport,