| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- from django.shortcuts import render
- from django.http import HttpResponse,HttpResponseRedirect,FileResponse
- from django.urls import reverse
- from .forms import *
- from config.views import getConfig
- from utente.models import *
- from django.contrib.auth import authenticate
- import django
- from att.views import *
- def start(request):
- '''
- da qui si comincia
- l'utente e' invitato a inserire il suo codice fiscale e la password/pin assegnata in fase di visita medica
- se i dati corrispondono, si forniscono i file e alcune info di servizio
- '''
- request.session.flush()
- request.session.set_expiry(3600)
- data = dict()
- data['HeaderTitle'] = getConfig('HeaderTitle')
- if request.method=="POST":
- result = LoginUser(request.POST)
- if result.is_valid():
- username = result.cleaned_data['cfisc']
- pin = result.cleaned_data['passs']
- #verifica corrispondenza utente
- u = None
- try:
- # verifica che esista un utente ordinario
- u = Utente.objects.get(codicefiscale=username.upper())
- except Utente.DoesNotExist as dne:
- print("non ci provare")
- u = None
- if u: #utente esiste
- if u.pin.strip()== pin:
- # password valida
- data = dict()
- data['u'] = u
- #data['settings'] = settings
- #data['static'] = static
- request.session['UserId'] = u.id
- print('utente validato:',u.nome)
- setLog(1,utente=u)
- #setNewLog(1,{'u':u.nome})
- return HttpResponseRedirect(reverse("utente:download"))
- else: # l'utente ordinario non esiste
- print('verifica amministratore')
- user = authenticate(username=username.strip().lower(),password=pin.strip())
- if user:
- if isinstance(user,django.contrib.auth.models.User):
- print('tipo amministratore',type(user))
- request.session['AdminId'] = user.id
- setLog(1,amministratore=user)
- #setNewLog(2,{'a':user.username})
- return HttpResponseRedirect(reverse("azienda:welcome"))
- else:
- temp={}
- temp['cfisc'] = ''
- temp['passs'] = ''
- result = LoginUser(temp)
- data['login'] = result
- return render(request,'login.html',data)
|