Bläddra i källkod

aggiunti controlli su correttazza messaggi e errori su canale server di posta

Mauro 1 år sedan
förälder
incheckning
f2e05c1072
2 ändrade filer med 36 tillägg och 22 borttagningar
  1. 5 1
      comunicazione/views.py
  2. 31 21
      login/views.py

+ 5 - 1
comunicazione/views.py

@@ -156,7 +156,11 @@ class ServizioMail:
       if self.json:
         msg.attach_alternative(self.json,'text/json')
 
-      msg.send()
+      try:
+        msg.send()
+        print('messaggio inviato')
+      except ConnectionRefusedError as cre:
+        print('impossibile inviare mail',cre)
 
 def welcome(request):
   '''

+ 31 - 21
login/views.py

@@ -50,18 +50,23 @@ def start(request):
 
           ### comunicazioni ###
           if len(u.mail) > 0:
-            sm = ServizioMail(debug=True)
-            comunicazione = Comunicazione.objects.get(pk=2)
-            sm.set_mailfrom=comunicazione.mittente
-            sm.add_to(u.mail)
-
-            sm.set_soggetto(comunicazione.soggetto)
-            sm.set_corpo(comunicazione.corpo)
-
-            sm_data = dict()
-            sm_data['utente'] = u
-            sm.set_data(sm_data)
-            sm.send()
+            comunicazione = None
+            try: 
+              comunicazione = Comunicazione.objects.get(pk=2)
+            except Comunicazione.DoesNotExist as dne:
+              print('comunicazione non valida',dne)
+            if comunicazione:
+              sm = ServizioMail(debug=True)
+              sm.set_mailfrom=comunicazione.mittente
+              sm.add_to(u.mail)
+
+              sm.set_soggetto(comunicazione.soggetto)
+              sm.set_corpo(comunicazione.corpo)
+
+              sm_data = dict()
+              sm_data['utente'] = u
+              sm.set_data(sm_data)
+              sm.send()
           ### comunicazioni ###
 
           return HttpResponseRedirect(reverse("utente:download"))
@@ -78,17 +83,22 @@ def start(request):
 
           ### comunicazioni ###
           sm = ServizioMail(debug=True)
-          comunicazione = Comunicazione.objects.get(pk=1)
-          sm.set_mailfrom=comunicazione.mittente
-          sm.add_to(user.email)
+          comunicazione = None
+          try:
+            comunicazione = Comunicazione.objects.get(pk=1)
+          except Comunicazione.DoesNotExist as dne:
+            print("Record comunicazione inesistente",dne)
+          if comunicazione: 
+            sm.set_mailfrom=comunicazione.mittente
+            sm.add_to(user.email)
 
-          sm.set_soggetto(comunicazione.soggetto)
-          sm.set_corpo(comunicazione.corpo)
+            sm.set_soggetto(comunicazione.soggetto)
+            sm.set_corpo(comunicazione.corpo)
 
-          sm_data = dict()
-          sm_data['user'] = user
-          sm.set_data(sm_data)
-          sm.send()
+            sm_data = dict()
+            sm_data['user'] = user
+            sm.set_data(sm_data)
+            sm.send()
           ### comunicazioni ###
 
           return HttpResponseRedirect(reverse("azienda:welcome"))