diff --git a/district/migrations/0161_auto_20240513_1733.py b/district/migrations/0161_auto_20240513_1733.py index e6310b3d465eeded35ce901fdd109588378f6bef..01d33c7cd87225bdf0ec3aa3862058ab4a6f7674 100644 --- a/district/migrations/0161_auto_20240513_1733.py +++ b/district/migrations/0161_auto_20240513_1733.py @@ -1,7 +1,7 @@ # Generated by Django 5.0.4 on 2024-05-13 15:33 import wagtail -from django.db import migrations +from django.db import migrations, models from wagtail.blocks import PageChooserBlock from district.blocks import PeopleGroupBlock @@ -189,5 +189,85 @@ class Migration(migrations.Migration): verbose_name="Lidé a týmy", ), ), + migrations.AddField( + model_name="districtpersonpage", + name="after_name", + field=models.CharField( + blank=True, max_length=16, null=True, verbose_name="Tituly za jménem" + ), + ), + migrations.AddField( + model_name="districtpersonpage", + name="before_name", + field=models.CharField( + blank=True, max_length=32, null=True, verbose_name="Tituly před jménem" + ), + ), + migrations.AddField( + model_name="districtpersonpage", + name="perex", + field=models.TextField(default=""), + preserve_default=False, + ), + migrations.AddField( + model_name="districtpersonpage", + name="position", + field=models.CharField( + blank=True, max_length=200, null=True, verbose_name="Pozice/povolání" + ), + ), + migrations.AddField( + model_name="districtpersonpage", + name="primary_group", + field=models.CharField( + blank=True, + help_text="např. 'Europarlament' nebo 'Sněmovna'", + max_length=32, + null=True, + verbose_name="Kategorie", + ), + ), + migrations.AddField( + model_name="districtpersonpage", + name="related_people", + field=wagtail.fields.StreamField( + [ + ( + "person", + wagtail.blocks.PageChooserBlock( + label="Detail osoby", page_type=["main.MainPersonPage"] + ), + ) + ], + blank=True, + verbose_name="Další lidé", + ), + ), + migrations.AddField( + model_name="districtpersonpage", + name="social_links", + field=wagtail.fields.StreamField( + [ + ( + "social_links", + wagtail.blocks.StructBlock( + [ + ("text", wagtail.blocks.CharBlock(label="Název")), + ("link", wagtail.blocks.URLBlock(label="Odkaz")), + ( + "icon", + wagtail.blocks.CharBlock( + help_text="Seznam ikon - https://styleguide.pirati.cz/latest/?p=viewall-atoms-icons <br/>Název ikony zadejte bez tečky na začátku", + label="Ikona", + ), + ), + ] + ), + ) + ], + blank=True, + verbose_name="Odkazy na sociální sítě", + ), + ), migrations.RunPython(migrate_people_blocks), ] diff --git a/district/migrations/0170_districtpersonpage_after_name_and_more.py b/district/migrations/0170_districtpersonpage_after_name_and_more.py index 0df093d123415c2cf0f00e79e350d72aa2adc311..473243336fa8e3e06ed242c03b07aab328fc0f40 100644 --- a/district/migrations/0170_districtpersonpage_after_name_and_more.py +++ b/district/migrations/0170_districtpersonpage_after_name_and_more.py @@ -1,7 +1,5 @@ # Generated by Django 5.0.4 on 2024-05-15 09:09 -import wagtail.blocks -import wagtail.fields from django.db import migrations, models @@ -11,84 +9,5 @@ class Migration(migrations.Migration): ] operations = [ - migrations.AddField( - model_name="districtpersonpage", - name="after_name", - field=models.CharField( - blank=True, max_length=16, null=True, verbose_name="Tituly za jménem" - ), - ), - migrations.AddField( - model_name="districtpersonpage", - name="before_name", - field=models.CharField( - blank=True, max_length=32, null=True, verbose_name="Tituly před jménem" - ), - ), - migrations.AddField( - model_name="districtpersonpage", - name="perex", - field=models.TextField(default=""), - preserve_default=False, - ), - migrations.AddField( - model_name="districtpersonpage", - name="position", - field=models.CharField( - blank=True, max_length=200, null=True, verbose_name="Pozice/povolání" - ), - ), - migrations.AddField( - model_name="districtpersonpage", - name="primary_group", - field=models.CharField( - blank=True, - help_text="např. 'Europarlament' nebo 'Sněmovna'", - max_length=32, - null=True, - verbose_name="Kategorie", - ), - ), - migrations.AddField( - model_name="districtpersonpage", - name="related_people", - field=wagtail.fields.StreamField( - [ - ( - "person", - wagtail.blocks.PageChooserBlock( - label="Detail osoby", page_type=["main.MainPersonPage"] - ), - ) - ], - blank=True, - verbose_name="Další lidé", - ), - ), - migrations.AddField( - model_name="districtpersonpage", - name="social_links", - field=wagtail.fields.StreamField( - [ - ( - "social_links", - wagtail.blocks.StructBlock( - [ - ("text", wagtail.blocks.CharBlock(label="Název")), - ("link", wagtail.blocks.URLBlock(label="Odkaz")), - ( - "icon", - wagtail.blocks.CharBlock( - help_text="Seznam ikon - https://styleguide.pirati.cz/latest/?p=viewall-atoms-icons <br/>Název ikony zadejte bez tečky na začátku", - label="Ikona", - ), - ), - ] - ), - ) - ], - blank=True, - verbose_name="Odkazy na sociální sítě", - ), - ), + ] diff --git a/district/migrations/0190_remove_districthomepage_calendar_page.py b/district/migrations/0190_remove_districthomepage_calendar_page.py new file mode 100644 index 0000000000000000000000000000000000000000..fd25fb5a84a3b9fdd5ac8c7fa99cb9f171fa3ef6 --- /dev/null +++ b/district/migrations/0190_remove_districthomepage_calendar_page.py @@ -0,0 +1,17 @@ +# Generated by Django 5.0.4 on 2024-05-17 09:31 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('district', '0189_auto_20240516_1526'), + ] + + operations = [ + migrations.RemoveField( + model_name='districthomepage', + name='calendar_page', + ), + ] diff --git a/district/migrations/0191_delete_districtpersontag.py b/district/migrations/0191_delete_districtpersontag.py new file mode 100644 index 0000000000000000000000000000000000000000..1d2a60e0eafb5bcb0f80dc82b7f90f986a4f5bf1 --- /dev/null +++ b/district/migrations/0191_delete_districtpersontag.py @@ -0,0 +1,16 @@ +# Generated by Django 5.0.4 on 2024-05-17 11:43 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('district', '0190_remove_districthomepage_calendar_page'), + ] + + operations = [ + migrations.DeleteModel( + name='DistrictPersonTag', + ), + ] diff --git a/district/models.py b/district/models.py index 5a42dd37c50f9af75725f8b460d9f50d8cec8792..086db4667cdae204fcda8aeb9deff555778fbb0c 100644 --- a/district/models.py +++ b/district/models.py @@ -86,6 +86,9 @@ CONTENT_BLOCKS = DEFAULT_CONTENT_BLOCKS + [ ] +# --- BEGIN Migrated models --- + + class DistrictHomePage( RoutablePageMixin, ExtendedMetadataHomePageMixin, @@ -149,14 +152,6 @@ class DistrictHomePage( # --- END New fields --- - calendar_page = models.ForeignKey( - "DistrictCalendarPage", - verbose_name="Stránka s kalendářem", - on_delete=models.PROTECT, - null=True, - blank=True, - ) - calendar_button_text = models.CharField( "Text tlačítka kalendáře", max_length=256, default="Kalendář" ) @@ -236,15 +231,9 @@ class DistrictHomePage( MultiFieldPanel( [ FieldPanel("calendar_button_text"), - MultiFieldPanel( - [ - FieldPanel("calendar_url"), - PageChooserPanel("calendar_page"), - ], - "Kalendář", - ), + FieldPanel("calendar_url"), ], - gettext_lazy("Nastavení lišty s kalendářem a mapou"), + gettext_lazy("Kalendář"), ), MultiFieldPanel( [ @@ -359,6 +348,10 @@ class DistrictHomePage( def interactive_program_page(self): return self._first_subpage_of_type(DistrictInteractiveProgramPage) + @property + def calendar_page(self): + return self._first_subpage_of_type(DistrictCalendarPage) + @property def root_page(self): return self @@ -444,14 +437,6 @@ class DistrictContactPage(MainContactPageMixin): verbose_name = "Kontakty" -class DistrictPersonTag(TaggedItemBase): - content_object = ParentalKey( - "district.DistrictPersonPage", - on_delete=models.CASCADE, - related_name="tagged_items", - ) - - class DistrictPersonPage(MainPersonPageMixin): ### FIELDS job = models.CharField( @@ -570,6 +555,59 @@ class DistrictPeoplePage(MainPeoplePageMixin): subpage_types = ["district.DistrictPersonPage"] +class DistrictCalendarPage(SubpageMixin, MetadataPageMixin, CalendarMixin, Page): + """ + Page for displaying full calendar + """ + + ### PANELS + + content_panels = Page.content_panels + [FieldPanel("calendar_url")] + + ### RELATIONS + + parent_page_types = [ + "district.DistrictCenterPage", + "district.DistrictHomePage", + ] + subpage_types = [] + + ### OTHERS + + class Meta: + verbose_name = "Stránka s kalendářem" + + +class DistrictPdfPage(PdfPageMixin, MetadataPageMixin, SubpageMixin, Page): + """ + Single pdf page display + """ + + ### RELATIONS + + parent_page_types = [ + "district.DistrictHomePage", + "district.DistrictArticlePage", + ] + subpage_types = [] + + ### PANELS + + content_panels = Page.content_panels + PdfPageMixin.content_panels + + ### OTHER + + class Meta: + verbose_name = "PDF stránka" + + +class DistrictNewProgramPage(): + pass + + +# --- END Migrated models --- + + class DistrictElectionBasePage( ExtendedMetadataPageMixin, SubpageMixin, MetadataPageMixin, Page ): @@ -1435,30 +1473,6 @@ class DistrictGeoFeatureCollectionCategory(Orderable): def make_feature_index_cache_key(feature: "DistrictGeoFeatureDetailPage"): return f"DistrictGeoFeatureDetailPage::{feature.id}::index" - -class DistrictCalendarPage(SubpageMixin, MetadataPageMixin, CalendarMixin, Page): - """ - Page for displaying full calendar - """ - - ### PANELS - - content_panels = Page.content_panels + [FieldPanel("calendar_url")] - - ### RELATIONS - - parent_page_types = [ - "district.DistrictCenterPage", - "district.DistrictHomePage", - ] - subpage_types = [] - - ### OTHERS - - class Meta: - verbose_name = "Stránka s kalendářem" - - class DistrictGeoFeatureDetailPage( ExtendedMetadataPageMixin, MetadataPageMixin, SubpageMixin, Page, Orderable ): @@ -1660,28 +1674,9 @@ class DistrictGeoFeatureDetailPage( self.geojson = maps_validators.normalize_geojson_feature_collection( self.geojson, allowed_types=SUPPORTED_FEATURE_TYPES ) - except ValueError as exc: - raise ValidationError({"geojson": str(exc)}) from exc - - -class DistrictPdfPage(PdfPageMixin, MetadataPageMixin, SubpageMixin, Page): - """ - Single pdf page display - """ - - ### RELATIONS - parent_page_types = [ - "district.DistrictHomePage", - "district.DistrictArticlePage", - ] - subpage_types = [] - - ### PANELS - - content_panels = Page.content_panels + PdfPageMixin.content_panels - - ### OTHER + print(self.geojson) + except ValueError as exc: + print(exc) - class Meta: - verbose_name = "PDF stránka" + raise ValidationError({"geojson": str(exc)}) from exc diff --git a/district/templates/district/blocks/contact_block.html b/district/templates/district/blocks/contact_block.html index 162d56baa64a2843fc9046006f39c2acaea76d7a..4d7801a4a76468db07d98c3b6501dbe943fcda16 100644 --- a/district/templates/district/blocks/contact_block.html +++ b/district/templates/district/blocks/contact_block.html @@ -5,7 +5,7 @@ <div class="space-y-4"> {% for contact_details in self.contact_list %} {% with contact_details.person as person_page %} - {% include "shared/person_badge_snippet.html" with title=contact_details.position|default:person_page.job_function %} + {% include "shared/person_badge_snippet.html" with title=contact_details.position|default:person_page.job %} {% endwith %} {% endfor %} </div> diff --git a/district/templates/district/blocks/people_group_block.html b/district/templates/district/blocks/people_group_block.html index 752458f02285438ff0a0e9c5d014660541bca857..7956df0e94ab0fc4bd33e40dde70807b811b6507 100644 --- a/district/templates/district/blocks/people_group_block.html +++ b/district/templates/district/blocks/people_group_block.html @@ -5,7 +5,7 @@ <div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 row-gap-8 col-gap-8"> {% for person_details in self.person_list %} {% with person_details.person as person_page %} - {% include "shared/person_badge_snippet.html" with title=person_details.position|default:person_page.job_function %} + {% include "shared/person_badge_snippet.html" with title=person_details.position|default:person_page.job %} {% endwith %} {% endfor %} </div> diff --git a/district/templates/district/blocks/program_block.html b/district/templates/district/blocks/program_block.html index 29446bced76896f2a91106742402698d0cd65364..0b600586cf72fc78b302dde2f96e900328b8c245 100644 --- a/district/templates/district/blocks/program_block.html +++ b/district/templates/district/blocks/program_block.html @@ -15,7 +15,7 @@ <div class="card__body"> {% with self.person.person as person_page %} - {% include "shared/person_badge_snippet.html" with title=self.person.position|default:person_page.job_function %} + {% include "shared/person_badge_snippet.html" with title=self.person.position|default:person_page.job %} {% endwith %} <div class="content-block"> diff --git a/district/templates/district/district_calendar_page.html b/district/templates/district/district_calendar_page.html index ea4930b2c32cedfe8a3dee305dd92d9abef275b4..7d008b1a6aaba50351252c1fd6682212a5c7345c 100644 --- a/district/templates/district/district_calendar_page.html +++ b/district/templates/district/district_calendar_page.html @@ -1,10 +1,17 @@ -{% extends "district/base.html" %} -{% load wagtailcore_tags %} +{% extends "styleguide2/simple_page.html" %} -{% block content %} -<main> - <section class="my-8 lg:my-16 container-padding--zero lg:container-padding--auto"> - {% include "shared/calendar_current_events_snippet.html" with fullscreen=True calendar=page.calendar %} - </section> -</main> +{% block navbar %} + {% include 'styleguide2/includes/organisms/layout/district/navbar.html' with selected_item=page.get_menu_title %} +{% endblock %} + +{% block inner_content %} + <div class="__js-root"> + <ui-full-calendar + {% if page.calendar_url %} + events='{{ page.get_fullcalendar_data|safe }}' + {% else %} + events='{{ page.root_page.get_fullcalendar_data|safe }}' + {% endif %} + ></ui-full-calendar> + </div> {% endblock %} diff --git a/district/templates/district/district_pdf_page.html b/district/templates/district/district_pdf_page.html index dd4bd8bceaa0f05392b415c7a655eed2958feaf8..b6040ebda49d2e9e3041fe05c2b50e7cb3182020 100644 --- a/district/templates/district/district_pdf_page.html +++ b/district/templates/district/district_pdf_page.html @@ -1,5 +1,9 @@ -{% extends "district/base.html" %} +{% extends "styleguide2/simple_page.html" %} -{% block content %} +{% block navbar %} + {% include 'styleguide2/includes/organisms/layout/district/navbar.html' with selected_item=page.get_menu_title %} +{% endblock %} + +{% block inner_content %} {% include "shared/pdf_snippet.html" with download_link=True %} {% endblock %} diff --git a/main/blocks.py b/main/blocks.py index 2c3509dfe41a60b42b096ca72a46ccda9b63068e..430921cdeaf749c7024c5bb7b020ff937d3e84e0 100644 --- a/main/blocks.py +++ b/main/blocks.py @@ -18,6 +18,7 @@ from shared.blocks import ( CardLinkWithHeadlineBlockMixin, CTAMixin, PersonContactBlockMixin, + ProgramGroupBlockMixin, ) from shared.blocks import ProgramGroupBlockPopout as SharedProgramGroupBlockPopout @@ -44,20 +45,6 @@ class CardLinkBlock(CardLinkBlockMixin): label = "Karta s odkazem" -class ProgramGroupBlockMixin(StructBlock): - title = CharBlock(label="Titulek části programu") - # point_list = ListBlock(ProgramBlock(), label="Jednotlivé články programu") - - class Meta: - icon = "date" - # label = "Skupina programů" - - def get_prep_value(self, value): - value = super().get_prep_value(value) - value["slug"] = slugify(value["title"]) - return value - - class BoxesBlock(StructBlock): title = CharBlock(label="Nadpis") list = ListBlock(BoxBlock, label="Boxíky") @@ -128,34 +115,6 @@ class PeopleGroupBlock(StructBlock): return value -class ProgramBlock(StructBlock): - url = URLBlock( - label="Odkaz pokrývající celou tuto část", - required=False, - ) - icon = ImageChooserBlock( - label="Ikona", - required=False, - ) - title = CharBlock(label="Titulek článku programu") - text = RichTextBlock( - label="Obsah", - features=PROGRAM_RICH_TEXT_FEATURES, - ) - - class Meta: - icon = "date" - label = "Článek programu" - - -class ProgramGroupBlock(ProgramGroupBlockMixin): - point_list = ListBlock(ProgramBlock(), label="Jednotlivé články programu") - - class Meta: - icon = "date" - label = "Běžný program" - - class ProgramGroupBlockCrossroad(ProgramGroupBlockMixin): point_list = ListBlock(CardLinkBlock(), label="Karty programu") diff --git a/main/models.py b/main/models.py index ce8305162b4e11f525f72f0728099030b91d68e1..33bbabd9a6e552cbddb633ccc99f62abe7e8d833 100644 --- a/main/models.py +++ b/main/models.py @@ -42,6 +42,7 @@ from shared.models import ( # MenuMixin, MainPersonPageMixin, MainSearchPageMixin, MainSimplePageMixin, + MainProgramPageMixin, PageInMenuMixin, SharedTaggedMainArticle, SubpageMixin, @@ -181,14 +182,12 @@ class MainArticlePage(MainArticlePageMixin): subpage_types = [] -class MainProgramPage( - ExtendedMetadataPageMixin, SubpageMixin, MetadataPageMixin, PageInMenuMixin, Page -): +class MainProgramPage(MainProgramPageMixin): ### FIELDS program = StreamField( [ - ("program_group", blocks.ProgramGroupBlock()), + ("program_group", shared_blocks.ProgramGroupBlock()), ("program_group_crossroad", blocks.ProgramGroupBlockCrossroad()), ("program_group_popout", blocks.ProgramGroupBlockPopout()), ("elections_program", blocks.ElectionsProgramBlock()), @@ -198,24 +197,11 @@ class MainProgramPage( use_json_field=True, ) - ### PANELS - - content_panels = Page.content_panels + [FieldPanel("program")] - - promote_panels = make_promote_panels() - - settings_panels = [] - ### RELATIONS parent_page_types = ["main.MainHomePage"] subpage_types = [] - ### OTHERS - - class Meta: - verbose_name = "Program" - class MainPeoplePage(MainPeoplePageMixin): people = StreamField( diff --git a/maps_utils/blocks.py b/maps_utils/blocks.py index ba478faedabfaa1718c6c9cc9a86ed15788d85c0..9b3b17405fc6161fdc026e27f16a8053a98a2a95 100644 --- a/maps_utils/blocks.py +++ b/maps_utils/blocks.py @@ -111,6 +111,8 @@ class MapFeatureBlock(blocks.StructBlock): value["geojson"], allowed_types=SUPPORTED_FEATURE_TYPES ) except ValueError as exc: + print(exc) + errors["geojson"] = ErrorList(str(exc)) if errors: diff --git a/shared/blocks/main.py b/shared/blocks/main.py index 6572055a95157f5507515974a15487cac5b611d0..c6711f9c3610fb28cd1b6f843d0f9c973e33c7da 100644 --- a/shared/blocks/main.py +++ b/shared/blocks/main.py @@ -274,3 +274,48 @@ class MainButtonGroupBlock(StructBlock): template = "styleguide2/includes/atoms/buttons/group.html" icon = "group" label = "Skupina tlačítek" + + +# Program + + +class ProgramGroupBlockMixin(StructBlock): + title = CharBlock(label="Titulek části programu") + # point_list = ListBlock(ProgramBlock(), label="Jednotlivé články programu") + + class Meta: + icon = "date" + # label = "Skupina programů" + + def get_prep_value(self, value): + value = super().get_prep_value(value) + value["slug"] = slugify(value["title"]) + return value + + +class ProgramBlock(StructBlock): + url = URLBlock( + label="Odkaz pokrývající celou tuto část", + required=False, + ) + icon = ImageChooserBlock( + label="Ikona", + required=False, + ) + title = CharBlock(label="Titulek článku programu") + text = RichTextBlock( + label="Obsah", + features=PROGRAM_RICH_TEXT_FEATURES, + ) + + class Meta: + icon = "date" + label = "Článek programu" + + +class ProgramGroupBlock(ProgramGroupBlockMixin): + point_list = ListBlock(ProgramBlock(), label="Jednotlivé články programu") + + class Meta: + icon = "date" + label = "Běžný program" diff --git a/shared/models/main.py b/shared/models/main.py index a47a6fdcfa01c2f2725a38e14645319129ada443..65a100bd3fcc58005f160847ad7f2cdd46d2783f 100644 --- a/shared/models/main.py +++ b/shared/models/main.py @@ -38,6 +38,8 @@ from shared.blocks import ( PersonContactBoxBlock, SocialLinkBlock, TwoTextColumnBlock, + ProgramGroupBlock, + ProgramGroupBlockPopout, ) from shared.const import MONTH_NAMES from shared.forms import SubscribeForm @@ -977,3 +979,37 @@ class MainPersonPageMixin( verbose_name = "Detail osoby" abstract = True # ordering = ("title",) + + +class MainProgramPageMixin(ExtendedMetadataPageMixin, SubpageMixin, MetadataPageMixin, PageInMenuMixin, Page): + ### FIELDS + + program = StreamField( + [ + ("program_group", ProgramGroupBlock()), + ("program_group_popout", ProgramGroupBlockPopout()), + ], + verbose_name="Program", + blank=True, + use_json_field=True, + ) + + ### PANELS + + content_panels = Page.content_panels + [FieldPanel("program")] + + promote_panels = make_promote_panels() + + settings_panels = [] + + ### RELATIONS + + # NOTE: Needs to be overridden + parent_page_types = [] + subpage_types = [] + + ### OTHERS + + class Meta: + verbose_name = "Program" + abstract = True diff --git a/shared/templates/shared/pdf_snippet.html b/shared/templates/shared/pdf_snippet.html index 2c69fb22a88cefdf54a24d93d947f11f7cea7dac..b1bc8d7dfcb93166289c997adce58e1793ad755c 100644 --- a/shared/templates/shared/pdf_snippet.html +++ b/shared/templates/shared/pdf_snippet.html @@ -61,17 +61,13 @@ </script> </div> - <div class="text-gray-500 my-6" id="loading"> + <div id="loading"> Načítání ... </div> {% if download_link %} - <div class="flex flex-col md:flex-row lg:flex-col lg:items-end space-y-2 md:space-y-0 md:space-x-2 lg:space-x-0 lg:space-y-2"> - <a href="{{ request.scheme }}://{{ request.get_host }}{{ page.pdf_url }}"> - <button class="btn btn--inline-icon btn--condensed btn--hoveractive btn--grey-500"> - <div class="btn__body">Odkaz ke stažení PDF</div> - </button> - </a> + <div class="inline-block py-8"> + {% include "styleguide2/includes/atoms/buttons/round_button.html" with button_text="Stáhnout dokument" url=page.pdf_url %} </div> {% endif %} {% endblock %} diff --git a/shared/templates/styleguide2/includes/organisms/layout/district/navbar.html b/shared/templates/styleguide2/includes/organisms/layout/district/navbar.html index b50096bbc84187dd52b9fa1f413c4e9888b2c69f..f3668d80505a0d7a252b83e8f307ca9a1eaddcaa 100644 --- a/shared/templates/styleguide2/includes/organisms/layout/district/navbar.html +++ b/shared/templates/styleguide2/includes/organisms/layout/district/navbar.html @@ -49,3 +49,26 @@ </div> </div> {% endblock %} + +{% block after_desktop_search %} + {% if page.root_page.calendar_page %} + <div class="w-24 h-11 min-w-[9rem]"> + <a + href="{{ page.root_page.calendar_page.url }}" + class=" + navbar__border-button + + font-alt flex items-center justify-center border-none border-4 w-24 h-11 py-4 px-3 duration-150 cursor-pointer text-lg gap-1 + + hover:no-underline + + xl:w-auto + " + > + <i class="ico--calendar"></i> + + {{ page.root_page.calendar_button_text }} + </a> + </div> + {% endif %} +{% endblock %} diff --git a/shared/templates/styleguide2/includes/organisms/layout/navbar.html b/shared/templates/styleguide2/includes/organisms/layout/navbar.html index 5d6ade14276ee38ae217240d942d019f94d79d42..f7d3c5ed98fbaaf5e56eb413635a42c8d699b748 100644 --- a/shared/templates/styleguide2/includes/organisms/layout/navbar.html +++ b/shared/templates/styleguide2/includes/organisms/layout/navbar.html @@ -41,8 +41,10 @@ </div> <form method="GET" action="{{ page.root_page.search_page.url }}"> - {% include 'styleguide2/includes/atoms/form_fields/form_input.html' with placeholder='Hledej' classes='font-condensed text-black px-2 py-1 w-80' name='q' value=global_search_query %} + {% include 'styleguide2/includes/atoms/form_fields/form_input.html' with placeholder='Hledej' classes='text-black p-3 w-60' name='q' value=global_search_query %} </form> + + {% block after_desktop_search %}{% endblock %} </div> <!-- END Social media --> diff --git a/shared/templates/styleguide2/simple_page.html b/shared/templates/styleguide2/simple_page.html index 21ee68c5c8a441a8372fa8f32e45b73896614e0e..fd7f7428d4f33e544e291c8124cba6daf8bf73eb 100644 --- a/shared/templates/styleguide2/simple_page.html +++ b/shared/templates/styleguide2/simple_page.html @@ -11,12 +11,14 @@ {% endblock %} <main class="container--wide mb-2 lg:mb-12"> - {% for block in page.content %} - {% include_block block %} - {% endfor %} + {% block inner_content %} + {% for block in page.content %} + {% include_block block %} + {% endfor %} - {% for block in page.new_content %} - {% include_block block %} - {% endfor %} + {% for block in page.new_content %} + {% include_block block %} + {% endfor %} + {% endblock %} </main> {% endblock %} diff --git a/uniweb/templates/uniweb/blocks/people_group_block.html b/uniweb/templates/uniweb/blocks/people_group_block.html index 8630f953772de8ac9744df41d9ef7d4cff01b089..d268139f0cf98e0b9c5a64632595c359f624e3e0 100644 --- a/uniweb/templates/uniweb/blocks/people_group_block.html +++ b/uniweb/templates/uniweb/blocks/people_group_block.html @@ -5,7 +5,7 @@ <div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-8"> {% for person_details in self.person_list %} {% with person_details.person as person_page %} - {% include "shared/person_badge_snippet.html" with title=person_details.position|default:person_page.job_function %} + {% include "shared/person_badge_snippet.html" with title=person_details.position|default:person_page.job %} {% endwith %} {% endfor %} </div>