update notify teachers (notify after deadline)
authorJan Szejko <janek37@gmail.com>
Wed, 14 Nov 2018 15:47:48 +0000 (16:47 +0100)
committerJan Szejko <janek37@gmail.com>
Wed, 14 Nov 2018 15:47:48 +0000 (16:47 +0100)
wtem/management/commands/notify_teachers.py
wtem/templates/wtem/notify_unconfirmed_after.txt [new file with mode: 0644]

index 6e1e994..e7d3db0 100644 (file)
@@ -9,7 +9,9 @@ from wtem.management.commands import send_mail
 from wtem.models import Confirmation
 
 
-THRESHOLD = 3
+THRESHOLD = 0
+
+AFTER_DEADLINE = True
 
 
 class Command(BaseCommand):
@@ -19,7 +21,7 @@ class Command(BaseCommand):
 
         query = Contact.objects.filter(form_tag='olimpiada').order_by('contact').distinct('contact')
         template_name = 'notify_unconfirmed'
-        message_template = 'wtem/' + template_name + '.txt'
+        message_template = 'wtem/' + template_name + ('_after' if AFTER_DEADLINE else '') + '.txt'
         subject = render_to_string('wtem/' + template_name + '_subject.txt')
 
         threshold = timezone.now() - timedelta(THRESHOLD)
@@ -28,8 +30,10 @@ class Command(BaseCommand):
             unconfirmed = []
             contacts = []
             for similar_contact in Contact.objects.filter(contact=contact.contact, form_tag=contact.form_tag):
+                contact_emails = [s['email'] for s in similar_contact.body.get('student', [])]
                 new_unconfirmed = list(Confirmation.objects.filter(
-                    contact=similar_contact, confirmed=False, contact__created_at__lt=threshold))
+                    contact=similar_contact, confirmed=False, contact__created_at__lt=threshold,
+                    email__in=contact_emails))
                 unconfirmed += new_unconfirmed
                 if new_unconfirmed:
                     contacts.append(similar_contact)
diff --git a/wtem/templates/wtem/notify_unconfirmed_after.txt b/wtem/templates/wtem/notify_unconfirmed_after.txt
new file mode 100644 (file)
index 0000000..8bb9b57
--- /dev/null
@@ -0,0 +1,13 @@
+Dzień dobry,
+Dziękujemy za zarejestrowanie uczniów do udziału w Olimpiadzie Cyfrowej.
+
+Sprawdziliśmy, że nie mamy potwierdzenia rejestracji od kilku Pani/Pana uczniów (tzn. nie kliknęli w link, który otrzymali na maila):
+{% for confirmation in unconfirmed %}
+{{ confirmation.first_name }} {{ confirmation.last_name}} – {{ confirmation.email }}{% endfor %}
+
+Może to oznaczać, że podczas rejestracji zostały podane nieprawidłowe adresy, albo że mail od nas wpadł uczniom do spamu. Prosimy o sprawdzenie tego i przypomnienie uczniom o konieczności kliknięcia w link z maila. W przypadku podania nieprawidłowego adresu prosimy o przysłanie nam poprawnego na adres olimpiada@nowoczesnapolska.org.pl.
+
+Pozdrawiamy,
+
+zespół Olimpiady Cyfrowej
+fundacja Nowoczesna Polska
\ No newline at end of file