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
def register_profile(): if request.method == 'POST': name = request.json.get("name", None) last_name = request.json.get("last_name", None) about_me = request.json.get("about_me", None) github = request.json.get("github", None) linkedin = request.json.get("linkedin", None) twitter = request.json.get("twitter", None) user_id = request.json.get("user_id", None) if not name: return "Email required", 401 username = request.json.get("username", None) if not last_name: return "Username required", 401 password = request.json.get("password", None) if not about_me: return "Password required", 401 if not github: return "Password required", 401 # email_query = User.query.filter_by(user_id=user_id).first() # if email_query: # return "This email has been already taken", 401 profile = Profile() profile.name = name profile.last_name = last_name profile.twitter = twitter profile.github = github profile.linkedin = linkedin profile.user_id = user_id profile.about_me = about_me profile.status = True db.session.add(profile) db.session.commit() response = {"msg": "Added successfully", "github": github} return jsonify(response), 200