From 9027028c871e87be07d6362e3547183eb464024c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tom=C3=A1=C5=A1=20Valenta?= <tomas@imaniti.org> Date: Mon, 29 Apr 2024 11:08:16 +0200 Subject: [PATCH] editable transparency data for donations --- ...onatehomepage_transparency_footer_items.py | 20 +++++++++++++++++++ donate/models.py | 14 +++++++++++++ donate/templates/donate/base.html | 14 +++++++++---- 3 files changed, 44 insertions(+), 4 deletions(-) create mode 100644 donate/migrations/0046_donatehomepage_transparency_footer_items.py diff --git a/donate/migrations/0046_donatehomepage_transparency_footer_items.py b/donate/migrations/0046_donatehomepage_transparency_footer_items.py new file mode 100644 index 00000000..ba11760b --- /dev/null +++ b/donate/migrations/0046_donatehomepage_transparency_footer_items.py @@ -0,0 +1,20 @@ +# Generated by Django 4.1.13 on 2024-04-29 09:08 + +from django.db import migrations +import wagtail.blocks +import wagtail.fields + + +class Migration(migrations.Migration): + + dependencies = [ + ('donate', '0045_alter_donatehomepage_menu'), + ] + + operations = [ + migrations.AddField( + model_name='donatehomepage', + name='transparency_footer_items', + field=wagtail.fields.StreamField([('transparency_url', wagtail.blocks.StructBlock([('text', wagtail.blocks.CharBlock(label='Nadpis')), ('url', wagtail.blocks.URLBlock(label='Odkaz'))], label='Odkaz'))], blank=True, use_json_field=True, verbose_name='Odkazy v patičkové sekci Otevřenost'), + ), + ] diff --git a/donate/models.py b/donate/models.py index a9a985bb..de50f840 100644 --- a/donate/models.py +++ b/donate/models.py @@ -16,6 +16,7 @@ from wagtail.admin.panels import ( PublishingPanel, TabbedInterface, ) +from wagtail.blocks import URLBlock from wagtail.fields import RichTextField, StreamField from wagtail.images.blocks import ImageChooserBlock from wagtail.models import Orderable, Page @@ -120,6 +121,7 @@ class DonateHomePage( null=True, verbose_name="náhled videa", ) + # main section content_blocks = StreamField( [ @@ -132,6 +134,17 @@ class DonateHomePage( use_json_field=True, verbose_name="Obsah", ) + + # footer + transparency_footer_items = StreamField( + [ + ("transparency_url", CustomLinkBlock(label="Odkaz")) + ], + blank=True, + use_json_field=True, + verbose_name="Odkazy v patičkové sekci Otevřenost" + ) + # settings faq_page = models.ForeignKey( "donate.DonateTextPage", @@ -170,6 +183,7 @@ class DonateHomePage( "hlavní sekce", ), FieldPanel("content_blocks"), + FieldPanel("transparency_footer_items") ] promote_panels = make_promote_panels(admin_help.build(admin_help.IMPORTANT_TITLE)) diff --git a/donate/templates/donate/base.html b/donate/templates/donate/base.html index 3fc26956..1641c837 100644 --- a/donate/templates/donate/base.html +++ b/donate/templates/donate/base.html @@ -133,10 +133,16 @@ <div class="col-12 col-md-6 col-lg-3 mb-4 order-2 order-lg-1"> <h4 class="lead mb-3">Otevřenost</h4> <ul class="footer__menu"> - <li><a href="https://ucet.pirati.cz" title="Zvláštní účet ve smyslu § 17b zákona č. 424/1991 Sb. o sdružování v politických stranách">Účet dle §17b ZPS</a></li> - <li><a href="https://smlouvy.pirati.cz">Registr smluv</a></li> - <li><a href="https://piroplaceni.pirati.cz">Otevřené hospodaření</a></li> - <li><a href="https://wiki.pirati.cz/fo/start" title="Financování a hospodaření">Financování</a></li> + {% if page.root_page.transparency_footer_items %} + {% for block in page.root_page.transparency_footer_items %} + <li> + <a + href="{{ block.value.url }}" + target="_blank" + >{{ block.value.text }}</a> + </li> + {% endfor %} + {% endif %} </ul> </div><!-- /column --> -- GitLab