Compare commits

..

No commits in common. "41cb7ae14fb68a28da68dcf951851ec4b0554738" and "f35a4c61453fd728aab64f7d818b25bc7684b470" have entirely different histories.

5 changed files with 26 additions and 53 deletions

View File

@ -155,13 +155,6 @@ async def _origins_delete(request: Request):
return Response(status_code=201) return Response(status_code=201)
@app.delete('/-/origins/{origin_ref}', summary='* Origins')
async def _origins_delete_origin_ref(request: Request, origin_ref: str):
if Origin.delete(db, origin_ref) == 1:
return Response(status_code=201)
raise JSONResponse(status_code=404, content={'status': 404, 'detail': 'lease not found'})
@app.get('/-/leases', summary='* Leases') @app.get('/-/leases', summary='* Leases')
async def _leases(request: Request, origin: bool = False): async def _leases(request: Request, origin: bool = False):
session = sessionmaker(bind=db)() session = sessionmaker(bind=db)()

View File

@ -56,12 +56,12 @@ class Origin(Base):
session.close() session.close()
@staticmethod @staticmethod
def delete(engine: Engine, origin_ref: str = None) -> int: def delete(engine: Engine, origins: ["Origin"] = None) -> int:
session = sessionmaker(bind=engine)() session = sessionmaker(bind=engine)()
if origin_ref is None: if origins is None:
deletions = session.query(Origin).delete() deletions = session.query(Origin).delete()
else: else:
deletions = session.query(Origin).filter(Origin.origin_ref == origin_ref).delete() deletions = session.query(Origin).filter(Origin.origin_ref in origins).delete()
session.commit() session.commit()
session.close() session.close()
return deletions return deletions

View File

@ -102,16 +102,7 @@ async function deleteOrigins() {
let xhr = new XMLHttpRequest(); let xhr = new XMLHttpRequest();
xhr.open("DELETE", '/-/origins', true); xhr.open("DELETE", '/-/origins', true);
xhr.send(); xhr.send();
} await fetchOriginsWithLeases()
async function deleteOrigin(origin_ref) {
if (origin_ref === undefined)
origin_ref = window.prompt("Please enter 'origin_ref' which should be deleted");
if (origin_ref === null || origin_ref === "")
return
let xhr = new XMLHttpRequest();
xhr.open("DELETE", `/-/origins/${origin_ref}`, true);
xhr.send();
} }
async function deleteLease(lease_ref) { async function deleteLease(lease_ref) {

View File

@ -5,20 +5,18 @@
{% endblock %} {% endblock %}
{% block content %} {% block content %}
<div> <div>
<div class="d-flex justify-content-between flex-wrap flex-md-nowrap align-items-center pt-3 pb-2 mb-3 border-bottom"> <div class="d-flex justify-content-between flex-wrap flex-md-nowrap align-items-center pt-3 pb-2 mb-3 border-bottom">
<h1 class="h2">Leases <small>with origin</small></h1> <h1 class="h2">Leases <small>with origin</small></h1>
<div class="btn-toolbar mb-2 mb-md-0"> <div class="btn-toolbar mb-2 mb-md-0">
<div class="btn-group me-2"> <div class="btn-group me-2">
<button type="button" class="btn btn-sm btn-outline-danger" onclick="deleteLease().finally(() => load())"> <button type="button" class="btn btn-sm btn-outline-danger" onclick="deleteLease();load();">delete lease</button>
delete lease
</button>
</div>
</div> </div>
</div> </div>
<div id="leases" class="mt-3"></div>
</div> </div>
<div id="leases" class="mt-3"></div>
</div>
{% endblock %} {% endblock %}
{% block scripts %} {% block scripts %}

View File

@ -5,33 +5,24 @@
{% endblock %} {% endblock %}
{% block content %} {% block content %}
<div> <div>
<div class="d-flex justify-content-between flex-wrap flex-md-nowrap align-items-center pt-3 pb-2 mb-3 border-bottom"> <div class="d-flex justify-content-between flex-wrap flex-md-nowrap align-items-center pt-3 pb-2 mb-3 border-bottom">
<h1 class="h2">Origins <small>with leases</small></h1> <h1 class="h2">Origins <small>with leases</small></h1>
<div class="btn-toolbar mb-2 mb-md-0"> <div class="btn-toolbar mb-2 mb-md-0">
<div class="btn-group me-2"> <div class="btn-group me-2">
<button type="button" class="btn btn-sm btn-outline-danger" onclick="deleteOrigin().finally(() => load())"> <button type="button" class="btn btn-sm btn-outline-danger" onclick="deleteOrigins()">delete all</button>
delete origin
</button>
<button type="button" class="btn btn-sm btn-outline-danger" onclick="deleteOrigins().finally(() => load())">
delete all
</button>
</div>
</div> </div>
</div> </div>
<div id="origins" class="mt-3"></div>
</div> </div>
<div id="origins" class="mt-3"></div>
</div>
{% endblock %} {% endblock %}
{% block scripts %} {% block scripts %}
{{ super() }} {{ super() }}
<script type="application/javascript"> <script type="application/javascript">
function load() { const origins = document.getElementById('origins')
const origins = document.getElementById('origins') fetchOriginsWithLeases(origins)
fetchOriginsWithLeases(origins) </script>
}
load()
</script>
{% endblock %} {% endblock %}