2016-10-14 11:21:48 +03:00
|
|
|
from functools import wraps
|
|
|
|
from flask import redirect, url_for, session
|
|
|
|
from SWSCloudCore.models import Users
|
|
|
|
|
|
|
|
|
|
|
|
def requires_login(f):
|
|
|
|
@wraps(f)
|
|
|
|
def decorated_function(*args, **kwargs):
|
|
|
|
# Check session
|
|
|
|
required = ['email', 'password', 'user_id']
|
|
|
|
success = True
|
|
|
|
|
|
|
|
for r in required:
|
|
|
|
if r in session and success:
|
|
|
|
continue
|
|
|
|
else:
|
|
|
|
return redirect(url_for("account.logout"))
|
|
|
|
|
2024-12-11 20:42:33 +03:00
|
|
|
if not Users.auth(session.get('email'), session.get('password').encode(), 1):
|
2016-10-14 11:21:48 +03:00
|
|
|
return redirect(url_for("account.logout"))
|
|
|
|
|
|
|
|
return f(*args, **kwargs)
|
|
|
|
return decorated_function
|