summaryrefslogtreecommitdiff
path: root/src/program_parser.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/program_parser.py')
-rwxr-xr-xsrc/program_parser.py9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/program_parser.py b/src/program_parser.py
index 66c0858..c1e4237 100755
--- a/src/program_parser.py
+++ b/src/program_parser.py
@@ -4,6 +4,7 @@ import datetime
import dataclasses
import logging
+
logger = logging.getLogger(__name__) # Set the logger name, to the name of the module
@dataclasses.dataclass
@@ -19,8 +20,9 @@ class Event:
pretty: str = None
progress: int = None
+
class ProgramParser:
- def __init__(self, program_path:os.PathLike, title_max_length:int=34, override_date:datetime.datetime|None=None):
+ def __init__(self, program_path:os.PathLike=None, title_max_length:int=34, override_date:datetime.datetime|None=None):
self.program_path = program_path
self.title_max_length = title_max_length
self.override_date = override_date
@@ -99,3 +101,8 @@ class ProgramParser:
return events_to_show
+def program_parser_factory():
+ program_path = os.environ["PROGRAM_PATH"] if "PROGRAM_PATH" in os.environ else './programs/current.json'
+ override_date = datetime.datetime.fromisoformat(os.environ["OVERRIDE_DATE"]) if "OVERRIDE_DATE" in os.environ else None
+ return ProgramParser(program_path=program_path, override_date=override_date)
+