from django.shortcuts import render from django.http import HttpResponseRedirect from django.urls import reverse from .models import * from django.contrib.auth.models import User from config.views import * from att.views import * from .forms import * def welcome(request): if not 'AdminId' in request.session: return HttpResponseRedirect(reverse("login:start")) AdminId = request.session['AdminId'] print('AdminId',AdminId) data = dict() if 'AziendaId' in request.session: AziendaId = request.session['AziendaId'] print('AziendaId',AziendaId) azienda = Azienda.objects.get(pk=AziendaId) data['azienda'] = azienda data['Navbar']=True data['HeaderTitle'] = getConfig('HeaderTitle') admin = User.objects.get(pk=AdminId) data['admin'] = admin print('admin',admin.id,admin.get_username()) assegnazione = Assegnazione.objects.filter(user=admin.id) print('assegnazione',len(assegnazione)) data['listaAttivitaxAmministrazione']=getLogxAmministrazione(admin) if request.method=="POST": print(request.POST) if 'ritorna' in request.POST: print('premuto tast ritorno,logout') return HttpResponseRedirect(reverse("login:start")) if "sceltaazienda" in request.POST: sceltaazienda = request.POST.get('sceltaazienda') try: sceltaazienda = int(sceltaazienda) except ValueError as ve: print("Non e' stata fatta la scelta corretta") print(ve) return HttpResponseRedirect(reverse('azienda:welcome')) print("sceltaazienda = ",request.POST.get('sceltaazienda')) if sceltaazienda == 0: #richiesta una nuova azienda data['AziendaId']=None return HttpResponseRedirect(reverse('azienda:edit')) else: azienda = Azienda.objects.get(pk=sceltaazienda) data['azienda'] = azienda request.session['AziendaId'] = azienda.id if "utenti" in request.POST: print('premuto tasto utenti') return HttpResponseRedirect(reverse('utente:welcome')) if 'documenti' in request.POST: # stato premuto il tasto documenti print('premuto tasto documenti') return HttpResponseRedirect(reverse('documento:welcome')) if "attivita" in request.POST: print('premuto tasto attivita') data['listaAttivitaxAzienda']=getLogxAzienda(azienda) if 'comunicazioni' in request.POST: print('premuto tasto comunicazioni') return HttpResponseRedirect(reverse('comunicazione:welcome')) if 'parazienda' in request.POST: print('premuto tasto Par.Azienda') azid = request.POST.get('parazienda') print('azienda passata',request.POST.get('parazienda')) azienda = Azienda.objects.get(pk=azid) request.session['AziendaId'] = azienda.id return HttpResponseRedirect(reverse('azienda:edit')) tmplist = list() for tmp in assegnazione: tmplist.append(tmp.azienda) data['aziendaLista'] = tmplist print('data',data) print('numero aziende',len(data['aziendaLista'])) return render(request,'azienda.welcome.html',data) # creazione azienda def edit(request): AdminId = request.session['AdminId'] data={} data['HeaderTitle'] = getConfig('HeaderTitle') user = data['admin'] = User.objects.get(pk=AdminId) if 'AziendaId' in request.session: print('trovato riferimento AziendaId',request.session.get('AziendaId')) azid = request.session.get('AziendaId') try: azienda = Azienda.objects.get(pk=azid) print('azienda trovata',azienda.nome) except Azienda.DoesNotFound as dnf: print(dnf) if request.method == "POST": print("Richiesta creazione nuova azienda") nuovaazienda = formAzienda(request.POST) if nuovaazienda.is_valid(): print("il form e' valido",request.POST) if not azienda: azienda = Azienda() azienda.nome = nuovaazienda.cleaned_data.get('nome') azienda.mail = nuovaazienda.cleaned_data.get('mail') azienda.partitaiva = nuovaazienda.cleaned_data.get('partitaiva') azienda.save() request.session['AziendaId'] = azienda.id print('azienda:',azienda.id) assegnazione = Assegnazione() if azienda: assegnazione = Assegnazione.objects.get(azienda=azienda,user=user) assegnazione.azienda=azienda assegnazione.user=User.objects.get(pk=AdminId) assegnazione.save() return HttpResponseRedirect(reverse('azienda:welcome')) else: print("form non valido") data['azienda'] = formAzienda(request.POST) else: #non è un post print("Non è un post") formAziendaField = None if azienda: print('Abbiamo azienda',azienda.nome) tmp = dict() tmp['id'] = azienda.id tmp['nome'] = azienda.nome tmp['partitaiva'] = azienda.partitaiva tmp['mail'] = azienda.mail tmp['forzanuovapassword'] = True formAziendaField = formAzienda(tmp) else: tmp = dict() tmp['nome'] = '' tmp['partitaiva'] = '' tmp['mail'] = user.email tmp['forzanuovapassword'] = True formAziendaField = formAzienda(tmp) data['azienda'] = formAziendaField return render(request,'azienda.edit.html',data)