From 87a79815ddde1a99917df788f283a9c2f7d519ee Mon Sep 17 00:00:00 2001 From: Oscar Krause Date: Tue, 27 Feb 2024 20:53:32 +0100 Subject: [PATCH] implemented endpoint for expired origins (origins without active leases) --- app/main.py | 12 +++++++++--- app/static/assets/js/helper.js | 6 ++++++ app/templates/views/dashboard_origins.html | 3 +++ 3 files changed, 18 insertions(+), 3 deletions(-) diff --git a/app/main.py b/app/main.py index cee4638..83268ef 100644 --- a/app/main.py +++ b/app/main.py @@ -196,7 +196,13 @@ async def _origins_delete(request: Request): return Response(status_code=201) -@app.delete('/-/origins/{origin_ref}', summary='* Origins') +@app.delete('/-/origins/expired', summary='* Delete all Origins without active Lease') +async def _origins_delete_expired(request: Request): + Origin.delete_expired(db) + return Response(status_code=201) + + +@app.delete('/-/origins/{origin_ref}', summary='* Delete specific Origin') async def _origins_delete_origin_ref(request: Request, origin_ref: str): if Origin.delete(db, [origin_ref]) == 1: return Response(status_code=201) @@ -219,13 +225,13 @@ async def _leases(request: Request, origin: bool = False): return JSONr(response) -@app.delete('/-/leases/expired', summary='* Leases') +@app.delete('/-/leases/expired', summary='* Delete all expired Leases') async def _lease_delete_expired(request: Request): Lease.delete_expired(db) return Response(status_code=201) -@app.delete('/-/lease/{lease_ref}', summary='* Lease') +@app.delete('/-/lease/{lease_ref}', summary='* Delete specific Lease') async def _lease_delete(request: Request, lease_ref: str): if Lease.delete(db, lease_ref) == 1: return Response(status_code=201) diff --git a/app/static/assets/js/helper.js b/app/static/assets/js/helper.js index 2f40de4..b7ab7ee 100644 --- a/app/static/assets/js/helper.js +++ b/app/static/assets/js/helper.js @@ -116,6 +116,12 @@ async function deleteOrigin(origin_ref) { xhr.send(); } +async function deleteExpiredOrigins() { + let xhr = new XMLHttpRequest(); + xhr.open("DELETE", `/-/origins/expired`, true); + xhr.send(); +} + async function deleteLease(lease_ref) { if (lease_ref === undefined) lease_ref = window.prompt("Please enter 'lease_ref' which should be deleted"); diff --git a/app/templates/views/dashboard_origins.html b/app/templates/views/dashboard_origins.html index be53086..e165720 100644 --- a/app/templates/views/dashboard_origins.html +++ b/app/templates/views/dashboard_origins.html @@ -13,6 +13,9 @@ +