def edit_user(): form = EditInfoForm() if session.get('id'): id = session['id'] if request.method == "GET": user = User.select().where(User.id == id)[0] form.fname.data = user.fname form.lname.data = user.lname form.email.data = user.email return render_template('edit_user.html', form=form, id=id) if request.method == "POST": if form.validate_on_submit(): #edit in db codd\ user = User.select().where(User.id == id)[0] user.fname = form.fname.data.strip() user.lname = form.lname.data.strip() user.email = form.email.data.strip() user.save() flash("Edit successful") return redirect(url_for('list_users', )) print(form.errors) return render_template('edit_user.html', form=form) return redirect(url_for('list_users', ))
def login(): if session.get('username'): return redirect(url_for('home')) form = LoginForm() if request.method == 'GET': return render_template('login.html', form=form) if request.method == 'POST': email = form.email.data.strip() password = form.password.data.strip() if form.validate_on_submit(): qs = User.select().where(User.email == email) if len(qs) > 0: qs = qs[0] if qs.password == password: session['username'] = qs.fname session['id'] = qs.id session.permanent = True return redirect(url_for('home')) return render_template('login.html', form=form, error="Wrong password or email") print(form.errors) return render_template('login.html', form=form, error="Wrong password or email")
def change_password(): form = ChangePassword() if request.method == 'GET': return render_template('change_password.html', form=form) if request.method == 'POST': id = session['id'] user = User.select().where(User.id == id)[0] if form.validate_on_submit(): old_password = form.old_password.data.strip() if user.password == old_password: user.password = form.password.data.strip() print(user.password) user.save() flash("Password changed sucessfully") return redirect(url_for('list_users')) flash("wrong old password") return redirect(url_for('list_users')) print(form.errors) return render_template('change_password.html', form=form)
def list_users(): qs = User.select() content = {'users': qs} return render_template("list_users.html", content=content)