def login(): if session.get('username'): return redirect(url_for('index')) form = LoginForm() if form.validate_on_submit(): email = form.email.data password = form.password.data user = User.objects(email=email).first() if user and user.get_password(password): flash(f"{user.first_name},you are successfully logged in!","success") session['user_id'] = user.user_id session['username'] = user.first_name return redirect("/index") else: flash("Sorry, something went wrong","danger") return render_template("login.html", title ="Login", form = form,login =True)
def validate_email(self,email): user = User.objects(email = email.data).first() if user: raise ValidationError("Email is already in use. Pick another one.")
def delete(self,idx): User.objects(user_id = idx).delete() return jsonify('User is deleted!')
def put(self,idx): data = api.payload User.objects(user_id = idx).update(**data) return jsonify(User.objects(user_id))
def get(self,idx): return jsonify(User.objects(user_id = idx))
def post(self): data = api.payload user = User(user_id = data['user_id'], email = data['email'], first_name = data['first_name'], last_name= data['last_name']) user.set_password(data['password']) user.save() return jsonify(User.objects(user_id =data['user_id']))