registration for workshops
authorJan Szejko <janek37@gmail.com>
Tue, 4 Oct 2016 14:56:47 +0000 (16:56 +0200)
committerJan Szejko <janek37@gmail.com>
Tue, 4 Oct 2016 14:56:47 +0000 (16:56 +0200)
contact/templates/contact/form.html
contact/widgets.py
prawokultury/contact_forms.py
prawokultury/locale/pl/LC_MESSAGES/django.mo
prawokultury/locale/pl/LC_MESSAGES/django.po
prawokultury/settings.d/50-static.py
prawokultury/static/js/workshop_form.js [new file with mode: 0644]
prawokultury/templates/base.html
prawokultury/templatetags/__init__.py [new file with mode: 0644]
prawokultury/templatetags/entry_url.py [new file with mode: 0644]

index 29fdfa8..22ca246 100644 (file)
     <form method="POST" action="." enctype="multipart/form-data" class="submit-form">
     {% csrf_token %}
     <table>
     <form method="POST" action="." enctype="multipart/form-data" class="submit-form">
     {% csrf_token %}
     <table>
+        <colgroup>
+            <col span="1" style="width: 45%;">
+            <col span="1" style="width: 55%;">
+        </colgroup>
         {{ form.as_table }}
         <tr><td></td><td><button>{% block contact_form_submit %}{{ form.submit_label }}{% endblock %}</button></td></tr>
     </table>
         {{ form.as_table }}
         <tr><td></td><td><button>{% block contact_form_submit %}{{ form.submit_label }}{% endblock %}</button></td></tr>
     </table>
index a08e351..738ae04 100644 (file)
@@ -4,7 +4,6 @@ from django.utils.html import format_html
 
 class HeaderWidget(forms.widgets.Widget):
     def render(self, name, value, attrs=None):
 
 class HeaderWidget(forms.widgets.Widget):
     def render(self, name, value, attrs=None):
-        return ''
         attrs.update(self.attrs)
         attrs.update(self.attrs)
-        return format_html('<div{0}>{1}</div>', flatatt(attrs), unicode(value))
-
+        return format_html('<a{0}></a>', flatatt(attrs))
+        # return format_html('<div{0}>{1}</div>', flatatt(attrs), unicode(value))
index 5a48c7e..f9ce14e 100644 (file)
@@ -272,8 +272,8 @@ class NextForm(ContactForm):
 
 
 class WorkshopForm(ContactForm):
 
 
 class WorkshopForm(ContactForm):
-    form_tag = 'workshop'
-    save_as_tag = 'workshop-2016'
+    form_tag = 'workshops'
+    save_as_tag = 'workshops-2016'
     conference_name = u'CopyCamp 2016'
     form_title = _('Workshop')
 
     conference_name = u'CopyCamp 2016'
     form_title = _('Workshop')
 
@@ -281,65 +281,99 @@ class WorkshopForm(ContactForm):
     contact = forms.EmailField(label=_('E-mail'), max_length=128)
     organization = forms.CharField(label=_('Organization'),
                                    max_length=256, required=False)
     contact = forms.EmailField(label=_('E-mail'), max_length=128)
     organization = forms.CharField(label=_('Organization'),
                                    max_length=256, required=False)
+    country = forms.CharField(label=_('Country'), max_length=128)
+
+    _header = HeaderField(
+        label=mark_safe_lazy(_("<h3>I'll take a part in workshops</h3>")),
+        help_text=_('Only workshops with any spots left are visible here.'))
+
+    _h1 = HeaderField(label=mark_safe_lazy(_("<strong>Thursday, October 27th, 10 a.m.–12 noon</strong>")))
 
 
-    _#header = HeaderField(label=mark_safe_lazy(_("<h3>I'll take a part in workshops</h3>")), help_text=_('Only workshops with any spots left are visible here.'))
+    w_dimitrov = forms.BooleanField(label=_(u'Dimitar Dimitrov: Hacking Brussels'), required=False)
+    w_vangompel = forms.BooleanField(label=_(
+        u'Stef van Gompel: Methods and constraints for including evidence in IP lawmaking'), required=False)
 
 
-    #_h1 = HeaderField(label=mark_safe_lazy(_("<strong>Thursday, November 6th, 10 a.m.–12 noon</strong>")))
+    _h2 = HeaderField(label=mark_safe_lazy(_("<strong>Friday, October 28th, 10 a.m.–12 noon</strong>")))
 
 
-    #w_rysiek = forms.BooleanField(label=_(u'Michał „rysiek” Woźniak, Koalicja Otwartej Edukacji KOED: Wprowadzenie do prawa autorskiego i wolnych licencji'), required=False)
-    #w_bartsch = forms.BooleanField(label=_(u'Natalia Bartsch: Wykorzystywanie istniejących utworów w tworzeniu przedstawienia teatralnego'), required=False)
-    #w_samsung = forms.BooleanField(label=_(u'Rafał Sikorski: Prywatny użytek w prawie autorskim w XXI wieku. Jak powinien wyglądać w\u00a0Unii Europejskiej?'), required=False)
+    w_siewicz = forms.BooleanField(label=_(
+        u'dr Krzysztof Siewicz, dr Marta Hoffman-Sommer: '
+        u'Legal aspects of using research data in the age of Open Data'), required=False)
+    w_siewicz_project = forms.CharField(
+        label=mark_safe(
+            u'<p style="margin-top: 0"><strong>Qualification for this workshop will be based on the answers '
+            u'for the following problem:</strong></p>'
+            u'Please choose a particular dataset from any research project you are involved in and provide '
+            u'a description (no more than 1800 characters). Selected datasets will be discussed during '
+            u'the workshop as case studies. In your description, please include the following information: '
+            u'What is the research goal of the project (in the context of the chosen dataset)? '
+            u'What data is being collected and how is it stored? What is the process of data collection '
+            u'or generation? Who is involved in collecting or producing the data and in what manner?'),
+        max_length=1800, widget=forms.Textarea, required=False)
+    w_google = forms.BooleanField(label=_(
+        u'Marcin Olender, Google: Prawo autorskie na YouTube (workshop in Polish)'), required=False)
 
 
-    #_h2 = HeaderField(label=mark_safe_lazy(_("<strong>Friday, November 7th, 10 a.m.–12 noon</strong>")))
+    _h3 = HeaderField(label=mark_safe_lazy(_("<strong>Friday, October 28th, 12 noon–2 p.m.</strong>")))
 
 
-    #w_mezei = forms.BooleanField(label=_(u'Péter Mezei: European copyright alternatives – 2014 (Workshop will be held in English)'), required=False)
-    #w_sliwowski = forms.BooleanField(label=_(u'Kamil Śliwowski, Koalicja Otwartej Edukacji KOED: Prawo autorskie w Sieci - ćwiczenia praktyczne'), required=False)
+    w_patronite = forms.BooleanField(label=_(
+        u'Mateusz Górski, Michał Leksiński, Patronite: Praktyczne aspekty dozwolonego użytku '
+        u'(workshop in Polish)'),
+        required=False)
 
 
-    #_h3 = HeaderField(label=mark_safe_lazy(_("<strong>Friday, November 7th, 12 noon–2 p.m.</strong>")))
+    _header_1 = HeaderField(label='')
 
 
-    #w_zaiks = forms.BooleanField(label=_(u'Łukasz Łyczkowski, Adam Pacuski, Stowarzyszenie Autorów ZAiKS: Praktyczne aspekty dozwolonego użytku'), required=False)
-    #w_creativepoland = forms.BooleanField(label=_(u'Paweł Kaźmierczyk i Dagmara Białek, Creative Poland: Sektor kreatywny – pomysły są w cenie'), required=False)
+    start_workshops = ('dimitrov', 'vangompel', 'siewicz', 'google', 'patronite')
 
 
-    #_header_1 = HeaderField(label='')
+    slots = (('_h1', 'dimitrov', 'vangompel'), ('_h2', 'siewicz', 'google'), ('_h3', 'patronite'))
 
 
-    # agree_mailing = forms.BooleanField(
-    #    label=_('I am interested in receiving information about the Modern Poland Foundation\'s activities by e-mail'),
-    #    required=False
-    # )
+    agree_mailing = forms.BooleanField(
+        label=_('I am interested in receiving information about the Modern Poland Foundation\'s activities by e-mail'),
+        required=False)
     agree_data = forms.BooleanField(
         label=_('Permission for data processing'),
     agree_data = forms.BooleanField(
         label=_('Permission for data processing'),
-        help_text=_(u'I hereby grant Modern Poland Foundation (Fundacja Nowoczesna Polska, ul. Marszałkowska 84/92, 00-514 Warszawa) permission to process my personal data (name, e-mail address) for purposes of registration for CopyCamp conference.')
-    )
+        help_text=_(
+            u'I hereby grant Modern Poland Foundation (Fundacja Nowoczesna Polska, ul. Marszałkowska 84/92, '
+            u'00-514 Warszawa) permission to process my personal data (name, e-mail address) for purposes of '
+            u'registration for CopyCamp conference.'))
     agree_license = forms.BooleanField(
         label=_('Permission for publication'),
     agree_license = forms.BooleanField(
         label=_('Permission for publication'),
-        help_text=mark_safe_lazy(_(u'I agree to having materials, recorded during the conference, released under the terms of <a href="http://creativecommons.org/licenses/by-sa/3.0/deed">CC\u00a0BY-SA</a> license and to publishing my image.')),
-        required=False
-    )
+        help_text=mark_safe_lazy(_(
+            u'I agree to having materials, recorded during the conference, released under the terms of '
+            u'<a href="http://creativecommons.org/licenses/by-sa/3.0/deed">CC\u00a0BY-SA</a> '
+            u'license and to publishing my image.')),
+        required=False)
 
     def __init__(self, *args, **kwargs):
         super(WorkshopForm, self).__init__(*args, **kwargs)
 
     def __init__(self, *args, **kwargs):
         super(WorkshopForm, self).__init__(*args, **kwargs)
-        self.limit_reached = Contact.objects.filter(form_tag=self.save_as_tag).count() >= 60
-
-        # counts = {k: 0 for k in self.start_workshops}
-        # for contact in Contact.objects.filter(form_tag=self.save_as_tag):
-        #     for workshop in self.start_workshops:
-    #            if contact.body.get('w_%s' % workshop, False): counts[workshop] += 1
-        # some_full = False
-        # for k, v in counts.items():
-        #     if v >= 60:
-        #         some_full = True
-        #         if 'w_%s' % k in self.fields:
-        #             del self.fields['w_%s' % k]
-        #         if k in self.workshops:
-        #             self.workshops.remove(k)
-        # if not some_full:
-        #     self.fields['_header'].help_text = None
-
-    # def clean(self):
-    #     any_workshop = False
-    #     for w in self.start_workshops:
-    #         if self.cleaned_data.get('w_%s' % w):
-    #             any_workshop = True
-    #     if not any_workshop:
-    #         self._errors['_header'] = [_("Please choose at least one workshop.")]
-    #     return self.cleaned_data
+        # self.limit_reached = Contact.objects.filter(form_tag=self.save_as_tag).count() >= 60
+        try:
+            url = Entry.objects.get(slug_pl='regulamin').get_absolute_url()
+            self.fields['agree_toc'] = forms.BooleanField(
+                required=True,
+                label=mark_safe(_('I accept <a href="%s">Terms and Conditions of CopyCamp</a>') % url)
+            )
+        except Entry.DoesNotExist:
+            pass
+        counts = {k: 0 for k in self.start_workshops}
+        for contact in Contact.objects.filter(form_tag=self.save_as_tag):
+            for workshop in self.start_workshops:
+                if contact.body.get('w_%s' % workshop, False): counts[workshop] += 1
+        some_full = False
+        for k, v in counts.items():
+            if v >= 30:
+                some_full = True
+                if 'w_%s' % k in self.fields:
+                    del self.fields['w_%s' % k]
+                if k in self.workshops:
+                    self.workshops.remove(k)
+        if not some_full:
+            self.fields['_header'].help_text = None
+
+    def clean(self):
+        if self.cleaned_data.get('w_siewicz') and not self.cleaned_data.get('w_siewicz_project'):
+            self._errors['w_siewicz_project'] = [_("Please submit your answer to qualify for this workshop")]
+        for slot in self.slots:
+            if sum(1 for w in slot if self.cleaned_data.get('w_%s' % w)) > 1:
+                self._errors[slot[0]] = [_("You can't choose more than one workshop during the same period")]
+        if not any(self.cleaned_data.get('w_%s' % w) for w in self.start_workshops):
+            self._errors['_header'] = [_("Please choose at least one workshop.")]
+        return self.cleaned_data
index d5f11cc..9f01a63 100644 (file)
Binary files a/prawokultury/locale/pl/LC_MESSAGES/django.mo and b/prawokultury/locale/pl/LC_MESSAGES/django.mo differ
index 2b19477..eb9a3e1 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: prawokultury\n"
 "Report-Msgid-Bugs-To: \n"
 msgstr ""
 "Project-Id-Version: prawokultury\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2016-09-22 13:21+0200\n"
+"POT-Creation-Date: 2016-10-04 16:05+0200\n"
 "PO-Revision-Date: 2014-09-30 16:25+0100\n"
 "Last-Translator: Radek Czajka <radoslaw.czajka@nowoczesnapolska.org.pl>\n"
 "Language-Team: FNP <fundacja@nowoczesnapolska.org.pl>\n"
 "PO-Revision-Date: 2014-09-30 16:25+0100\n"
 "Last-Translator: Radek Czajka <radoslaw.czajka@nowoczesnapolska.org.pl>\n"
 "Language-Team: FNP <fundacja@nowoczesnapolska.org.pl>\n"
@@ -19,7 +19,7 @@ msgstr ""
 "|| n%100>=20) ? 1 : 2);\n"
 "X-Generator: Poedit 1.5.4\n"
 
 "|| n%100>=20) ? 1 : 2);\n"
 "X-Generator: Poedit 1.5.4\n"
 
-#: contact_forms.py:23 templates/base.html:60
+#: contact_forms.py:23 templates/base.html:61
 msgid "Registration"
 msgstr "Rejestracja"
 
 msgid "Registration"
 msgstr "Rejestracja"
 
@@ -39,7 +39,7 @@ msgstr "E-mail"
 msgid "Organization"
 msgstr "Organizacja"
 
 msgid "Organization"
 msgstr "Organizacja"
 
-#: contact_forms.py:31
+#: contact_forms.py:31 contact_forms.py:284
 msgid "Country"
 msgstr "Kraj"
 
 msgid "Country"
 msgstr "Kraj"
 
@@ -261,7 +261,7 @@ msgstr "konkretna(y) prelegentka(ent)"
 msgid "good networking occasion"
 msgstr "możliwość networkingu"
 
 msgid "good networking occasion"
 msgstr "możliwość networkingu"
 
-#: contact_forms.py:120
+#: contact_forms.py:120 contact_forms.py:329
 msgid ""
 "I am interested in receiving information about the Modern Poland "
 "Foundation's activities by e-mail"
 msgid ""
 "I am interested in receiving information about the Modern Poland "
 "Foundation's activities by e-mail"
@@ -269,11 +269,11 @@ msgstr ""
 "Jestem zainteresowana/y otrzymywaniem drogą mailową informacji dotyczących "
 "działalności Fundacji Nowoczesna Polska"
 
 "Jestem zainteresowana/y otrzymywaniem drogą mailową informacji dotyczących "
 "działalności Fundacji Nowoczesna Polska"
 
-#: contact_forms.py:124 contact_forms.py:310
+#: contact_forms.py:124 contact_forms.py:332
 msgid "Permission for data processing"
 msgstr "Zgoda na przetwarzanie danych"
 
 msgid "Permission for data processing"
 msgstr "Zgoda na przetwarzanie danych"
 
-#: contact_forms.py:125 contact_forms.py:311
+#: contact_forms.py:125 contact_forms.py:334
 msgid ""
 "I hereby grant Modern Poland Foundation (Fundacja Nowoczesna Polska, ul. "
 "Marszałkowska 84/92, 00-514 Warszawa) permission to process my personal data "
 msgid ""
 "I hereby grant Modern Poland Foundation (Fundacja Nowoczesna Polska, ul. "
 "Marszałkowska 84/92, 00-514 Warszawa) permission to process my personal data "
@@ -283,11 +283,11 @@ msgstr ""
 "poczty elektronicznej) przez Fundację Nowoczesna Polska (ul. Marszałkowska "
 "84/92, 00-514 Warszawa) w związku z rejestracją na konferencję CopyCamp."
 
 "poczty elektronicznej) przez Fundację Nowoczesna Polska (ul. Marszałkowska "
 "84/92, 00-514 Warszawa) w związku z rejestracją na konferencję CopyCamp."
 
-#: contact_forms.py:128 contact_forms.py:314
+#: contact_forms.py:128 contact_forms.py:338
 msgid "Permission for publication"
 msgstr "Zgoda na publikację"
 
 msgid "Permission for publication"
 msgstr "Zgoda na publikację"
 
-#: contact_forms.py:129 contact_forms.py:315
+#: contact_forms.py:129 contact_forms.py:340
 msgid ""
 "I agree to having materials, recorded during the conference, released under "
 "the terms of <a href=\"http://creativecommons.org/licenses/by-sa/3.0/deed"
 msgid ""
 "I agree to having materials, recorded during the conference, released under "
 "the terms of <a href=\"http://creativecommons.org/licenses/by-sa/3.0/deed"
@@ -297,7 +297,7 @@ msgstr ""
 "licencji <a href=\"http://creativecommons.org/licenses/by-sa/3.0/deed.pl"
 "\">CC BY-SA</a> oraz rozpowszechnianie wizerunku."
 
 "licencji <a href=\"http://creativecommons.org/licenses/by-sa/3.0/deed.pl"
 "\">CC BY-SA</a> oraz rozpowszechnianie wizerunku."
 
-#: contact_forms.py:141
+#: contact_forms.py:141 contact_forms.py:352
 #, python-format
 msgid "I accept <a href=\"%s\">Terms and Conditions of CopyCamp</a>"
 msgstr "Akceptuję <a href=\"%s\">Regulamin CopyCampu</a>"
 #, python-format
 msgid "I accept <a href=\"%s\">Terms and Conditions of CopyCamp</a>"
 msgstr "Akceptuję <a href=\"%s\">Regulamin CopyCampu</a>"
@@ -419,6 +419,71 @@ msgstr "Imię i nazwisko"
 msgid "Workshop"
 msgstr "Warsztat"
 
 msgid "Workshop"
 msgstr "Warsztat"
 
+#: contact_forms.py:287
+msgid "<h3>I'll take a part in workshops</h3>"
+msgstr "<h3>Wezmę udział w warsztatach</h3>"
+
+#: contact_forms.py:288
+msgid "Only workshops with any spots left are visible here."
+msgstr "Widoczne są tylko warsztaty, w których są jeszcze miejsca."
+
+#: contact_forms.py:290
+msgid "<strong>Thursday, October 27th, 10 a.m.–12 noon</strong>"
+msgstr "<strong>Czwartek, 27 października, 10:00–12:00</strong>"
+
+#: contact_forms.py:292
+msgid "Dimitar Dimitrov: Hacking Brussels"
+msgstr "Dimitar Dimitrov: Hacking Brussels (warsztat w języku angielskim)"
+
+#: contact_forms.py:294
+msgid ""
+"Stef van Gompel: Methods and constraints for including evidence in IP "
+"lawmaking"
+msgstr ""
+"Stef van Gompel: Methods and constraints for including evidence in IP "
+"lawmaking (warsztat w języku angielskim)"
+
+#: contact_forms.py:296
+msgid "<strong>Friday, October 28th, 10 a.m.–12 noon</strong>"
+msgstr "<strong>Piątek, 28 października, 10:00–12:00</strong>"
+
+#: contact_forms.py:299
+msgid ""
+"dr Krzysztof Siewicz, dr Marta Hoffman-Sommer: Legal aspects of using "
+"research data in the age of Open Data"
+msgstr ""
+"dr Krzysztof Siewicz, dr Marta Hoffman-Sommer: Legal aspects of using "
+"research data in the age of Open Data (warsztat w języku angielskim)"
+
+#: contact_forms.py:313
+msgid "Marcin Olender, Google: Prawo autorskie na YouTube (workshop in Polish)"
+msgstr "Marcin Olender, Google: Prawo autorskie na YouTube"
+
+#: contact_forms.py:315
+msgid "<strong>Friday, October 28th, 12 noon–2 p.m.</strong>"
+msgstr "<strong>Piątek, 28 października, 12:00–14:00</strong>"
+
+#: contact_forms.py:318
+msgid ""
+"Mateusz Górski, Michał Leksiński, Patronite: Praktyczne aspekty dozwolonego "
+"użytku (workshop in Polish)"
+msgstr ""
+"Mateusz Górski, Michał Leksiński, Patronite: Praktyczne aspekty dozwolonego "
+"użytku"
+
+#: contact_forms.py:373
+msgid "Please submit your answer to qualify for this workshop"
+msgstr ""
+"Zamieść odpowiedź na zadanie, aby móc się zakwalifikować na ten warsztat"
+
+#: contact_forms.py:376
+msgid "You can't choose more than one workshop during the same period"
+msgstr "Nie możesz wybrać warsztatów odbywających się w tym samym czasie"
+
+#: contact_forms.py:378
+msgid "Please choose at least one workshop."
+msgstr "Proszę wybrać co najmniej jeden warsztat."
+
 #: settings.d/60-custom.py:5
 msgid "info"
 msgstr "info"
 #: settings.d/60-custom.py:5
 msgid "info"
 msgstr "info"
@@ -431,7 +496,7 @@ msgstr "Strona nie znaleziona"
 msgid "The page you were looking for doesn't exist."
 msgstr "Strona, której szukasz, nie istnieje."
 
 msgid "The page you were looking for doesn't exist."
 msgstr "Strona, której szukasz, nie istnieje."
 
-#: templates/base.html:18
+#: templates/base.html:19
 msgid ""
 "CopyCamp Conference is the first large-scale meeting in Poland devoted to "
 "the issues of copyright in both ideological and practical terms."
 msgid ""
 "CopyCamp Conference is the first large-scale meeting in Poland devoted to "
 "the issues of copyright in both ideological and practical terms."
@@ -439,15 +504,19 @@ msgstr ""
 "CopyCamp jest pierwszym w Polsce, organizowanym na dużą skalę spotkaniem "
 "osób zajmujących się problematyką praw autorskich."
 
 "CopyCamp jest pierwszym w Polsce, organizowanym na dużą skalę spotkaniem "
 "osób zajmujących się problematyką praw autorskich."
 
-#: templates/base.html:35
+#: templates/base.html:36
 msgid "CopyCamp"
 msgstr "CopyCamp"
 
 msgid "CopyCamp"
 msgstr "CopyCamp"
 
-#: templates/base.html:51
+#: templates/base.html:52
 msgid "Search"
 msgstr "Szukaj"
 
 msgid "Search"
 msgstr "Szukaj"
 
-#: templates/base.html:103
+#: templates/base.html:68
+msgid "Workshops"
+msgstr "Warsztaty"
+
+#: templates/base.html:105
 msgid ""
 "If not explicitly stated otherwise, all texts are licensed under the <a "
 "href='http://creativecommons.org/licenses/by-sa/3.0/'>Creative Commons "
 msgid ""
 "If not explicitly stated otherwise, all texts are licensed under the <a "
 "href='http://creativecommons.org/licenses/by-sa/3.0/'>Creative Commons "
@@ -542,15 +611,6 @@ msgstr ""
 #~ msgid "Take part! / Workshops"
 #~ msgstr "Weź udział! / Warsztaty"
 
 #~ msgid "Take part! / Workshops"
 #~ msgstr "Weź udział! / Warsztaty"
 
-#~ msgid "<h3>I'll take a part in workshops</h3>"
-#~ msgstr "<h3>Wezmę udział w warsztatach</h3>"
-
-#~ msgid "Only workshops with any spots left are visible here."
-#~ msgstr "Widoczne są tylko warsztaty, w których są jeszcze miejsca."
-
-#~ msgid "<strong>Friday, November 7th, 10 a.m.–12 noon</strong>"
-#~ msgstr "<strong>Piątek, 7 listopada, 10:00–12:00</strong>"
-
 #~ msgid ""
 #~ "Péter Mezei: European copyright alternatives – 2014 (Workshop will be "
 #~ "held in English)"
 #~ msgid ""
 #~ "Péter Mezei: European copyright alternatives – 2014 (Workshop will be "
 #~ "held in English)"
@@ -558,12 +618,6 @@ msgstr ""
 #~ "Péter Mezei: European copyright alternatives – 2014 (Uwaga! Warsztat "
 #~ "prowadzony będzie w jęz. angielskim.)"
 
 #~ "Péter Mezei: European copyright alternatives – 2014 (Uwaga! Warsztat "
 #~ "prowadzony będzie w jęz. angielskim.)"
 
-#~ msgid "<strong>Friday, November 7th, 12 noon–2 p.m.</strong>"
-#~ msgstr "<strong>Piątek, 7 listopada, 12:00–14:00</strong>"
-
-#~ msgid "Please choose at least one workshop."
-#~ msgstr "Proszę wybrać co najmniej jeden warsztat."
-
 #~ msgid "Creative Middle Class"
 #~ msgstr "O kreatywnej klasie średniej"
 
 #~ msgid "Creative Middle Class"
 #~ msgstr "O kreatywnej klasie średniej"
 
@@ -582,9 +636,6 @@ msgstr ""
 #~ msgid "Presentation"
 #~ msgstr "Prezentacja"
 
 #~ msgid "Presentation"
 #~ msgstr "Prezentacja"
 
-#~ msgid "<strong>Thursday, November 6th, 10 a.m.–12 noon</strong>"
-#~ msgstr "<strong>Czwartek, 6 listopada, 10:00–12:00</strong>"
-
 #~ msgid "Thank you for submitting the registration form at %(site_name)s."
 #~ msgstr ""
 #~ "Dziękujemy za wypełnienie formularza rejestracyjnego na stronie "
 #~ msgid "Thank you for submitting the registration form at %(site_name)s."
 #~ msgstr ""
 #~ "Dziękujemy za wypełnienie formularza rejestracyjnego na stronie "
index be0cd15..297d03b 100644 (file)
@@ -37,6 +37,7 @@ PIPELINE_JS = {
     'base': {
         'source_filenames': (
             'js/promobox.js',
     'base': {
         'source_filenames': (
             'js/promobox.js',
+            'js/workshop_form.js',
             'contrib/lightbox/js/lightbox.min.js',
         ),
         'output_filename': 'compressed/base.js',
             'contrib/lightbox/js/lightbox.min.js',
         ),
         'output_filename': 'compressed/base.js',
diff --git a/prawokultury/static/js/workshop_form.js b/prawokultury/static/js/workshop_form.js
new file mode 100644 (file)
index 0000000..bcc2c4b
--- /dev/null
@@ -0,0 +1,15 @@
+$(document).ready(function() {
+
+    var project_row = $('#id_w_siewicz_project').closest('tr');
+
+    var switcher = $('#id_w_siewicz');
+
+    if (!switcher.is(':checked'))
+        project_row.hide();
+
+    switcher.on('change', function(data) {
+        console.log(data);
+        project_row.toggle();
+    })
+
+});
index 94d9954..890f042 100755 (executable)
@@ -5,6 +5,7 @@
 {% load sponsor_tags %}
 {% load compressed %}
 {% load piwik_tags %}
 {% load sponsor_tags %}
 {% load compressed %}
 {% load piwik_tags %}
+{% load entry_url %}
 <html prefix="og: http://ogp.me/ns#">
     <head>
        <title>{% block "titleextra" %}{% endblock %}CopyCamp</title>
 <html prefix="og: http://ogp.me/ns#">
     <head>
        <title>{% block "titleextra" %}{% endblock %}CopyCamp</title>
         <div id="main-bar">
         <div id="sidebar" class="bar-right">
             {% block "sidebar" %}
         <div id="main-bar">
         <div id="sidebar" class="bar-right">
             {% block "sidebar" %}
-<div class="sidebar-box" style="text-align:center; font-size: 1.3em;">
-<strong><a target="_blank" style="display: block" href="https://prawokultury.pl/publikacje/cory-doctorow-kontekst/">
-<img style="margin-bottom: .5em;" src="//prawokultury.pl/media/entry/image/cory_cvr_fb_2_maly.jpg" alt="Cory Doctorow &ndash; Kontekst"><br>
-  Książka:<br/>
-  Cory Doctorow &ndash; Kontekst<br/>
-  Kup na PrawoKultury.pl
-  </a></strong></div>
+                <a href="{% entry_url "warsztaty" %}" style="display: block; margin-bottom: 10px; width: 220px; text-align:center; background: #ED7F00; color: white; font-size: 24px; text-transform: uppercase;">{% trans "Workshops" %}</a>
+                <div class="sidebar-box" style="text-align:center; font-size: 1.3em;">
+                    <strong><a target="_blank" style="display: block" href="https://prawokultury.pl/publikacje/cory-doctorow-kontekst/">
+                        <img style="margin-bottom: .5em;" src="//prawokultury.pl/media/entry/image/cory_cvr_fb_2_maly.jpg" alt="Cory Doctorow &ndash; Kontekst"><br>
+                        Książka:<br/>
+                        Cory Doctorow &ndash; Kontekst<br/>
+                        Kup na PrawoKultury.pl
+                </a></strong></div>
 
                 <div class="sidebar-box">
                     {% sponsor_page 'main' %}
 
                 <div class="sidebar-box">
                     {% sponsor_page 'main' %}
diff --git a/prawokultury/templatetags/__init__.py b/prawokultury/templatetags/__init__.py
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/prawokultury/templatetags/entry_url.py b/prawokultury/templatetags/entry_url.py
new file mode 100644 (file)
index 0000000..104353d
--- /dev/null
@@ -0,0 +1,10 @@
+# -*- coding: utf-8 -*-
+from django.template import Library
+from migdal.models import Entry
+
+register = Library()
+
+
+@register.simple_tag()
+def entry_url(slug_pl):
+    return Entry.objects.get(slug_pl=slug_pl).get_absolute_url()
\ No newline at end of file