Some checks failed
Chore App Build, Test, and Push Docker Images / build-and-push (push) Failing after 1m5s
- Updated TimeSelector.vue styles for smaller dimensions and font sizes. - Added new API proxy for '/events' in vite.config.ts. - Created bug specifications for various UI issues and fixes in bugs-1.0.5-001.md and bugs-1.0.5-002.md. - Introduced TimePickerPopover.vue for a new time selection interface in the chore scheduler. - Refactored ScheduleModal.vue to replace checkbox rows with a chip-based design for selecting specific days. - Enhanced chore scheduling logic to ensure proper handling of time extensions and UI updates.
33 lines
950 B
Python
33 lines
950 B
Python
from db.db import task_extensions_db
|
|
from models.task_extension import TaskExtension
|
|
from tinydb import Query
|
|
|
|
|
|
def get_extension(child_id: str, task_id: str, date: str) -> TaskExtension | None:
|
|
q = Query()
|
|
result = task_extensions_db.search(
|
|
(q.child_id == child_id) & (q.task_id == task_id) & (q.date == date)
|
|
)
|
|
if not result:
|
|
return None
|
|
return TaskExtension.from_dict(result[0])
|
|
|
|
|
|
def add_extension(extension: TaskExtension) -> None:
|
|
task_extensions_db.insert(extension.to_dict())
|
|
|
|
|
|
def delete_extensions_for_child(child_id: str) -> None:
|
|
q = Query()
|
|
task_extensions_db.remove(q.child_id == child_id)
|
|
|
|
|
|
def delete_extensions_for_task(task_id: str) -> None:
|
|
q = Query()
|
|
task_extensions_db.remove(q.task_id == task_id)
|
|
|
|
|
|
def delete_extension_for_child_task(child_id: str, task_id: str) -> None:
|
|
q = Query()
|
|
task_extensions_db.remove((q.child_id == child_id) & (q.task_id == task_id))
|