from django.shortcuts import render , HttpResponse , redirect from django.contrib.auth import login as log , authenticate , logout from Accounts.models import User from django.contrib import messages # Create your views here. def login(request): if request.method == 'POST': email = request.POST.get('email') password = request.POST.get('password') user = authenticate(request, email=email, password=password) if user is not None: log(request, user) return redirect('/') else: return render(request, 'templates/login.html', {'error_message': 'Invalid email or password'}) else: return render(request, 'templates/login.html' ) def signup(request): if request.method == "POST": first_name = request.POST.get("first_name") last_name = request.POST.get("last_name") email = request.POST.get("email") password1 = request.POST.get("password1") password2 = request.POST.get("password2") # Validation if password1 != password2: messages.error(request, "Passwords do not match.") return redirect("/Accounts/signup") if User.objects.filter(email=email).exists(): messages.error(request, "Email already registered.") return redirect("/Accounts/signup") user = User.objects.create_user( email=email, first_name=first_name, last_name=last_name, password=password1, ) return redirect('/') else: return render(request, 'templates/signup.html' ) def logout_view(request): logout(request) return redirect('/')