from django.shortcuts import render from django.http import HttpResponse,HttpResponseRedirect,FileResponse from django.contrib.auth.models import User from django.urls import reverse from .models import * from .forms import * from config.views import * def welcome(request): data = dict() data['HeaderTitle'] = getConfig('HeaderTitle') if not 'AziendaId' in request.session: return HttpResponseRedirect(reverse("login:start")) else: data['AziendaId'] = request.session['AziendaId'] if not 'AdminId' in request.session or 'UserId' in request.session: print("Non rilevo presensa UserId e AdminId in request.session") return HttpResponseRedirect(reverse("login:start")) if 'AdminId' in request.session: data['AdminId'] = request.session['AdminId'] if 'UserId' in request.session: data['UserId'] = request.session['UserId'] #filtro: # selezionare tutti gli utenti per AziendaId data['admin'] = User.objects.get(pk=data['AdminId']) data['azienda'] = Azienda.objects.get(pk=data['AziendaId']) data['utenti'] = data['azienda'].utente_set.all() if request.method == 'POST': print('qualcuno ha premuto un id') if 'scelta' in request.POST: scelta = request.POST['scelta'] request.session['UserEditId'] = scelta print('scelta effettuata',scelta) return HttpResponseRedirect(reverse("utente:edit")) return render(request,'utente.welcome.html',data) def edit(request): data=dict() if not 'AdminId' in request.session: return HttpResponseRedirect(reverse("login:start")) data['AdminId']=request.session['AdminId'] if not 'AziendaId' in request.session: return HttpResponseRedirect(reverse("login:start")) data['AziendaId']=request.session['AziendaId'] if not 'AdminId' in request.session or 'UserId' in request.session: print("Non rilevo presensa UserId e AdminId in request.session") return HttpResponseRedirect(reverse("login:start")) if 'AdminId' in request.session: data['AdminId'] = request.session['AdminId'] if 'UserId' in request.session: data['UserId'] = request.session['UserId'] if not'UserEditId' in request.session: return HttpResponseRedirect(reverse("login:start")) data['UserEditId'] = request.session['UserEditId'] #filtro: # selezionare tutti gli utenti per AziendaId data['admin'] = User.objects.get(pk=data['AdminId']) data['azienda'] = Azienda.objects.get(pk=data['AziendaId']) utente = None if data['UserEditId'] == 0: utente = Utente() utente.azienda = data['azienda'] else: try: utente = Utente.objects.get(pk=data['UserEditId']) except Utente.DoesNotExist as dne: print('strana richiesta, utente inesistente') flagDne=True utente=None print("Non ci siamo, manca l'utente") if request.method == 'POST': print('request.method x edit utente') fu = formUtente(request.POST) if fu.is_valid(): print('form valida') print('i dati sono grosso modo coerenti, salviamoli') utente.nome = fu.cleaned_data['nome'] utente.codicefiscale = fu.cleaned_data['codicefiscale'] utente.luogonascita = fu.cleaned_data['luogonascita'] utente.datanascita = fu.cleaned_data['datanascita'] utente.mail = fu.cleaned_data['mail'] utente.save() data['utente'] = formUtente(request.POST) else: print('Form non valida') data['utente'] = formUtente(request.POST) else: print('Request non valida') tmp = dict() tmp['nome'] = utente.nome tmp['codicefiscale'] = utente.codicefiscale tmp['datanascita'] = utente.datanascita tmp['luogonascita'] = utente.luogonascita tmp['mail'] = utente.mail data['utente'] = formUtente(tmp) return render(request,'utente.edit.html',data)