1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
| from django.shortcuts import render, redirect
from .forms import UserSignUpForm, ParagraphErrorList, UserSignInForm
from django.contrib import messages
from .models import User
from django.contrib.auth import authenticate, login
def signup(request):
if request.method == 'POST':
form = UserSignUpForm(request.POST, error_class=ParagraphErrorList)
if form.is_valid():
email = form.cleaned_data['email']
username = form.cleaned_data['username']
password = form.cleaned_data['password']
user = User.objects.filter(email=email, username=username)
if not user.exists():
user = User.objects.create(
email=email,
username=username,
password=enc_password
)
messages.success(request, 'Votre compte a bien été créé, vous pouvez vous connecter !')
return redirect('/signin/')
else:
form = UserSignUpForm()
return render(request, 'store/signup.html', {'form': form})
def signin(request):
if request.method == "POST":
form = UserSignInForm(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 not None:
login(request, user)
return redirect('home')
else:
messages.info(request, "Le nom d'utilisateur ou le mot de passe est incorrect.")
else:
form = UserSignInForm()
return render(request, 'store/signin.html', {'form': form}) |
Partager