-class RegistrationForm(ContactForm):
-    form_tag = 'sugestie'
-    form_title = u"Zgłoś sugestię"
-    admin_list = ['podpis', 'contact', 'temat']
-
-    contact = forms.EmailField(label=u'E-mail', max_length=128, required=False)
-    podpis = forms.CharField(label=u'Podpis', max_length=128, required=False)
-    temat = forms.CharField(label=u'Temat zgłoszenia', max_length=255)
-    tresc = forms.CharField(label=u'Treść', widget=forms.Textarea, max_length=1800)
-
-
-class CooperateForm(ContactForm):
-    form_tag = 'wspolpraca'
-    form_title = u"Bądź z nami w kontakcie"
-    admin_list = ['podpis', 'contact']
-
-    contact = forms.EmailField(label=u'E-mail', max_length=128)
-    podpis = forms.CharField(label=u'Podpis', max_length=128)
-    uwagi = forms.CharField(label=u'Uwagi', widget=forms.Textarea, max_length=1800, required=False)
-
-
-class ContestForm(ContactForm):
-    form_tag = 'konkurs'
-    form_title = u"Zgłoś się do konkursu"
-    admin_list = ['name', 'organization', 'title']
-
-    nazwisko = forms.CharField(label=u'Imię i nazwisko', max_length=128)
-    contact = forms.EmailField(label=u'Adres e-mail', max_length=128)
-    instytucja = forms.CharField(label=u'Instytucja (nazwa, adres)', 
-            widget=forms.Textarea, max_length=1000)
-    tytul = forms.CharField(label=u'Tytuł przeprowadzonej lekcji',
-            help_text=u'proszę wymienić wszystkie, jeśli zostały przeprowadzone więcej niż jedne zajęcia', 
-            widget=forms.Textarea, max_length=1000)
-    uczestnicy = forms.CharField(label=u'Liczba uczestników', max_length=64)
-    trudnosci = forms.CharField(label=u'Czy w trakcie zajęć pojawiły się jakieś trudności? Jeśli tak, to jakie?', 
-            widget=forms.Textarea, max_length=2000)
-    pomocne = forms.CharField(label=u'Co w materiałach okazało się najbardziej pomocne w przygotowaniu i prowadzeniu lekcji?', 
-            widget=forms.Textarea, max_length=2000)
-    nieprzydatne = forms.CharField(label=u'Co w materiałach okazało się nieprzydatne w przygotowaniu i prowadzeniu lekcji?', 
-            widget=forms.Textarea, max_length=2000)
-    poprawic = forms.CharField(label=u'Jak możemy poprawić serwis edukacjamedialna.edu.pl?', 
-            widget=forms.Textarea, max_length=2000,
-            required=False)
-    inne = forms.CharField(label=u'Inne uwagi i komentarze', 
-            widget=forms.Textarea, max_length=2000,
-            required=False)
+class OlimpiadaForm(ContactForm):
+    ends_on = (2017, 11, 17, 0, 5)
+    disabled_template = 'wtem/disabled_contact_form.html'
+    form_tag = "olimpiada"
+    form_title = u"Olimpiada Cyfrowa - Elektroniczny System Zgłoszeń"
+    submit_label = u"Wyślij zgłoszenie"
+    admin_list = ['nazwisko', 'school']
+    form_formsets = {
+        'student': forms.formsets.formset_factory(WTEMStudentForm, formset=NonEmptyBaseFormSet),
+        'commission': forms.formsets.formset_factory(CommissionForm),
+    }
+
+    contact = forms.EmailField(label=u'Adres e-mail Przewodniczącego/Przewodniczącej', max_length=128)
+    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)
+