2021-08-21 21:49:14 -08:00
|
|
|
from fastapi import Depends
|
2021-08-28 14:27:56 -08:00
|
|
|
from sqlalchemy.orm.session import Session
|
|
|
|
|
|
2021-05-08 18:29:31 -08:00
|
|
|
from mealie.core.root_logger import get_logger
|
2021-09-19 15:31:34 -08:00
|
|
|
from mealie.db.database import get_database
|
2021-05-03 19:32:37 -08:00
|
|
|
from mealie.db.db_setup import generate_session
|
2021-06-22 20:22:15 +02:00
|
|
|
from mealie.routes.routers import AdminAPIRouter
|
2021-08-21 21:49:14 -08:00
|
|
|
from mealie.schema.events import EventsOut
|
2021-05-03 19:32:37 -08:00
|
|
|
|
2021-08-21 21:49:14 -08:00
|
|
|
router = AdminAPIRouter(prefix="/events")
|
2021-05-03 19:32:37 -08:00
|
|
|
|
2021-05-08 18:29:31 -08:00
|
|
|
logger = get_logger()
|
|
|
|
|
|
2021-05-03 19:32:37 -08:00
|
|
|
|
|
|
|
|
@router.get("", response_model=EventsOut)
|
2021-06-22 20:22:15 +02:00
|
|
|
async def get_events(session: Session = Depends(generate_session)):
|
2021-05-03 19:32:37 -08:00
|
|
|
""" Get event from the Database """
|
2021-09-19 15:31:34 -08:00
|
|
|
db = get_database(session)
|
|
|
|
|
|
|
|
|
|
return EventsOut(total=db.events.count_all(), events=db.events.get_all(order_by="time_stamp"))
|
2021-05-03 19:32:37 -08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
@router.delete("")
|
2021-06-22 20:22:15 +02:00
|
|
|
async def delete_events(session: Session = Depends(generate_session)):
|
2021-05-03 19:32:37 -08:00
|
|
|
""" Get event from the Database """
|
2021-09-19 15:31:34 -08:00
|
|
|
db = get_database(session)
|
2021-10-30 15:46:44 -08:00
|
|
|
db.events.delete_all()
|
|
|
|
|
return {"message": "All events deleted"}
|
2021-05-03 19:32:37 -08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
@router.delete("/{id}")
|
2021-06-22 20:22:15 +02:00
|
|
|
async def delete_event(id: int, session: Session = Depends(generate_session)):
|
2021-05-03 19:32:37 -08:00
|
|
|
""" Delete event from the Database """
|
2021-09-19 15:31:34 -08:00
|
|
|
db = get_database(session)
|
2021-10-02 11:37:04 -08:00
|
|
|
return db.events.delete(id)
|