37 lines
1.0 KiB
Python
37 lines
1.0 KiB
Python
from django.shortcuts import render, redirect
|
|
from django.contrib.auth import login, logout
|
|
from django.contrib import messages
|
|
from django.contrib.auth.models import User
|
|
|
|
from .authentications import authentication
|
|
from .decorators import unauthenticated_user, authenticated_user
|
|
|
|
|
|
@unauthenticated_user
|
|
def loginPage(request):
|
|
if request.method == 'POST':
|
|
username = request.POST.get('username')
|
|
password = request.POST.get('password')
|
|
|
|
auth_user = authentication(username, password)
|
|
|
|
if auth_user is not None:
|
|
try:
|
|
user = User.objects.get(username=auth_user.lower())
|
|
except User.DoesNotExist:
|
|
user = User.objects.create_user(auth_user.lower())
|
|
|
|
login(request, user)
|
|
return redirect('home')
|
|
else:
|
|
messages.info(request, 'username or password is incorrect')
|
|
|
|
context = {}
|
|
return render(request, 'authentications/login.html', context)
|
|
|
|
|
|
@authenticated_user
|
|
def logoutUser(request):
|
|
logout(request)
|
|
return redirect('home')
|