From fdc9939f57a21d2aa3dfd8a49339becc484ed491 Mon Sep 17 00:00:00 2001 From: Parker Date: Sun, 25 Feb 2024 17:46:34 -0600 Subject: [PATCH] Save expire_date as datetime rather than string --- app/func/newlink.py | 4 +++- app/func/renew_link.py | 6 ++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/app/func/newlink.py b/app/func/newlink.py index 6fa1340..9cc220f 100644 --- a/app/func/newlink.py +++ b/app/func/newlink.py @@ -29,7 +29,9 @@ def generate_link(request, owner): while True: try: link = ''.join(random.choices(choices, k=5)) - conn.execute(sqlalchemy.text('INSERT INTO links(owner, link, redirect_link, expire_date) VALUES (:owner, :link, :redirect_link, :expire_date)'), [{'owner': owner, 'link': link, 'redirect_link': redirect_link, 'expire_date': (datetime.datetime.now() + datetime.timedelta(days=7)).strftime('%d/%m/%Y')}]) + expire_date = (datetime.datetime.now() + datetime.timedelta(days=7)).strftime('%d/%m/%Y') + expire_date = datetime.datetime.strptime(expire_date, '%d/%m/%Y') + conn.execute(sqlalchemy.text('INSERT INTO links(owner, link, redirect_link, expire_date) VALUES (:owner, :link, :redirect_link, :expire_date)'), [{'owner': owner, 'link': link, 'redirect_link': redirect_link, 'expire_date': expire_date}]) conn.commit() break except exc.IntegrityError: diff --git a/app/func/renew_link.py b/app/func/renew_link.py index f0fc166..bbb3de2 100644 --- a/app/func/renew_link.py +++ b/app/func/renew_link.py @@ -16,7 +16,9 @@ def renew_link(link, owner): if owner == link_owner: with engine.begin() as conn: - conn.execute(sqlalchemy.text('UPDATE links SET expire_date = :expire_date WHERE link = :link'), [{'expire_date': (datetime.datetime.now() + datetime.timedelta(days=7)).strftime('%d/%m/%Y'), 'link': link}]) - return f'Link renewed, now expires on {(datetime.datetime.now() + datetime.timedelta(days=7)).strftime("%d/%m/%Y")}', 200 + expire_date = (datetime.datetime.now() + datetime.timedelta(days=7)).strftime('%d/%m/%Y') + expire_date = datetime.datetime.strptime(expire_date, '%d/%m/%Y') + conn.execute(sqlalchemy.text('UPDATE links SET expire_date = :expire_date WHERE link = :link'), [{'expire_date': expire_date, 'link': link}]) + return f'Link renewed, now expires on {expire_date}', 200 else: return 'You are not the owner of this link', 401 \ No newline at end of file