diff --git a/donate/migrations/0030_donateprojectindexpage_heading.py b/donate/migrations/0030_donateprojectindexpage_heading.py new file mode 100644 index 0000000000000000000000000000000000000000..12e2c20443d0391137ea681e58fc97aa8dc8d252 --- /dev/null +++ b/donate/migrations/0030_donateprojectindexpage_heading.py @@ -0,0 +1,20 @@ +# Generated by Django 4.1.10 on 2023-09-07 21:31 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + dependencies = [ + ("donate", "0029_alter_donatehomepage_custom_blocks"), + ] + + operations = [ + migrations.AddField( + model_name="donateprojectindexpage", + name="heading", + field=models.CharField( + default="Pomáháme společně", max_length=32, verbose_name="Hlavní nadpis" + ), + preserve_default=False, + ), + ] diff --git a/donate/models.py b/donate/models.py index 7d7f9a42cd874e4146cf1ba6097732a0ed9c81f9..5ef5eb7659f3cdf5b7eaaa61ad2f001328403f10 100644 --- a/donate/models.py +++ b/donate/models.py @@ -261,9 +261,8 @@ class DonateHomePage( def info_page_url(self): return get_subpage_url(self, DonateInfoPage) - @cached_property - def projects_page_url(self): - return get_subpage_url(self, DonateProjectIndexPage) + def project_indexes(self): + return self.get_descendants().type(DonateProjectIndexPage).live().all() @cached_property def regions_page_url(self): @@ -391,8 +390,16 @@ class DonateRegionPage( class DonateProjectIndexPage( Page, ExtendedMetadataPageMixin, SubpageMixin, MetadataPageMixin ): + ### FIELDS + + heading = models.CharField("Hlavní nadpis", max_length=32) + ### PANELS + content_panels = Page.content_panels + [ + FieldPanel("heading"), + ] + promote_panels = make_promote_panels() settings_panels = [] diff --git a/donate/templates/donate/base.html b/donate/templates/donate/base.html index 663a0a1c08f15a6b38d6bf5f86bfd36e6b77d40f..801520ba835a9d39207e26904a39383411291f89 100644 --- a/donate/templates/donate/base.html +++ b/donate/templates/donate/base.html @@ -100,11 +100,11 @@ <a class="nav-link" href="/#strana">Podpoř Piráty</a> {% endif %} </li> - {% if page.root_page.has_projects %} - <li class="nav-item"> - <a class="nav-link" href="{{ page.root_page.projects_page_url }}">Projekty a kampaně</a> - </li> - {% endif %} + {% for projects_page in page.project_indexes %} + <li class="nav-item"> + <a class="nav-link" href="{{ projects_page.url }}">{{ projects_page.title }}</a> + </li> + {% endfor %} <li class="nav-item"> <a class="nav-link" href="{{ page.root_page.regions_page_url }}">Kraje</a> </li> diff --git a/donate/templates/donate/donate_project_index_page.html b/donate/templates/donate/donate_project_index_page.html index 3d44a78e8b6d8acd3efc8af95a758d42551a1cf8..5d75b6b39de38d3eae7dae751d5ae3df45ca080c 100644 --- a/donate/templates/donate/donate_project_index_page.html +++ b/donate/templates/donate/donate_project_index_page.html @@ -7,7 +7,7 @@ <section class="section--primary"> <div class="container"> - <h1 class="lead homepage-heading mb-4">{{ page.title }}</h1> + <h1 class="lead homepage-heading mb-4">{{ page.heading }}</h1> <div class="row projects mb-4"> {% for project in projects %}