def login(database): auth = request.get_json(force=True) if auth and auth['email'] and auth['password']: if is_valid_email(auth['email']): user = database.query.filter_by(email = auth['email'], status = 'active').first() if user: if check_password_hash(user.password, auth['password']): token = jwt.encode({ 'user': user.id, 'type' : user.role, 'username' : user.username, 'exp': datetime.utcnow() + timedelta(days = 1)}, os.environ.get('secret_key'),algorithm="HS256") return jsonify({ 'userid':user.id, 'username':user.username, 'token':token}), 201 return jsonify({'message':'Could not verify'}), 403 return jsonify({'message':'user not exists'}), 200 return jsonify({'message':'Invalid email!'}), 400 return jsonify({'message':'Invalid credentials'}), 401
O(n)