summaryrefslogtreecommitdiff
path: root/src/program_parser.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/program_parser.py')
-rwxr-xr-xsrc/program_parser.py13
1 files changed, 9 insertions, 4 deletions
diff --git a/src/program_parser.py b/src/program_parser.py
index c88a255..1fae528 100755
--- a/src/program_parser.py
+++ b/src/program_parser.py
@@ -10,6 +10,8 @@ logger = logging.getLogger(__name__) # Set the logger name, to the name of the m
@dataclasses.dataclass
class Event:
title: str = None
+ short: str = None
+ spacer: str = ''
room: str = None
day: str = None
start_date: datetime.datetime = None
@@ -83,12 +85,13 @@ class ProgramParser:
if event.end_date > current_datetime:
events_to_show.append(event)
- def format_program(event: Event, cli=False) -> str:
+ def format_program(event: Event) -> str:
if len(event.title) > self.title_max_length:
# Truncate title by deleting was 1-3 chars and putting ...
- event.title = f'{event.title[:self.title_max_length - 3]}...'
+ event.short = f'{event.title[:self.title_max_length - 3]}...'
else:
- event.title += " " * (self.title_max_length - len(event.title)) # Pad title
+ event.short = event.title
+ event.spacer = "." * (self.title_max_length - len(event.title)) # Pad title
event.day = event.start_date.strftime('%a')
start_time = event.start_date.strftime('%H:%M')
end_time = event.end_date.strftime('%H:%M')
@@ -97,10 +100,12 @@ class ProgramParser:
event.icon = '?'
logger.warning(f"NEW ICON NEEDED!!! for {event.room}")
event.time = f"{start_time}-{end_time}"
- return f"{event.title} {event.day} {start_time}-{end_time} {event.icon}"
+ return f"{event.short}{event.spacer} {event.day} {start_time}-{end_time} {event.icon}"
for event_to_show in events_to_show:
event_to_show.pretty = format_program(event_to_show)
+
+ # Get progress
duration_sec = (event_to_show.end_date - event_to_show.start_date).total_seconds()
progress_sec = (current_datetime - event_to_show.end_date).total_seconds()
progress = 100 + (progress_sec / duration_sec) * 100