def login(): from models.models import User, db, datetime context = { 'password': request.form.get('password'), 'email': request.form.get('email'), 'msg': 'Sorry, but your login or password is incorrect', } if request.method == 'POST': query = User.query.filter_by(email=context.get('email').lower(), password=User.hash_password(context.get('password'))).first() if query: user = User(query=query) query.online = True query.active = datetime.now() db.session.commit() login_user(user, remember=True) else: return render_template('base.html', context=context) return redirect(url_for('main.index_page'))
def logout(): from models.models import User, db, datetime query = User.query.filter_by(id=session.get('user_id')).first() if query is not None: query.online = False query.active = datetime.now() db.session.commit() logout_user() return redirect(url_for('main.index_page'))
def loading_user(user_id): from models.models import User, datetime, session, db if session.get('user_active'): id_ = session.get('user_id') print(' --- LOGIN from sessions ---> ID :', id_) get_rooms(id_) return User(reverse_user_session=True) query = User.query.filter(User.id == user_id).first() if query is None: return None query.online = True query.active = datetime.now() user = User(query=query, user_session=True) print(' --- LOGIN with request to DB ---> ID :', user.id) db.session.commit() get_rooms(user.id) return user