Delete records for specific link

This commit is contained in:
Parker M. 2024-02-25 22:13:37 -06:00
parent 96d64f4704
commit 7086fbce95
No known key found for this signature in database
GPG Key ID: 95CD2E0C7E329F2A
2 changed files with 28 additions and 1 deletions

View File

@ -0,0 +1,20 @@
import sqlalchemy
from db import engine
"""
Delete all of the IP log records that are associated with a specific link
"""
def del_link_records(link, owner):
with engine.begin() as conn:
try:
link_owner = conn.execute(sqlalchemy.text('SELECT owner FROM links WHERE link = :link'), [{'link': link}]).fetchone()[0]
except TypeError:
return 'Link does not exist', 200
if owner == link_owner:
with engine.begin() as conn:
conn.execute(sqlalchemy.text('DELETE FROM records WHERE link = :link'), [{'link': link}])
return 'Link records have been deleted', 200
else:
return 'You are not the owner of this link', 401

View File

@ -10,6 +10,7 @@ from func.log import log
from func.delete_link import delete_link
from func.renew_link import renew_link
from func.link_records import link_records
from func.del_link_records import del_link_records
app = flask.Flask(__name__)
@ -88,4 +89,10 @@ def records_link(link):
if response[0].startswith('Timestamp'):
return response[0], response[1]
else:
return flask.jsonify(msg=response[0]), response[1]
return flask.jsonify(msg=response[0]), response[1]
@app.route('/<link>/records', methods=['POST'])
def records_delete(link):
response = del_link_records(link, auth.current_user())
return flask.jsonify(msg=response[0]), response[1]