def login_view(request): """Log in user.""" csrf_tk = {} csrf_tk.update(csrf(request)) error = False initial = {} # Redirecting user once logged in? if "next" in request.GET: next_page = request.GET["next"] else: next_page = None if request.method == "POST": form = LoginForm(request.POST) username = request.POST["username"] password = request.POST["password"] user = authenticate(username=username, password=password) if user is not None: profile = get_object_or_404(Profile, user=user) if user.is_active: if profile.can_read_now(): login(request, user) request.session["get_token"] = generate_token() if "remember" not in request.POST: request.session.set_expiry(0) profile.last_ip_address = get_client_ip(request) profile.save() # redirect the user if needed try: return redirect(next_page) except: return redirect(reverse("homepage")) else: messages.error(request, _(u"Vous n'êtes pas autorisé à vous connecter " u"sur le site, vous avez été banni par un " u"modérateur.")) else: messages.error(request, _(u"Vous n'avez pas encore activé votre compte, " u"vous devez le faire pour pouvoir vous " u"connecter sur le site. Regardez dans vos " u"mails : {}.").format(user.email)) else: messages.error(request, _(u"Les identifiants fournis ne sont pas valides.")) initial = {'username': username} form = LoginForm(initial=initial) if next_page is not None: form.helper.form_action += "?next=" + next_page csrf_tk["error"] = error csrf_tk["form"] = form csrf_tk["next_page"] = next_page return render(request, "member/login.html", {"form": form, "csrf_tk": csrf_tk})
def login_view(request): """Log in user.""" csrf_tk = {} csrf_tk.update(csrf(request)) error = False # Redirecting user once logged in? if "next" in request.GET: next_page = request.GET["next"] else: next_page = None if request.method == "POST": form = LoginForm(request.POST) username = request.POST["username"] password = request.POST["password"] user = authenticate(username=username, password=password) if user is not None: profile = get_object_or_404(Profile, user=user) if user.is_active: if profile.can_read_now(): login(request, user) request.session["get_token"] = generate_token() if "remember" not in request.POST: request.session.set_expiry(0) profile.last_ip_address = get_client_ip(request) profile.save() # redirect the user if needed try: return redirect(next_page) except: return redirect(reverse("zds.pages.views.home")) else: messages.error(request, "Vous n'êtes pas autorisé à vous connecter " "sur le site, vous avez été banni par un " "modérateur") else: messages.error(request, "Vous n'avez pas encore activé votre compte, " "vous devez le faire pour pouvoir vous " "connecter sur le site. Regardez dans vos " "mails : " + str(user.email)) else: messages.error(request, "Les identifiants fournis ne sont pas valides") form = LoginForm() form.helper.form_action = reverse("zds.member.views.login_view") if next_page is not None: form.helper.form_action += "?next=" + next_page csrf_tk["error"] = error csrf_tk["form"] = form csrf_tk["next_page"] = next_page return render_template("member/login.html", {"form": form, "csrf_tk": csrf_tk, "next_page": next_page})
def login_view(request): '''Log in user''' csrf_tk = {} csrf_tk.update(csrf(request)) error = False # Redirecting user once logged in? if request.GET.has_key('next'): next_page = request.GET['next'] else: next_page = None if request.method == 'POST': form = LoginForm(request.POST) if form.is_valid(): username = request.POST['username'] password = request.POST['password'] user = authenticate(username=username, password=password) if user is not None: login(request, user) request.session['get_token'] = generate_token() if not 'remember' in request.POST: request.session.set_expiry(0) try: profile = get_object_or_404(Profile, user=request.user) profile.last_ip_address = get_client_ip(request) profile.save() # Annotation isn't possible for this method. So we check # if the user is ban when we retrieved him. if not profile.can_read_now(): logout_view(request) except: profile = None # redirect the user if needed try: return redirect(next_page) except: return redirect(reverse('zds.pages.views.home')) else: error = 'Les identifiants fournis ne sont pas valides' else: error = 'Veuillez spécifier votre identifiant et votre mot de passe' else: form = LoginForm() csrf_tk['error'] = error csrf_tk['form'] = form csrf_tk['next_page'] = next_page return render_template('member/login.html', csrf_tk)
def login_view(request): '''Log in user''' csrf_tk = {} csrf_tk.update(csrf(request)) error = False # Redirecting user once logged in? if request.GET.has_key('next'): next_page = request.GET['next'] else: next_page = None if request.method == 'POST': form = LoginForm(request.POST) if form.is_valid(): username = request.POST['username'] password = request.POST['password'] user = authenticate(username=username, password=password) if user is not None: login(request, user) request.session['get_token'] = generate_token() if not 'remember' in request.POST: request.session.set_expiry(0) try: profile = get_object_or_404(Profile, user=request.user) profile.last_ip_address = get_client_ip(request) profile.save() # Annotation isn't possible for this method. So we check # if the user is ban when we retrieved him. if not profile.can_read_now(): logout_view(request) except : profile= None # redirect the user if needed try: return redirect(next_page) except: return redirect(reverse('zds.pages.views.home')) else: error = 'Les identifiants fournis ne sont pas valides' else: error = 'Veuillez spécifier votre identifiant et votre mot de passe' else: form = LoginForm() csrf_tk['error'] = error csrf_tk['form'] = form csrf_tk['next_page'] = next_page return render_template('member/login.html', csrf_tk)
def login_view(request): """Log in user.""" csrf_tk = {} csrf_tk.update(csrf(request)) error = False initial = {} # Redirecting user once logged in? if 'next' in request.GET: next_page = request.GET['next'] else: next_page = None if request.method == 'POST': form = LoginForm(request.POST) username = request.POST['username'] password = request.POST['password'] user = authenticate(username=username, password=password) if user is not None: profile = get_object_or_404(Profile, user=user) if user.is_active: if profile.can_read_now(): login(request, user) request.session['get_token'] = generate_token() if 'remember' not in request.POST: request.session.set_expiry(0) profile.last_ip_address = get_client_ip(request) profile.save() # redirect the user if needed try: return redirect(next_page) except: return redirect(reverse('homepage')) else: messages.error( request, _(u'Vous n\'êtes pas autorisé à vous connecter ' u'sur le site, vous avez été banni par un ' u'modérateur.')) else: messages.error( request, _(u'Vous n\'avez pas encore activé votre compte, ' u'vous devez le faire pour pouvoir vous ' u'connecter sur le site. Regardez dans vos ' u'mails : {}.').format(user.email)) else: messages.error(request, _(u'Les identifiants fournis ne sont pas valides.')) initial = {'username': username} form = LoginForm(initial=initial) if next_page is not None: form.helper.form_action += '?next=' + next_page csrf_tk['error'] = error csrf_tk['form'] = form csrf_tk['next_page'] = next_page return render(request, 'member/login.html', { 'form': form, 'csrf_tk': csrf_tk })
def login_view(request): """Logs user in.""" next_page = request.GET.get('next', '/') if next_page in [reverse('member-login'), reverse('register-member'), reverse('member-logout')]: next_page = '/' csrf_tk = {'next_page': next_page} csrf_tk.update(csrf(request)) error = False if request.method != 'POST': form = LoginForm() else: form = LoginForm(request.POST) if form.is_valid(): username = form.cleaned_data['username'] password = form.cleaned_data['password'] user = authenticate(username=username, password=password) if user is None: initial = {'username': username} if User.objects.filter(username=username).exists(): messages.error( request, _( 'Le mot de passe saisi est incorrect. ' 'Cliquez sur le lien « Mot de passe oublié ? » ' 'si vous ne vous en souvenez plus.' ) ) else: messages.error( request, _( 'Ce nom d’utilisateur est inconnu. ' 'Si vous ne possédez pas de compte, ' 'vous pouvez vous inscrire.' ) ) form = LoginForm(initial=initial) if next_page is not None: form.helper.form_action += '?next=' + next_page csrf_tk['error'] = error csrf_tk['form'] = form return render(request, 'member/login.html', { 'form': form, 'csrf_tk': csrf_tk }) profile = get_object_or_404(Profile, user=user) if not user.is_active: messages.error( request, _( 'Vous n\'avez pas encore activé votre compte, ' 'vous devez le faire pour pouvoir vous ' 'connecter sur le site. Regardez dans vos ' 'mails : {}.' ).format(user.email) ) elif not profile.can_read_now(): messages.error( request, _( 'Vous n\'êtes pas autorisé à vous connecter ' 'sur le site, vous avez été banni par un ' 'modérateur.' ) ) else: login(request, user) request.session['get_token'] = generate_token() if 'remember' not in request.POST: request.session.set_expiry(0) profile.last_ip_address = get_client_ip(request) profile.save() # Redirect the user if needed. # Set the cookie for Clem smileys. # (For people switching account or clearing cookies # after a browser session.) try: response = redirect(resolve(next_page).url_name) except NoReverseMatch: response = redirect(next_page) except Resolver404: response = redirect(reverse('homepage')) set_old_smileys_cookie(response, profile) return response if next_page is not None: form.helper.form_action += '?next=' + next_page csrf_tk['error'] = error csrf_tk['form'] = form return render(request, 'member/login.html', { 'form': form, 'csrf_tk': csrf_tk })
def login_view(request): """Logs user in.""" next_page = request.GET.get("next", "/") if next_page in [ reverse("member-login"), reverse("register-member"), reverse("member-logout") ]: next_page = "/" csrf_tk = {"next_page": next_page} csrf_tk.update(csrf(request)) error = False if request.method != "POST": form = LoginForm() else: form = LoginForm(request.POST) if form.is_valid(): username = form.cleaned_data["username"] password = form.cleaned_data["password"] user = authenticate(username=username, password=password) if user is None: initial = {"username": username} if User.objects.filter(username=username).exists(): messages.error( request, _("Le mot de passe saisi est incorrect. " "Cliquez sur le lien « Mot de passe oublié ? » " "si vous ne vous en souvenez plus."), ) else: messages.error( request, _("Ce nom d’utilisateur est inconnu. " "Si vous ne possédez pas de compte, " "vous pouvez vous inscrire."), ) form = LoginForm(initial=initial) if next_page is not None: form.helper.form_action += "?next=" + next_page csrf_tk["error"] = error csrf_tk["form"] = form return render(request, "member/login.html", { "form": form, "csrf_tk": csrf_tk }) profile = get_object_or_404(Profile, user=user) if not user.is_active: messages.error( request, _("Vous n'avez pas encore activé votre compte, " "vous devez le faire pour pouvoir vous " "connecter sur le site. Regardez dans vos " "mails : {}.").format(user.email), ) elif not profile.can_read_now(): messages.error( request, _("Vous n'êtes pas autorisé à vous connecter " "sur le site, vous avez été banni par un " "modérateur."), ) else: login(request, user) request.session["get_token"] = generate_token() if "remember" not in request.POST: request.session.set_expiry(0) profile.last_ip_address = get_client_ip(request) profile.save() # Redirect the user if needed. # Set the cookie for Clem smileys. # (For people switching account or clearing cookies # after a browser session.) try: response = redirect(resolve(next_page).url_name) except NoReverseMatch: response = redirect(next_page) except Resolver404: response = redirect(reverse("homepage")) return response if next_page is not None: form.helper.form_action += "?next=" + next_page csrf_tk["error"] = error csrf_tk["form"] = form return render(request, "member/login.html", { "form": form, "csrf_tk": csrf_tk, "next_page": next_page })