1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 |
- from django.shortcuts import render, redirect
- from . forms import LoginForm
- from . models import User
- from hashlib import sha256
- from django.core import serializers
- from django.contrib.auth import authenticate, login, logout
- from django.contrib.auth.decorators import login_required
- from .forms import CreateUserForm
- def logout_user(request):
- logout(request)
- return redirect('home')
- def create_user(request):
- form = CreateUserForm
- if request.method == "POST":
- form = CreateUserForm(request.POST)
- if form.is_valid():
- data = form.cleaned_data
- print(data)
- context = {
- 'form': form
- }
- return render(request, 'create_user.html', context=context)
- def home(request):
- form = LoginForm
- login_error = False
- if request.method == "POST":
- form = LoginForm(request.POST or None)
- if form.is_valid():
- data = form.cleaned_data
- pin = sha256(data['pin'].encode('utf-8')).hexdigest()
- print(pin)
- user = User.objects.filter(pin=pin)
- if user is None:
- form.add_error('pin', 'Invalid login')
- login_error = True
- else:
- request.session['u'] = serializers.serialize('json', user)
- return redirect('timesheet')
- context = {
- 'form': form,
- 'login_error': login_error
- }
- return render(request, 'home.html', context=context)
- @login_required(login_url='/')
- def timesheet(request):
- context = {
- }
- return render(request, 'timesheet.html', context=context)
|