add login route

This commit is contained in:
2026-04-17 06:34:45 +03:00
parent 54ed6fef3a
commit 76d600f01d
4 changed files with 53 additions and 14 deletions

View File

@@ -36,11 +36,12 @@ def get_active_user() -> Users | None:
sess = Sessions.find({'key': session['pyrom_session_key']})
return Users.find({'id': sess.user_id})
def create_session(user_id):
def create_session(user_id, temporary=False):
expires_days = 2 if temporary else 31
return Sessions.create({
'key': secrets.token_hex(16),
'user_id': user_id,
'expires_at': int(time.time()) + (31 * 24 * 60 * 60),
'expires_at': int(time.time()) + (expires_days * 24 * 60 * 60),
})
# annotations
@@ -48,7 +49,7 @@ def login_required(view_func):
@wraps(view_func)
def wrapper(*args, **kwargs):
if not is_logged_in():
return redirect(url_for('users.log_in_page'))
return redirect(url_for('users.log_in'))
return view_func(*args, **kwargs)
return wrapper