From 025e44f5baf14e2dd8a90230b08ecedc84198d9f Mon Sep 17 00:00:00 2001 From: Lefort Pablo Date: Thu, 19 Oct 2017 17:44:07 -0300 Subject: [PATCH 1/2] Add login view for prevent login users without having the email confirmed --- simple_email_confirmation/views.py | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 simple_email_confirmation/views.py diff --git a/simple_email_confirmation/views.py b/simple_email_confirmation/views.py new file mode 100644 index 0000000..8c83be3 --- /dev/null +++ b/simple_email_confirmation/views.py @@ -0,0 +1,17 @@ +from django.contrib import messages +from django.contrib.auth import views as auth_views +from django.utils.translation import gettext_lazy as _ + + +class LoginView(auth_views.LoginView): + redirect_authenticated_user = True + + def post(self, request, *args, **kwargs): + response = super(LoginView).post(request, *args, **kwargs) + if request.user.is_authenticated(): + if request.user.is_confirmed == False: + messages.error(request, _('Email not verified')) + auth_views.LogoutView.as_view()(request) + response = self.get(request, *args, **kwargs) + + return response From 5062b0a538a5fca3c0d6eec61b76f72f659119e3 Mon Sep 17 00:00:00 2001 From: Lefort Pablo Date: Fri, 20 Oct 2017 11:52:43 -0300 Subject: [PATCH 2/2] Remove redirect for prevent too any redirects --- simple_email_confirmation/views.py | 1 - 1 file changed, 1 deletion(-) diff --git a/simple_email_confirmation/views.py b/simple_email_confirmation/views.py index 8c83be3..290a01d 100644 --- a/simple_email_confirmation/views.py +++ b/simple_email_confirmation/views.py @@ -4,7 +4,6 @@ class LoginView(auth_views.LoginView): - redirect_authenticated_user = True def post(self, request, *args, **kwargs): response = super(LoginView).post(request, *args, **kwargs)