Skip to content
Snippets Groups Projects

Readable AK times on details page

Merged Nils Steinger requested to merge voidptr/akplanning:readable-ak-times into master
2 files
+ 31
3
Compare changes
  • Side-by-side
  • Inline
Files
2
+ 24
0
@@ -336,6 +336,15 @@ class AKSlot(models.Model):
return f"{self.ak} @ {self.start_simplified} in {self.room}"
return f"{self.ak} @ {self.start_simplified}"
@property
def duration_simplified(self):
"""
Display duration of slot in format hours:minutes, e.g. 1.5 -> "1:30"
"""
hours = int(self.duration)
minutes = (self.duration * 60) % 60
return '%d:%02d' % (hours, minutes)
@property
def start_simplified(self):
"""
@@ -345,6 +354,21 @@ class AKSlot(models.Model):
return _("Not scheduled yet")
return self.start.astimezone(self.event.timezone).strftime('%a %H:%M')
@property
def time_simplified(self):
"""
Display start and end time of slot in format weekday + time, e.g. "Fri 14:00 - 15:30" or "Fri 22:00 - Sat 02:00"
"""
if self.start is None:
return _("Not scheduled yet")
result = self.start.astimezone(self.event.timezone).strftime('%a %H:%M')
result += ' - '
if self.start.astimezone(self.event.timezone).day == self.end.astimezone(self.event.timezone).day:
result += self.end.astimezone(self.event.timezone).strftime('%H:%M')
else:
result += self.end.astimezone(self.event.timezone).strftime('%a %H:%M')
return result
@property
def end(self):
"""
Loading