Fixes #3934: Error on OAI-PMH list request.
[wolnelektury.git] / src / wolnelektury / contact_forms.py
1 # -*- coding: utf-8 -*-
2 # This file is part of Wolnelektury, licensed under GNU Affero GPLv3 or later.
3 # Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information.
4 #
5 from django.utils.functional import lazy
6 from django.utils.safestring import mark_safe
7
8 from contact.forms import ContactForm
9 from contact.fields import HeaderField
10 from django import forms
11
12 mark_safe_lazy = lazy(mark_safe, str)
13
14
15 class KonkursForm(ContactForm):
16     form_tag = 'konkurs'
17     form_title = u"Konkurs Trzy strony"
18     admin_list = ['podpis', 'contact', 'temat']
19     ends_on = (2017, 11, 8)
20     disabled_template = 'contact/disabled_contact_form.html'
21
22     opiekun_header = HeaderField(label=u'Dane\xa0Opiekuna/Opiekunki')
23     opiekun_nazwisko = forms.CharField(label=u'Imię i nazwisko', max_length=128)
24     contact = forms.EmailField(label=u'Adres e-mail', max_length=128)
25     opiekun_tel = forms.CharField(label=u'Numer telefonu', max_length=32)
26     nazwa_dkk = forms.CharField(label=u'Nazwa DKK', max_length=128)
27     adres_dkk = forms.CharField(label=u'Adres DKK', max_length=128)
28
29     uczestnik_header = HeaderField(label=u'Dane\xa0Uczestnika/Uczestniczki')
30     uczestnik_imie = forms.CharField(label=u'Imię', max_length=128)
31     uczestnik_nazwisko = forms.CharField(label=u'Nazwisko', max_length=128)
32     uczestnik_email = forms.EmailField(label=u'Adres e-mail', max_length=128)
33     wiek = forms.ChoiceField(label=u'Kategoria wiekowa', choices=(
34         ('0-11', 'do 11 lat'),
35         ('12-15', '12–15 lat'),
36         ('16-19', '16–19 lat'),
37     ))
38     tytul = forms.CharField(label=u'Tytuł opowiadania', max_length=255)
39     plik = forms.FileField(
40         label=u'Plik z opowiadaniem',
41         help_text=u'Prosimy o nazwanie pliku imieniem i nazwiskiem autora.')
42
43     agree_header = HeaderField(label=u'Oświadczenia')
44     agree_terms = forms.BooleanField(
45         label='Regulamin',
46         help_text=mark_safe_lazy(
47             u'Znam i akceptuję <a href="/media/chunks/attachment/Regulamin_konkursu_Trzy_strony.pdf">'
48             u'Regulamin Konkursu</a>.'),
49     )
50     agree_data = forms.BooleanField(
51         label='Przetwarzanie danych osobowych',
52         help_text=u'Oświadczam, że wyrażam zgodę na przetwarzanie danych osobowych zawartych w niniejszym formularzu '
53               u'zgłoszeniowym przez Fundację Nowoczesna Polska (administratora danych) z siedzibą w Warszawie (00-514) '
54               u'przy ul. Marszałkowskiej 84/92 lok. 125 na potrzeby organizacji Konkursu. Jednocześnie oświadczam, '
55               u'że zostałam/em poinformowana/y o tym, że mam prawo wglądu w treść swoich danych i możliwość ich '
56               u'poprawiania oraz że ich podanie jest dobrowolne, ale niezbędne do dokonania zgłoszenia.')
57     agree_license = forms.BooleanField(
58         label='Licencja',
59         help_text=mark_safe_lazy(
60             u'Wyrażam zgodę oraz potwierdzam, że autor/ka (lub ich przedstawiciele ustawowi – gdy dotyczy) '
61             u'wyrazili zgodę na korzystanie z opowiadania zgodnie z postanowieniami wolnej licencji '
62             u'<a href="https://creativecommons.org/licenses/by-sa/3.0/pl/">Creative Commons Uznanie autorstwa – '
63             u'Na tych samych warunkach 3.0</a>. Licencja pozwala każdemu na swobodne, nieodpłatne korzystanie z utworu '
64             u'w oryginale oraz w postaci opracowań do wszelkich celów wymagając poszanowania autorstwa i innych praw '
65             u'osobistych oraz tego, aby ewentualne opracowania utworu były także udostępniane na tej samej licencji.'))
66     agree_wizerunek = forms.BooleanField(
67         label='Rozpowszechnianie wizerunku',
68         help_text=u'Wyrażam zgodę oraz potwierdzam, że autor/ka opowiadania (lub ich przedstawiciele ustawowi – '
69               u'gdy dotyczy) wyrazili zgodę na fotografowanie i nagrywanie podczas gali wręczenia nagród i następnie '
70               u'rozpowszechnianie ich wizerunków.')
71
72
73 class CoJaCzytamForm(ContactForm):
74     form_tag = 'cojaczytam'
75     form_title = u"#cojaczytam?"
76     admin_list = ['opiekun_nazwisko', 'contact', 'nazwa_kampanii']
77     # ends_on = (2018, 11, 16)
78     disabled_template = 'contact/disabled_contact_form.html'
79     submit_label = u'Wyślij'
80
81     opiekun_nazwisko = forms.CharField(label=u'Imię i nazwisko Opiekuna/ki', max_length=128)
82     contact = forms.EmailField(label=u'Adres e-mail Opiekuna/ki', max_length=128)
83     opiekun_tel = forms.CharField(label=u'Numer telefonu Opiekuna/ki', max_length=32)
84     nazwa_dkk = forms.CharField(label=u'Nazwa szkoły/biblioteki publicznej', max_length=128)
85     adres_dkk = forms.CharField(label=u'Adres szkoły/biblioteki publicznej', max_length=128)
86
87     nazwa_kampanii = forms.CharField(label=u'Nazwa kampanii', max_length=255)
88
89     wiek = forms.ChoiceField(label=u'Grupa wiekowa', choices=(
90         ('9-14', u'uczniowie kl. IV-VIII szkół podstawowych w wieku 9-14 lat,'),
91         ('15-19', u'uczniowie gimnazjum oraz wszystkich typów szkół ponadpodstawowych w wieku 15-19.'),
92     ), widget=forms.RadioSelect)
93
94     uczestnik1_header = HeaderField(label=u'Dane\xa0Uczestników (3 do 5)')
95     uczestnik1_imie = forms.CharField(label=u'Imię', max_length=128)
96     uczestnik1_nazwisko = forms.CharField(label=u'Nazwisko', max_length=128)
97     uczestnik1_email = forms.EmailField(label=u'Adres e-mail', max_length=128)
98     uczestnik2_header = HeaderField(label=u'')
99     uczestnik2_imie = forms.CharField(label=u'Imię', max_length=128)
100     uczestnik2_nazwisko = forms.CharField(label=u'Nazwisko', max_length=128)
101     uczestnik2_email = forms.EmailField(label=u'Adres e-mail', max_length=128)
102     uczestnik3_header = HeaderField(label=u'')
103     uczestnik3_imie = forms.CharField(label=u'Imię', max_length=128)
104     uczestnik3_nazwisko = forms.CharField(label=u'Nazwisko', max_length=128)
105     uczestnik3_email = forms.EmailField(label=u'Adres e-mail', max_length=128)
106     uczestnik4_header = HeaderField(label=u'')
107     uczestnik4_imie = forms.CharField(label=u'Imię', max_length=128, required=False)
108     uczestnik4_nazwisko = forms.CharField(label=u'Nazwisko', max_length=128, required=False)
109     uczestnik4_email = forms.EmailField(label=u'Adres e-mail', max_length=128, required=False)
110     uczestnik5_header = HeaderField(label=u'')
111     uczestnik5_imie = forms.CharField(label=u'Imię', max_length=128, required=False)
112     uczestnik5_nazwisko = forms.CharField(label=u'Nazwisko', max_length=128, required=False)
113     uczestnik5_email = forms.EmailField(label=u'Adres e-mail', max_length=128, required=False)
114
115     ankieta_header = HeaderField(label=u'')
116     opis_kampanii = forms.CharField(
117         label=u'Krótki opis realizacji oraz przebiegu kampanii', max_length=255, widget=forms.Textarea)
118     co_sie_udalo = forms.CharField(label=u'Co udało Wam się zrealizować?', max_length=1024, widget=forms.Textarea)
119     co_sie_nie_udalo = forms.CharField(
120         label=u'Czy jest coś, co chcieliście zrealizować, a się nie udało? Jeśli tak, to dlaczego?', max_length=1024,
121         widget=forms.Textarea)
122     wnioski = forms.CharField(
123         label=u'Jakie wnioski na przyszłość wyciągnęliście z tego, czego się nie udało zrealizować?', max_length=1024,
124         widget=forms.Textarea)
125     zasieg = forms.CharField(
126         label=u'Do ilu odbiorców udało Wam się dotrzeć z Waszą kompanią? Podaj liczbę, może być szacunkowa.',
127         max_length=1024, widget=forms.Textarea)
128     grupy_odbiorcow = forms.CharField(
129         label=u'Do jakich grup odbiorców dotarliście (np. uczniowie, nauczyciele, rodzice, seniorzy, inni)?',
130         max_length=1024, widget=forms.Textarea)
131     plik = forms.FileField(
132         label=u'Plik .zip ze stworzonymi materiałami (np. zdjęcia, dokumenty tekstowe)')
133     materialy = forms.CharField(
134         label=u'Adresy stworzonych materiałów online (jeśli dotyczy)', max_length=1024, widget=forms.Textarea,
135         required=False)
136
137     agree_header = HeaderField(label=u'Oświadczenia')
138     agree_terms = forms.BooleanField(
139         label='Regulamin',
140         help_text=mark_safe_lazy(
141             u'Znam i akceptuję <a href="/media/chunks/attachment/Regulamin_konkursu_cojaczytam_edycja_2018.pdf">'
142             u'Regulamin Konkursu</a>.'),
143     )
144     agree_data = forms.BooleanField(
145         label='Przetwarzanie danych osobowych',
146         help_text=u'Oświadczam, że wyrażam zgodę na przetwarzanie danych osobowych zawartych w niniejszym formularzu '
147               u'zgłoszeniowym przez Fundację Nowoczesna Polska (administratora danych) z siedzibą w Warszawie (00-514) '
148               u'przy ul. Marszałkowskiej 84/92 lok. 125 na potrzeby organizacji Konkursu. Jednocześnie oświadczam, '
149               u'że zostałam/em poinformowana/y o tym, że mam prawo wglądu w treść swoich danych i możliwość ich '
150               u'poprawiania oraz że ich podanie jest dobrowolne, ale niezbędne do dokonania zgłoszenia.')
151     agree_license = forms.BooleanField(
152         label='Licencja',
153         help_text=mark_safe_lazy(
154             u'Wyrażam zgodę oraz potwierdzam, że uczestnicy (lub ich przedstawiciele ustawowi – gdy dotyczy) '
155             u'wyrazili zgodę na korzystanie ze stworzonych materiałów zgodnie z postanowieniami '
156             u'<a href="http://freedomdefined.org/Definition/Pl">wolnej licencji</a>, takiej jak '
157             u'<a href="https://creativecommons.org/licenses/by-sa/3.0/pl/">Creative Commons Uznanie autorstwa – '
158             u'Na tych samych warunkach 3.0 PL</a>. Licencja pozwala każdemu na swobodne, nieodpłatne korzystanie '
159             u'z utworu '
160             u'w oryginale oraz w postaci opracowań do wszelkich celów wymagając poszanowania autorstwa i innych praw '
161             u'osobistych oraz tego, aby ewentualne opracowania utworu były także udostępniane na tej samej licencji.'))
162     agree_wizerunek = forms.BooleanField(
163         label='Rozpowszechnianie wizerunku',
164         help_text=u'Wyrażam zgodę oraz potwierdzam, że uczestnicy (lub ich przedstawiciele ustawowi – gdy dotyczy) '
165                   u'wyrazili zgodę na fotografowanie oraz nagrywanie, a następnie rozpowszechnianie ich '
166                   u'wizerunków w celach promocyjnych.')
167
168
169 class WorkshopsForm(ContactForm):
170     form_tag = 'warsztaty'
171     form_title = u"Wolne Lektury Fest"
172     nazwisko = forms.CharField(label=u'Imię i nazwisko uczestnika', max_length=128)
173     instytucja = forms.CharField(label=u'Instytucja/organizacja', max_length=128, required=False)
174     contact = forms.EmailField(label=u'Adres e-mail', max_length=128)
175     tel = forms.CharField(label=u'Numer telefonu', max_length=32)
176     warsztat = forms.ChoiceField(choices=(
177         ('skad-i-jak', u'Skąd i jak bezpiecznie korzystać z darmowych i wolnych wideo i zdjęć w sieci? '
178                        u'Jak wykorzystać wolne licencje by zwiększyć zasięg Twoich publikacji?'),
179         ('jak-badac', u'Jak badać wykorzystanie zbiorów domeny publicznej?'),
180         ('kultura', u'Kultura dostępna dla wszystkich')),
181         widget=forms.RadioSelect,
182     )
183     agree_header = HeaderField(label=mark_safe_lazy(u'<strong>Oświadczenia</strong>'))
184     agree_data = forms.BooleanField(
185         label='Przetwarzanie danych osobowych',
186         help_text=u'Oświadczam, że wyrażam zgodę na przetwarzanie danych osobowych zawartych w niniejszym formularzu '
187               u'zgłoszeniowym przez Fundację Nowoczesna Polska (administratora danych) z siedzibą w Warszawie (00-514) '
188               u'przy ul. Marszałkowskiej 84/92 lok. 125 na potrzeby organizacji warsztatów w ramach wydarzenia '
189               u'„WOLNE LEKTURY FEST”. Jednocześnie oświadczam, że zostałam/em poinformowana/y o tym, że mam prawo '
190               u'wglądu w treść swoich danych i możliwość ich poprawiania oraz że ich podanie jest dobrowolne, '
191               u'ale niezbędne do dokonania zgłoszenia.')
192     agree_wizerunek = forms.BooleanField(
193         label='Rozpowszechnianie wizerunku',
194         help_text=u'Wyrażam zgodę na fotografowanie i nagrywanie podczas warsztatów „WOLNE LEKTURY FEST” '
195                   u'24.11.2017 roku i następnie rozpowszechnianie mojego wizerunku w celach promocyjnych.')
196     agree_gala = forms.BooleanField(
197         label=u'Wezmę udział w uroczystej gali o godz. 19.00.', required=False)
198
199
200 class WLFest2018Form(ContactForm):
201     form_tag = 'wlfest2018'
202     form_title = u"Wolne Lektury Fest"
203     nazwisko = forms.CharField(label=u'Imię i nazwisko uczestnika', max_length=128)
204     instytucja = forms.CharField(label=u'Instytucja/organizacja', max_length=128, required=False)
205     contact = forms.EmailField(label=u'Adres e-mail', max_length=128)
206     tel = forms.CharField(label=u'Numer telefonu', max_length=32)
207     warsztaty = forms.MultipleChoiceField(choices=(
208         ('kim-sa-odbiorcy', u'Kim są odbiorcy zdigitalizowanych zasobów kultury w Polsce? (9:30-11:30)'),
209         ('business-model-canvas', u'Business Model Canvas dla kultury (9:30-11:30)'),
210         ('jak-byc-glam', u'Jak być GLAM? Współpraca pomiędzy instytucjami kultury a Wikipedią (12:00-14:00)'),
211         ('wirtualne-muzea', u'Jak twórczo i zgodnie z prawem wykorzystywać zasoby dziedzictwa kulturowego '
212                             u'na przykładzie portalu „Wirtualne Muzea Małopolski” (12:00-14:00)'),
213         ('jak-legalnie-tworzyc', u'Jak legalnie tworzyć i korzystać z cudzej twórczości (15:00-17:00)'),
214         ('aplikacje-w-dzialaniach', u'Aplikacje w działaniach kulturalnych (15:00-17:00)')),
215         widget=forms.CheckboxSelectMultiple,
216     )
217     agree_header = HeaderField(label=mark_safe_lazy(u'<strong>Oświadczenia</strong>'))
218     agree_data = forms.BooleanField(
219         label='Przetwarzanie danych osobowych',
220         help_text=u'Administratorem danych osobowych przetwarzanych w związku z organizacją wydarzenia '
221                   u'„WOLNE LEKTURY FEST” jest Fundacja Nowoczesna Polska '
222                   u'(ul. Marszałkowska 84/92 lok. 125, 00-514 Warszawa). Podanie danych osobowych jest konieczne '
223                   u'do dokonania rejestracji na wydarzenie. Dane są przetwarzane w zakresie niezbędnym '
224                   u'do przeprowadzenia wydarzenia, a także w celach prowadzenia statystyk, '
225                   u'ewaluacji i sprawozdawczości. Osobom, których dane są zbierane, przysługuje prawo dostępu '
226                   u'do treści swoich danych oraz ich poprawiania. Więcej informacji w polityce prywatności '
227                   u'(https://nowoczesnapolska.org.pl/prywatnosc/).')
228     agree_wizerunek = forms.BooleanField(
229         label='Rozpowszechnianie wizerunku',
230         help_text=u'Wyrażam zgodę na fotografowanie i nagrywanie podczas warsztatów „WOLNE LEKTURY FEST” '
231                   u'28.11.2018 roku i następnie rozpowszechnianie mojego wizerunku w celach promocyjnych.')
232     agree_gala = forms.BooleanField(
233         label=u'Wezmę udział w spotkaniu z Julią Fiedorczuk o godz. 17:30.', required=False)