diff --git a/elections2021/migrations/0045_elections2021homepage_program_silver_page.py b/elections2021/migrations/0045_elections2021homepage_program_silver_page.py new file mode 100644 index 0000000000000000000000000000000000000000..072b4a63d87ecd9bf760332f4fc8f452a8de555f --- /dev/null +++ b/elections2021/migrations/0045_elections2021homepage_program_silver_page.py @@ -0,0 +1,27 @@ +# Generated by Django 3.2.6 on 2021-08-23 07:25 + +import django.db.models.deletion +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ("wagtailcore", "0062_comment_models_and_pagesubscription"), + ("elections2021", "0044_auto_20210820_1602"), + ] + + operations = [ + migrations.AddField( + model_name="elections2021homepage", + name="program_silver_page", + field=models.ForeignKey( + blank=True, + null=True, + on_delete=django.db.models.deletion.SET_NULL, + related_name="+", + to="wagtailcore.page", + verbose_name="stránka stříbrný program", + ), + ), + ] diff --git a/elections2021/models.py b/elections2021/models.py index 15fb5645d99868c0e976f97c9aedc7c9e25d1874..52ccce66d6b5d1820decf22c3ff4e338757c7146 100644 --- a/elections2021/models.py +++ b/elections2021/models.py @@ -220,6 +220,14 @@ class Elections2021HomePage(MetadataPageMixin, RoutablePageMixin, Page): on_delete=models.SET_NULL, related_name="+", ) + program_silver_page = models.ForeignKey( + "wagtailcore.Page", + verbose_name="stránka stříbrný program", + null=True, + blank=True, + on_delete=models.SET_NULL, + related_name="+", + ) matomo_id = models.IntegerField( "Matomo ID pro sledování návštěvnosti", blank=True, null=True ) @@ -251,6 +259,9 @@ class Elections2021HomePage(MetadataPageMixin, RoutablePageMixin, Page): "elections2021.Elections2021ProgramInNutshellPage", ], ), + PageChooserPanel( + "program_silver_page", "elections2021.Elections2021StrategicPage" + ), ] footer_panels = [ @@ -405,6 +416,12 @@ class Elections2021HomePage(MetadataPageMixin, RoutablePageMixin, Page): return self.program_strategic_page.url return "#" + @cached_property + def program_silver_page_url(self): + if self.program_silver_page: + return self.program_silver_page.url + return "#" + @cached_property def newsletter_subscribe_url(self): return self.url + self.reverse_subpage("newsletter_subscribe") diff --git a/elections2021/templates/elections2021/base.html b/elections2021/templates/elections2021/base.html index fd1e08d00d27eb7058c4c78daa2b79e0dde3ecd7..5b8b83ad8576188c88c46d9823cf3a3f4d0a1f31 100644 --- a/elections2021/templates/elections2021/base.html +++ b/elections2021/templates/elections2021/base.html @@ -101,6 +101,7 @@ <ul class="navbar-menu__submenu"> <li><a href="{{ page.root_page.program_page_url }}" class="navbar-menu__link">Úplný program</a></li> <li><a href="{{ page.root_page.program_strategic_page_url }}" class="navbar-menu__link">Program v 5 minutách</a></li> + <li><a href="{{ page.root_page.program_silver_page_url }}" class="navbar-menu__link">Stříbrný program pro seniory</a></li> </ul> </ui-navbar-subtitem> </li>