X-Git-Url: https://git.mdrn.pl/edumed.git/blobdiff_plain/836e87743276449d019848fb53b520b4c4851908..010b648653d39191fb25b93424d408a95289826e:/edumed/contact_forms.py diff --git a/edumed/contact_forms.py b/edumed/contact_forms.py index 7e7faca..196e5e4 100644 --- a/edumed/contact_forms.py +++ b/edumed/contact_forms.py @@ -10,7 +10,6 @@ from django.core.validators import validate_email from django.template.loader import render_to_string from django.utils.translation import ugettext_lazy as _ - WOJEWODZTWA = ( u'dolnośląskie', u'kujawsko-pomorskie', @@ -227,7 +226,7 @@ class WTEMForm(ContactForm): except ValidationError: pass else: - send_mail(mail_subject, mail_body, 'edukacjamedialna@nowoczesnapolska.org.pl', [email], + send_mail(mail_subject, mail_body, 'olimpiada@nowoczesnapolska.org.pl', [email], fail_silently=True) return contact @@ -239,7 +238,7 @@ class CommissionForm(forms.Form): class OlimpiadaForm(ContactForm): - disabled = True + disabled = False disabled_template = 'wtem/disabled_contact_form.html' form_tag = "olimpiada" form_title = u"Olimpiada Cyfrowa - Elektroniczny System Zgłoszeń" @@ -254,6 +253,7 @@ class OlimpiadaForm(ContactForm): przewodniczacy = forms.CharField(label=u'Imię i nazwisko Przewodniczącego/Przewodniczącej', max_length=128) school = forms.CharField(label=u'Nazwa szkoły', max_length=255) school_address = forms.CharField(label=u'Adres szkoły', widget=forms.Textarea, max_length=1000) + school_wojewodztwo = forms.ChoiceField(label=u'Województwo', choices=WOJEWODZTWO_CHOICES) school_email = forms.EmailField(label=u'Adres e-mail szkoły', max_length=128) school_phone = forms.CharField(label=u'Numer telefonu szkoły', max_length=32) school_www = forms.URLField(label=u'Strona WWW szkoły', max_length=255, required=False) @@ -270,6 +270,8 @@ class OlimpiadaForm(ContactForm): u'oświadczam, że zostałam/em poinformowana/y o tym, że mam prawo wglądu w treść swoich danych ' u'i możliwość ich poprawiania oraz że ich podanie jest dobrowolne, ale niezbędne do dokonania ' u'zgłoszenia.') + zgoda_newsletter = forms.BooleanField( + label=u'Chcę otrzymywać newsletter: Edukacja medialna', required=False) extract_types = (dict(slug='extended', label=_('extended')),) @@ -304,22 +306,23 @@ class OlimpiadaForm(ContactForm): return toret def save(self, request, formsets=None): + from wtem.models import Confirmation contact = super(OlimpiadaForm, self).save(request, formsets) - mail_subject = render_to_string('contact/olimpiada/student_mail_subject.html').strip() - mail_body = render_to_string('contact/olimpiada/student_mail_body.html') for formset in formsets or []: if formset.prefix == 'student': for f in formset.forms: email = f.cleaned_data.get('email', None) - try: - validate_email(email) - except ValidationError: - pass - else: - send_mail(mail_subject, mail_body, 'edukacjamedialna@nowoczesnapolska.org.pl', [email], - fail_silently=True) - + 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