aboutsummaryrefslogtreecommitdiff
path: root/app/func/newlink.py
diff options
context:
space:
mode:
authorParker <contact@pkrm.dev>2024-06-24 16:24:09 -0500
committerParker <contact@pkrm.dev>2024-06-24 16:24:09 -0500
commit5b92454760a8af14bd1031e72024946f868d1de6 (patch)
treef8384cbf0d142777d9bff341e13fd5882182908b /app/func/newlink.py
parent80a39d38bf829193c655a7320c86df2a3146db2a (diff)
Major overhaul + Bare bones web UI
Diffstat (limited to 'app/func/newlink.py')
-rw-r--r--app/func/newlink.py30
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