diff options
Diffstat (limited to 'src/program.py')
| -rw-r--r-- | src/program.py | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/src/program.py b/src/program.py new file mode 100644 index 0000000..b70e501 --- /dev/null +++ b/src/program.py @@ -0,0 +1,26 @@ +import os + +from program_parser import program_parser_factory, Event + +def main(): + ''' + Get program in text for, for pixel flut client + ''' + program_parser = program_parser_factory() + + lines: int = int(os.environ["LINES"]) if "LINES" in os.environ else 100 + events_to_show: list[Event] = program_parser.get_events_to_show(program_parser.get_program(), lines=lines) + #{event.title} {day} {start_time}-{end_time} {icon} + programs_formatted_list = [] + last_event = None + for event in events_to_show: + programs_formatted_list.append(f"{event.title} {event.time} {event.icon} {event.progress if event.progress > 0 else ''}") + if last_event and last_event.day != event.day: + # Day change + programs_formatted_list += [f'', '', event.day,''] + last_event = event + program_formatted = '\n'.join(programs_formatted_list[:lines]) + print(program_formatted) + +if __name__ == '__main__': + main() |
