don't try to confirm empty students
authorJan Szejko <janek37@gmail.com>
Wed, 27 Sep 2017 09:31:59 +0000 (11:31 +0200)
committerJan Szejko <janek37@gmail.com>
Wed, 27 Sep 2017 09:31:59 +0000 (11:31 +0200)
edumed/contact_forms.py

index 8629dce..8358907 100644 (file)
@@ -312,14 +312,16 @@ class OlimpiadaForm(ContactForm):
             if formset.prefix == 'student':
                 for f in formset.forms:
                     email = f.cleaned_data.get('email', None)
-                    try:
-                        Confirmation.objects.get(email=email)
-                    except Confirmation.DoesNotExist:
-                        first_name = f.cleaned_data.get('first_name', None)
-                        last_name = f.cleaned_data.get('last_name', None)
-                        confirmation = Confirmation.create(
-                            first_name=first_name, last_name=last_name, email=email, contact=contact)
-                        confirmation.send_mail()
+                    if email:
+                        try:
+                            Confirmation.objects.get(email=email)
+                        except Confirmation.DoesNotExist:
+                            first_name = f.cleaned_data.get('first_name', None)
+                            last_name = f.cleaned_data.get('last_name', None)
+                            if first_name and last_name:
+                                confirmation = Confirmation.create(
+                                    first_name=first_name, last_name=last_name, email=email, contact=contact)
+                                confirmation.send_mail()
         return contact