def create_token(): email = request.json.get("email", None) password = request.json.get("password", None) if email is None: return jsonify({"msg": "No email was provided"}), 400 if password is None: return jsonify({"msg": "No password was provided"}), 400 user = User.query.filter_by(email=email, password=password).first() if user is None: # the user was not found on the database return jsonify({"msg": "Invalid username or password"}), 401 else: todos = Todolist.query.filter_by(user_id=user.id).first() favs = Favorites.query.filter_by(user_id=user.id).first() profile = Profile.query.filter_by(user_id=user.id).first() if todos is None: new_todolist = Todolist() new_todolist.tasks = [""] new_todolist.user_id = user.id db.session.add(new_todolist) db.session.commit() print(new_todolist) else: pass if favs is None: new_favs = Favorites() new_favs.favs = [""] new_favs.user_id = user.id db.session.add(new_favs) db.session.commit() else: pass if profile is None: new_profile = Profile() new_profile.user_id = user.id new_profile.user_image = [""] new_profile.personal_description = [""] new_profile.occupation = [""] new_profile.location = [""] new_profile.hobbies = [""] db.session.add(new_profile) db.session.commit() else: pass print(user) # create a new token with the user id inside access_token = create_access_token(identity=user.id) return jsonify({"token": access_token, "user_id": user.id}), 200