diff options
author | Parker <contact@pkrm.dev> | 2024-06-24 16:24:09 -0500 |
---|---|---|
committer | Parker <contact@pkrm.dev> | 2024-06-24 16:24:09 -0500 |
commit | 5b92454760a8af14bd1031e72024946f868d1de6 (patch) | |
tree | f8384cbf0d142777d9bff341e13fd5882182908b /app/func/newlink.py | |
parent | 80a39d38bf829193c655a7320c86df2a3146db2a (diff) |
Major overhaul + Bare bones web UI
Diffstat (limited to 'app/func/newlink.py')
-rw-r--r-- | app/func/newlink.py | 30 |
1 files changed, 0 insertions, 30 deletions
diff --git a/app/func/newlink.py b/app/func/newlink.py deleted file mode 100644 index 06776e6..0000000 --- a/app/func/newlink.py +++ /dev/null @@ -1,30 +0,0 @@ -import validators -import random -import string -import datetime -import sqlalchemy -from sqlalchemy import exc - -from db import engine - -""" -Generate and return a new randomized link that is connected to the user -Links are composed of 5 uppercase ASCII characters + numbers -""" -def generate_link(redirect_link, owner): - if not validators.url(redirect_link): - return 422 - - with engine.begin() as conn: - choices = string.ascii_uppercase + '1234567890' - while True: - try: - link = ''.join(random.choices(choices, k=5)) - expire_date = datetime.datetime.date(datetime.datetime.now()) + datetime.timedelta(days=7) - 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: - continue - - return link, expire_date |