home
·
contact
·
privacy
projects
/
plomtask
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Add Todo. and Process.calendarize to identify what Todos to show in calendar.
[plomtask]
/
plomtask
/
days.py
diff --git
a/plomtask/days.py
b/plomtask/days.py
index 5e975602d112a81f71b7bafb47b2939f9084d365..fe1ba44e80e9a1c4182130b870d6d531dc9c9c06 100644
(file)
--- a/
plomtask/days.py
+++ b/
plomtask/days.py
@@
-3,6
+3,7
@@
from __future__ import annotations
from datetime import datetime, timedelta
from plomtask.exceptions import BadFormatException
from plomtask.db import DatabaseConnection, BaseModel
from datetime import datetime, timedelta
from plomtask.exceptions import BadFormatException
from plomtask.db import DatabaseConnection, BaseModel
+from plomtask.todos import Todo
DATE_FORMAT = '%Y-%m-%d'
MIN_RANGE_DATE = '2024-01-01'
DATE_FORMAT = '%Y-%m-%d'
MIN_RANGE_DATE = '2024-01-01'
@@
-36,6
+37,7
@@
class Day(BaseModel[str]):
super().__init__(id_)
self.datetime = datetime.strptime(self.date, DATE_FORMAT)
self.comment = comment
super().__init__(id_)
self.datetime = datetime.strptime(self.date, DATE_FORMAT)
self.comment = comment
+ self.calendarized_todos: list[Todo] = []
def __lt__(self, other: Day) -> bool:
return self.date < other.date
def __lt__(self, other: Day) -> bool:
return self.date < other.date
@@
-105,3
+107,8
@@
class Day(BaseModel[str]):
"""Return date succeeding date of this Day."""
next_datetime = self.datetime + timedelta(days=1)
return next_datetime.strftime(DATE_FORMAT)
"""Return date succeeding date of this Day."""
next_datetime = self.datetime + timedelta(days=1)
return next_datetime.strftime(DATE_FORMAT)
+
+ def collect_calendarized_todos(self, db_conn: DatabaseConnection) -> None:
+ """Fill self.calendarized_todos."""
+ self.calendarized_todos = [t for t in Todo.by_date(db_conn, self.date)
+ if t.calendarize]