def login(): form = LoginForm() if form.validate_on_submit(): user = User.query.filter_by(email=form.email.data).first() if user and bcrypt.check_password_hash(user.password, form.password.data): login_user(user, remember=form.remember.data) next_page = request.args.get('next') return redirect(next_page) if next_page else redirect(url_for('home')) else: flash('Email or Password is Incorrect!', 'danger') return render_template('login.html', title='Login', form=form)
def post(self, request, **kwargs): if request.user.is_authenticated: return redirect('forum:index') form = LoginForm(data=request.POST) if form.is_valid(): user = authenticate(request, username=form.cleaned_data['username'], password=form.cleaned_data['password']) if user: login(request, user) return redirect(request.GET.get('next', reverse('forum:index'))) kwargs['form'] = form return super().get(request, **kwargs)
def get(self, request, **kwargs): if request.user.is_authenticated: return redirect('forum:index') kwargs['form'] = LoginForm() return super().get(request, **kwargs)
def login(): form = LoginForm() return render_template('login.html', form=form)