def login(): # TODO: make this do better auth, it needs to set a cookie for a period of # time if request.method == 'POST': form = LoginForm.from_flat(request.form) if form.validate(): user = User.query.filter_by( username=request.form['username']).first() if user == None: form['username'].add_error('Username %s not found' % form['username'].value) gen = Generator() return render_template("admin/login.html", form=form, html=gen) if user.check_password(request.form['password']): g.user = user set_user() if request.args: return redirect(request.args.get('next')) else: return redirect(url_for('frontend.index')) else: gen = Generator() return render_template("admin/login.html", form=form, html=gen) form = LoginForm() gen = Generator() return render_template("admin/login.html", form=form, html=gen, **request.args)