diff --git a/senju/haiku.py b/senju/haiku.py index 66d5348..f117a5f 100644 --- a/senju/haiku.py +++ b/senju/haiku.py @@ -59,3 +59,7 @@ class Haiku: continue return haiku + + +DEFAULT_HAIKU: Haiku = Haiku(["Purple petals rise", "Defying fragile beauty", + "Fiercely breathing life"]) diff --git a/senju/store_manager.py b/senju/store_manager.py index e99b98e..4c30543 100644 --- a/senju/store_manager.py +++ b/senju/store_manager.py @@ -7,7 +7,8 @@ from typing import Optional from tinydb import TinyDB from tinydb.queries import QueryImpl -from senju.haiku import Haiku +from senju import haiku +from senju.haiku import DEFAULT_HAIKU, Haiku DEFAULT_DB_PATH: Path = Path("/var/lib/senju.json") @@ -51,3 +52,12 @@ class StoreManager: except IndexError as e: self.logger.error(f"The database seems to be empty: {e}") return None + + def get_latest_haiku_or_default(self) -> Haiku: + id = self.get_id_of_latest_haiku() + if id is None: + return DEFAULT_HAIKU + haiku = self.load_haiku(id) + if haiku is None: + return DEFAULT_HAIKU + return haiku