diff --git a/district/migrations/0118_alter_districtcustompage_content_and_more.py b/district/migrations/0118_alter_districtcustompage_content_and_more.py new file mode 100644 index 0000000000000000000000000000000000000000..d71d02ae49a6fd877ea4ea8087bfccdeda0f6278 --- /dev/null +++ b/district/migrations/0118_alter_districtcustompage_content_and_more.py @@ -0,0 +1,6288 @@ +# Generated by Django 4.1.10 on 2023-07-27 10:37 + +import wagtail.blocks +import wagtail.contrib.table_block.blocks +import wagtail.fields +import wagtail.images.blocks +from django.db import migrations + +import shared.blocks + + +class Migration(migrations.Migration): + dependencies = [ + ("district", "0117_merge_20230711_1636"), + ] + + operations = [ + migrations.AlterField( + model_name="districtcustompage", + name="content", + field=wagtail.fields.StreamField( + [ + ( + "text", + wagtail.blocks.RichTextBlock( + features=[ + "h2", + "h3", + "h4", + "h5", + "bold", + "italic", + "ol", + "ul", + "hr", + "link", + "document-link", + "image", + "superscript", + "subscript", + "strikethrough", + "blockquote", + "embed", + ], + label="Textový editor", + ), + ), + ( + "headline", + wagtail.blocks.StructBlock( + [ + ( + "headline", + wagtail.blocks.CharBlock( + label="Headline", max_length=300, required=True + ), + ), + ( + "style", + wagtail.blocks.ChoiceBlock( + choices=[ + ("head-alt-xl", "Bebas XL"), + ("head-alt-lg", "Bebas L"), + ("head-alt-md", "Bebas M"), + ("head-alt-base", "Bebas base"), + ("head-alt-sm", "Bebas SM"), + ("head-alt-xs", "Bebas XS"), + ("head-alt-2xs", "Bebas 2XS"), + ("head-heavy-base", "Roboto base"), + ("head-heavy-sm", "Roboto SM"), + ("head-heavy-xs", "Roboto XS"), + ("head-heavy-2xs", "Roboto 2XS"), + ("head-allcaps-2xs", "Allcaps 2XS"), + ("head-allcaps-3xs", "Allcaps 3XS"), + ("head-allcaps-4xs", "Allcaps 4XS"), + ( + "head-heavy-allcaps-2xs", + "Allcaps heavy 2XS", + ), + ( + "head-heavy-allcaps-3xs", + "Allcaps heavy 3XS", + ), + ( + "head-heavy-allcaps-4xs", + "Allcaps heavy 4XS", + ), + ], + help_text="Náhled si prohlédněte na https://styleguide.pir-test.eu/latest/?p=viewall-atoms-text.", + label="Styl", + ), + ), + ( + "tag", + wagtail.blocks.ChoiceBlock( + choices=[ + ("h1", "H1"), + ("h2", "H2"), + ("h3", "H3"), + ("h4", "H4"), + ("h5", "H5"), + ("h6", "H6"), + ], + help_text="Čím nižší číslo, tím vyšší úroveň.", + label="Úroveň nadpisu", + ), + ), + ( + "align", + wagtail.blocks.ChoiceBlock( + choices=[ + ("auto", "Automaticky"), + ("center", "Na střed"), + ], + label="Zarovnání", + ), + ), + ] + ), + ), + ( + "table", + wagtail.contrib.table_block.blocks.TableBlock( + template="shared/blocks/table_block.html" + ), + ), + ( + "gallery", + wagtail.blocks.StructBlock( + [ + ( + "gallery_items", + wagtail.blocks.ListBlock( + wagtail.images.blocks.ImageChooserBlock( + label="obrázek", required=True + ), + group="ostatní", + icon="image", + label="Galerie", + ), + ) + ], + label="Galerie", + ), + ), + ( + "figure", + wagtail.blocks.StructBlock( + [ + ( + "img", + wagtail.images.blocks.ImageChooserBlock( + label="Obrázek", required=True + ), + ), + ( + "caption", + wagtail.blocks.TextBlock( + label="Popisek", required=False + ), + ), + ] + ), + ), + ( + "card", + wagtail.blocks.StructBlock( + [ + ( + "img", + wagtail.images.blocks.ImageChooserBlock( + label="Obrázek", required=False + ), + ), + ( + "elevation", + wagtail.blocks.IntegerBlock( + default=2, + help_text="0 = žádný stín, 21 = maximální stín", + label="Velikost stínu", + max_value=21, + min_value=0, + ), + ), + ( + "headline", + wagtail.blocks.TextBlock( + label="Titulek", required=False + ), + ), + ( + "hoveractive", + wagtail.blocks.BooleanBlock( + default=False, + help_text="Pokud je zapnuto, stín se zvýrazní, když na kartu uživatel najede myší.", + label="Zvýraznit stín na hover", + required=False, + ), + ), + ( + "content", + wagtail.blocks.StreamBlock( + [ + ( + "text", + wagtail.blocks.RichTextBlock( + features=[ + "h2", + "h3", + "h4", + "h5", + "bold", + "italic", + "ol", + "ul", + "hr", + "link", + "document-link", + "image", + "superscript", + "subscript", + "strikethrough", + "blockquote", + "embed", + ], + label="Textový editor", + ), + ), + ( + "table", + wagtail.contrib.table_block.blocks.TableBlock( + template="shared/blocks/table_block.html" + ), + ), + ( + "figure", + wagtail.blocks.StructBlock( + [ + ( + "img", + wagtail.images.blocks.ImageChooserBlock( + label="Obrázek", + required=True, + ), + ), + ( + "caption", + wagtail.blocks.TextBlock( + label="Popisek", + required=False, + ), + ), + ] + ), + ), + ( + "youtube", + wagtail.blocks.StructBlock( + [ + ( + "poster_image", + wagtail.images.blocks.ImageChooserBlock( + help_text="Není třeba vyplňovat, náhled bude dohledán automaticky.", + label="Náhled videa (automatické pole)", + required=False, + ), + ), + ( + "video_url", + wagtail.blocks.URLBlock( + help_text="Odkaz na YouTube video bude automaticky zkonvertován na ID videa a NEBUDE uložen.", + label="Odkaz na video", + required=False, + ), + ), + ( + "video_id", + wagtail.blocks.CharBlock( + help_text="Není třeba vyplňovat, bude automaticky načteno z odkazu.", + label="ID videa (automatické pole)", + required=False, + ), + ), + ] + ), + ), + ( + "map_point", + wagtail.blocks.StructBlock( + [ + ( + "lat", + wagtail.blocks.DecimalBlock( + help_text="Např. 50.04075", + label="Zeměpisná šířka", + ), + ), + ( + "lon", + wagtail.blocks.DecimalBlock( + help_text="Např. 15.77659", + label="Zeměpisná délka", + ), + ), + ( + "hex_color", + wagtail.blocks.CharBlock( + default="000000", + help_text="Zadejte barvu pomocí HEX notace (bez # na začátku).", + label="Barva špendlíku (HEX)", + ), + ), + ( + "zoom", + wagtail.blocks.IntegerBlock( + default=15, + label="Výchozí zoom", + max_value=18, + min_value=1, + ), + ), + ( + "style", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "osm-mapnik", + "OSM Mapnik", + ), + ( + "stadia-osm-bright", + "Stadia OSM Bright", + ), + ( + "stadia-outdoors", + "Stadia Outdoors", + ), + ( + "mapbox-streets", + "Mapbox Streets", + ), + ( + "mapbox-outdoors", + "Mapbox Outdoors", + ), + ( + "mapbox-light", + "Mapbox Light", + ), + ( + "mapbox-dark", + "Mapbox Dark", + ), + ( + "mapbox-satellite", + "Mapbox Satellite", + ), + ( + "mapbox-pirate", + "Mapbox Pirate Theme", + ), + ], + label="Styl", + ), + ), + ( + "height", + wagtail.blocks.IntegerBlock( + label="Výška v px", + max_value=1000, + min_value=100, + ), + ), + ], + label="Špendlík na mapě", + ), + ), + ( + "map_collection", + wagtail.blocks.StructBlock( + [ + ( + "features", + wagtail.blocks.ListBlock( + wagtail.blocks.StructBlock( + [ + ( + "title", + wagtail.blocks.CharBlock( + label="Titulek", + required=True, + ), + ), + ( + "description", + wagtail.blocks.TextBlock( + label="Popisek", + required=False, + ), + ), + ( + "geojson", + wagtail.blocks.TextBlock( + help_text="Vložte surový GeoJSON objekt typu 'Feature'. Vyrobit jej můžete např. pomocí online služby geojson.io. Pokud u objektu poskytnete properties 'title' a 'description', zobrazí se jak na mapě, tak i v detailu.", + label="Geodata", + required=True, + ), + ), + ( + "image", + wagtail.images.blocks.ImageChooserBlock( + label="Obrázek", + required=False, + ), + ), + ( + "link", + wagtail.blocks.URLBlock( + label="Odkaz", + required=False, + ), + ), + ( + "hex_color", + wagtail.blocks.CharBlock( + default="000000", + help_text="Zadejte barvu pomocí HEX notace (bez # na začátku).", + label="Barva (HEX)", + ), + ), + ], + required=True, + ), + label="Součásti", + ), + ), + ( + "zoom", + wagtail.blocks.IntegerBlock( + default=15, + label="Výchozí zoom", + max_value=18, + min_value=1, + ), + ), + ( + "style", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "osm-mapnik", + "OSM Mapnik", + ), + ( + "stadia-osm-bright", + "Stadia OSM Bright", + ), + ( + "stadia-outdoors", + "Stadia Outdoors", + ), + ( + "mapbox-streets", + "Mapbox Streets", + ), + ( + "mapbox-outdoors", + "Mapbox Outdoors", + ), + ( + "mapbox-light", + "Mapbox Light", + ), + ( + "mapbox-dark", + "Mapbox Dark", + ), + ( + "mapbox-satellite", + "Mapbox Satellite", + ), + ( + "mapbox-pirate", + "Mapbox Pirate Theme", + ), + ], + label="Styl", + ), + ), + ( + "height", + wagtail.blocks.IntegerBlock( + label="Výška v px", + max_value=1000, + min_value=100, + ), + ), + ], + label="Mapová kolekce", + ), + ), + ], + label="Obsah", + required=False, + ), + ), + ( + "page", + wagtail.blocks.PageChooserBlock( + label="Stránka", required=False + ), + ), + ( + "link", + wagtail.blocks.URLBlock( + label="Odkaz", required=False + ), + ), + ] + ), + ), + ( + "two_columns", + wagtail.blocks.StructBlock( + [ + ( + "left_column_content", + wagtail.blocks.StreamBlock( + [ + ( + "text", + wagtail.blocks.RichTextBlock( + features=[ + "h2", + "h3", + "h4", + "h5", + "bold", + "italic", + "ol", + "ul", + "hr", + "link", + "document-link", + "image", + "superscript", + "subscript", + "strikethrough", + "blockquote", + "embed", + ], + label="Textový editor", + ), + ), + ( + "table", + wagtail.contrib.table_block.blocks.TableBlock( + template="shared/blocks/table_block.html" + ), + ), + ( + "card", + wagtail.blocks.StructBlock( + [ + ( + "img", + wagtail.images.blocks.ImageChooserBlock( + label="Obrázek", + required=False, + ), + ), + ( + "elevation", + wagtail.blocks.IntegerBlock( + default=2, + help_text="0 = žádný stín, 21 = maximální stín", + label="Velikost stínu", + max_value=21, + min_value=0, + ), + ), + ( + "headline", + wagtail.blocks.TextBlock( + label="Titulek", + required=False, + ), + ), + ( + "hoveractive", + wagtail.blocks.BooleanBlock( + default=False, + help_text="Pokud je zapnuto, stín se zvýrazní, když na kartu uživatel najede myší.", + label="Zvýraznit stín na hover", + required=False, + ), + ), + ( + "content", + wagtail.blocks.StreamBlock( + [ + ( + "text", + wagtail.blocks.RichTextBlock( + features=[ + "h2", + "h3", + "h4", + "h5", + "bold", + "italic", + "ol", + "ul", + "hr", + "link", + "document-link", + "image", + "superscript", + "subscript", + "strikethrough", + "blockquote", + "embed", + ], + label="Textový editor", + ), + ), + ( + "table", + wagtail.contrib.table_block.blocks.TableBlock( + template="shared/blocks/table_block.html" + ), + ), + ( + "figure", + wagtail.blocks.StructBlock( + [ + ( + "img", + wagtail.images.blocks.ImageChooserBlock( + label="Obrázek", + required=True, + ), + ), + ( + "caption", + wagtail.blocks.TextBlock( + label="Popisek", + required=False, + ), + ), + ] + ), + ), + ( + "youtube", + wagtail.blocks.StructBlock( + [ + ( + "poster_image", + wagtail.images.blocks.ImageChooserBlock( + help_text="Není třeba vyplňovat, náhled bude dohledán automaticky.", + label="Náhled videa (automatické pole)", + required=False, + ), + ), + ( + "video_url", + wagtail.blocks.URLBlock( + help_text="Odkaz na YouTube video bude automaticky zkonvertován na ID videa a NEBUDE uložen.", + label="Odkaz na video", + required=False, + ), + ), + ( + "video_id", + wagtail.blocks.CharBlock( + help_text="Není třeba vyplňovat, bude automaticky načteno z odkazu.", + label="ID videa (automatické pole)", + required=False, + ), + ), + ] + ), + ), + ( + "map_point", + wagtail.blocks.StructBlock( + [ + ( + "lat", + wagtail.blocks.DecimalBlock( + help_text="Např. 50.04075", + label="Zeměpisná šířka", + ), + ), + ( + "lon", + wagtail.blocks.DecimalBlock( + help_text="Např. 15.77659", + label="Zeměpisná délka", + ), + ), + ( + "hex_color", + wagtail.blocks.CharBlock( + default="000000", + help_text="Zadejte barvu pomocí HEX notace (bez # na začátku).", + label="Barva špendlíku (HEX)", + ), + ), + ( + "zoom", + wagtail.blocks.IntegerBlock( + default=15, + label="Výchozí zoom", + max_value=18, + min_value=1, + ), + ), + ( + "style", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "osm-mapnik", + "OSM Mapnik", + ), + ( + "stadia-osm-bright", + "Stadia OSM Bright", + ), + ( + "stadia-outdoors", + "Stadia Outdoors", + ), + ( + "mapbox-streets", + "Mapbox Streets", + ), + ( + "mapbox-outdoors", + "Mapbox Outdoors", + ), + ( + "mapbox-light", + "Mapbox Light", + ), + ( + "mapbox-dark", + "Mapbox Dark", + ), + ( + "mapbox-satellite", + "Mapbox Satellite", + ), + ( + "mapbox-pirate", + "Mapbox Pirate Theme", + ), + ], + label="Styl", + ), + ), + ( + "height", + wagtail.blocks.IntegerBlock( + label="Výška v px", + max_value=1000, + min_value=100, + ), + ), + ], + label="Špendlík na mapě", + ), + ), + ( + "map_collection", + wagtail.blocks.StructBlock( + [ + ( + "features", + wagtail.blocks.ListBlock( + wagtail.blocks.StructBlock( + [ + ( + "title", + wagtail.blocks.CharBlock( + label="Titulek", + required=True, + ), + ), + ( + "description", + wagtail.blocks.TextBlock( + label="Popisek", + required=False, + ), + ), + ( + "geojson", + wagtail.blocks.TextBlock( + help_text="Vložte surový GeoJSON objekt typu 'Feature'. Vyrobit jej můžete např. pomocí online služby geojson.io. Pokud u objektu poskytnete properties 'title' a 'description', zobrazí se jak na mapě, tak i v detailu.", + label="Geodata", + required=True, + ), + ), + ( + "image", + wagtail.images.blocks.ImageChooserBlock( + label="Obrázek", + required=False, + ), + ), + ( + "link", + wagtail.blocks.URLBlock( + label="Odkaz", + required=False, + ), + ), + ( + "hex_color", + wagtail.blocks.CharBlock( + default="000000", + help_text="Zadejte barvu pomocí HEX notace (bez # na začátku).", + label="Barva (HEX)", + ), + ), + ], + required=True, + ), + label="Součásti", + ), + ), + ( + "zoom", + wagtail.blocks.IntegerBlock( + default=15, + label="Výchozí zoom", + max_value=18, + min_value=1, + ), + ), + ( + "style", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "osm-mapnik", + "OSM Mapnik", + ), + ( + "stadia-osm-bright", + "Stadia OSM Bright", + ), + ( + "stadia-outdoors", + "Stadia Outdoors", + ), + ( + "mapbox-streets", + "Mapbox Streets", + ), + ( + "mapbox-outdoors", + "Mapbox Outdoors", + ), + ( + "mapbox-light", + "Mapbox Light", + ), + ( + "mapbox-dark", + "Mapbox Dark", + ), + ( + "mapbox-satellite", + "Mapbox Satellite", + ), + ( + "mapbox-pirate", + "Mapbox Pirate Theme", + ), + ], + label="Styl", + ), + ), + ( + "height", + wagtail.blocks.IntegerBlock( + label="Výška v px", + max_value=1000, + min_value=100, + ), + ), + ], + label="Mapová kolekce", + ), + ), + ], + label="Obsah", + required=False, + ), + ), + ( + "page", + wagtail.blocks.PageChooserBlock( + label="Stránka", + required=False, + ), + ), + ( + "link", + wagtail.blocks.URLBlock( + label="Odkaz", + required=False, + ), + ), + ] + ), + ), + ( + "figure", + wagtail.blocks.StructBlock( + [ + ( + "img", + wagtail.images.blocks.ImageChooserBlock( + label="Obrázek", + required=True, + ), + ), + ( + "caption", + wagtail.blocks.TextBlock( + label="Popisek", + required=False, + ), + ), + ] + ), + ), + ( + "youtube", + wagtail.blocks.StructBlock( + [ + ( + "poster_image", + wagtail.images.blocks.ImageChooserBlock( + help_text="Není třeba vyplňovat, náhled bude dohledán automaticky.", + label="Náhled videa (automatické pole)", + required=False, + ), + ), + ( + "video_url", + wagtail.blocks.URLBlock( + help_text="Odkaz na YouTube video bude automaticky zkonvertován na ID videa a NEBUDE uložen.", + label="Odkaz na video", + required=False, + ), + ), + ( + "video_id", + wagtail.blocks.CharBlock( + help_text="Není třeba vyplňovat, bude automaticky načteno z odkazu.", + label="ID videa (automatické pole)", + required=False, + ), + ), + ] + ), + ), + ( + "map_point", + wagtail.blocks.StructBlock( + [ + ( + "lat", + wagtail.blocks.DecimalBlock( + help_text="Např. 50.04075", + label="Zeměpisná šířka", + ), + ), + ( + "lon", + wagtail.blocks.DecimalBlock( + help_text="Např. 15.77659", + label="Zeměpisná délka", + ), + ), + ( + "hex_color", + wagtail.blocks.CharBlock( + default="000000", + help_text="Zadejte barvu pomocí HEX notace (bez # na začátku).", + label="Barva špendlíku (HEX)", + ), + ), + ( + "zoom", + wagtail.blocks.IntegerBlock( + default=15, + label="Výchozí zoom", + max_value=18, + min_value=1, + ), + ), + ( + "style", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "osm-mapnik", + "OSM Mapnik", + ), + ( + "stadia-osm-bright", + "Stadia OSM Bright", + ), + ( + "stadia-outdoors", + "Stadia Outdoors", + ), + ( + "mapbox-streets", + "Mapbox Streets", + ), + ( + "mapbox-outdoors", + "Mapbox Outdoors", + ), + ( + "mapbox-light", + "Mapbox Light", + ), + ( + "mapbox-dark", + "Mapbox Dark", + ), + ( + "mapbox-satellite", + "Mapbox Satellite", + ), + ( + "mapbox-pirate", + "Mapbox Pirate Theme", + ), + ], + label="Styl", + ), + ), + ( + "height", + wagtail.blocks.IntegerBlock( + label="Výška v px", + max_value=1000, + min_value=100, + ), + ), + ], + label="Špendlík na mapě", + ), + ), + ( + "map_collection", + wagtail.blocks.StructBlock( + [ + ( + "features", + wagtail.blocks.ListBlock( + wagtail.blocks.StructBlock( + [ + ( + "title", + wagtail.blocks.CharBlock( + label="Titulek", + required=True, + ), + ), + ( + "description", + wagtail.blocks.TextBlock( + label="Popisek", + required=False, + ), + ), + ( + "geojson", + wagtail.blocks.TextBlock( + help_text="Vložte surový GeoJSON objekt typu 'Feature'. Vyrobit jej můžete např. pomocí online služby geojson.io. Pokud u objektu poskytnete properties 'title' a 'description', zobrazí se jak na mapě, tak i v detailu.", + label="Geodata", + required=True, + ), + ), + ( + "image", + wagtail.images.blocks.ImageChooserBlock( + label="Obrázek", + required=False, + ), + ), + ( + "link", + wagtail.blocks.URLBlock( + label="Odkaz", + required=False, + ), + ), + ( + "hex_color", + wagtail.blocks.CharBlock( + default="000000", + help_text="Zadejte barvu pomocí HEX notace (bez # na začátku).", + label="Barva (HEX)", + ), + ), + ], + required=True, + ), + label="Součásti", + ), + ), + ( + "zoom", + wagtail.blocks.IntegerBlock( + default=15, + label="Výchozí zoom", + max_value=18, + min_value=1, + ), + ), + ( + "style", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "osm-mapnik", + "OSM Mapnik", + ), + ( + "stadia-osm-bright", + "Stadia OSM Bright", + ), + ( + "stadia-outdoors", + "Stadia Outdoors", + ), + ( + "mapbox-streets", + "Mapbox Streets", + ), + ( + "mapbox-outdoors", + "Mapbox Outdoors", + ), + ( + "mapbox-light", + "Mapbox Light", + ), + ( + "mapbox-dark", + "Mapbox Dark", + ), + ( + "mapbox-satellite", + "Mapbox Satellite", + ), + ( + "mapbox-pirate", + "Mapbox Pirate Theme", + ), + ], + label="Styl", + ), + ), + ( + "height", + wagtail.blocks.IntegerBlock( + label="Výška v px", + max_value=1000, + min_value=100, + ), + ), + ], + label="Mapová kolekce", + ), + ), + ( + "button", + wagtail.blocks.StructBlock( + [ + ( + "title", + wagtail.blocks.CharBlock( + label="Titulek", + max_length=128, + required=True, + ), + ), + ( + "icon", + wagtail.blocks.CharBlock( + help_text="Identifikátor ikonky ze styleguide (https://styleguide.pirati.cz/latest/?p=viewall-atoms-icons), např. ico--key.", + label="Ikonka", + max_length=128, + required=False, + ), + ), + ( + "size", + wagtail.blocks.ChoiceBlock( + choices=[ + ("sm", "Malá"), + ("base", "Střední"), + ("lg", "Velká"), + ], + label="Velikost", + ), + ), + ( + "color", + wagtail.blocks.ChoiceBlock( + choices=[ + ("black", "Černá"), + ("white", "Bílá"), + ( + "grey-125", + "Světle šedá", + ), + ( + "blue-300", + "Modrá", + ), + ( + "cyan-200", + "Tyrkysová", + ), + ( + "green-400", + "Zelené", + ), + ( + "violet-400", + "Vínová", + ), + ( + "red-600", + "Červená", + ), + ], + label="Barva", + ), + ), + ( + "hoveractive", + wagtail.blocks.BooleanBlock( + default=True, + help_text="Pokud je zapnuto, tlačítko mění barvu, když na něj uživatel najede myší.", + label="Animovat na hover", + required=False, + ), + ), + ( + "mobile_fullwidth", + wagtail.blocks.BooleanBlock( + default=True, + help_text="Pokud je zapnuto, tlačítko se na mobilních zařízeních roztáhne na plnou šířku.", + label="Plná šířka na mobilních zařízeních", + required=False, + ), + ), + ( + "page", + wagtail.blocks.PageChooserBlock( + label="Stránka", + required=False, + ), + ), + ( + "link", + wagtail.blocks.URLBlock( + label="Odkaz", + required=False, + ), + ), + ( + "align", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "auto", + "Automaticky", + ), + ( + "center", + "Na střed", + ), + ], + label="Zarovnání", + ), + ), + ] + ), + ), + ( + "button_group", + wagtail.blocks.StructBlock( + [ + ( + "buttons", + wagtail.blocks.ListBlock( + wagtail.blocks.StructBlock( + [ + ( + "title", + wagtail.blocks.CharBlock( + label="Titulek", + max_length=128, + required=True, + ), + ), + ( + "icon", + wagtail.blocks.CharBlock( + help_text="Identifikátor ikonky ze styleguide (https://styleguide.pirati.cz/latest/?p=viewall-atoms-icons), např. ico--key.", + label="Ikonka", + max_length=128, + required=False, + ), + ), + ( + "size", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "sm", + "Malá", + ), + ( + "base", + "Střední", + ), + ( + "lg", + "Velká", + ), + ], + label="Velikost", + ), + ), + ( + "color", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "black", + "Černá", + ), + ( + "white", + "Bílá", + ), + ( + "grey-125", + "Světle šedá", + ), + ( + "blue-300", + "Modrá", + ), + ( + "cyan-200", + "Tyrkysová", + ), + ( + "green-400", + "Zelené", + ), + ( + "violet-400", + "Vínová", + ), + ( + "red-600", + "Červená", + ), + ], + label="Barva", + ), + ), + ( + "hoveractive", + wagtail.blocks.BooleanBlock( + default=True, + help_text="Pokud je zapnuto, tlačítko mění barvu, když na něj uživatel najede myší.", + label="Animovat na hover", + required=False, + ), + ), + ( + "mobile_fullwidth", + wagtail.blocks.BooleanBlock( + default=True, + help_text="Pokud je zapnuto, tlačítko se na mobilních zařízeních roztáhne na plnou šířku.", + label="Plná šířka na mobilních zařízeních", + required=False, + ), + ), + ( + "page", + wagtail.blocks.PageChooserBlock( + label="Stránka", + required=False, + ), + ), + ( + "link", + wagtail.blocks.URLBlock( + label="Odkaz", + required=False, + ), + ), + ( + "align", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "auto", + "Automaticky", + ), + ( + "center", + "Na střed", + ), + ], + label="Zarovnání", + ), + ), + ] + ), + label="Tlačítka", + ), + ) + ] + ), + ), + ], + label="Obsah levého sloupce", + required=True, + ), + ), + ( + "right_column_content", + wagtail.blocks.StreamBlock( + [ + ( + "text", + wagtail.blocks.RichTextBlock( + features=[ + "h2", + "h3", + "h4", + "h5", + "bold", + "italic", + "ol", + "ul", + "hr", + "link", + "document-link", + "image", + "superscript", + "subscript", + "strikethrough", + "blockquote", + "embed", + ], + label="Textový editor", + ), + ), + ( + "table", + wagtail.contrib.table_block.blocks.TableBlock( + template="shared/blocks/table_block.html" + ), + ), + ( + "card", + wagtail.blocks.StructBlock( + [ + ( + "img", + wagtail.images.blocks.ImageChooserBlock( + label="Obrázek", + required=False, + ), + ), + ( + "elevation", + wagtail.blocks.IntegerBlock( + default=2, + help_text="0 = žádný stín, 21 = maximální stín", + label="Velikost stínu", + max_value=21, + min_value=0, + ), + ), + ( + "headline", + wagtail.blocks.TextBlock( + label="Titulek", + required=False, + ), + ), + ( + "hoveractive", + wagtail.blocks.BooleanBlock( + default=False, + help_text="Pokud je zapnuto, stín se zvýrazní, když na kartu uživatel najede myší.", + label="Zvýraznit stín na hover", + required=False, + ), + ), + ( + "content", + wagtail.blocks.StreamBlock( + [ + ( + "text", + wagtail.blocks.RichTextBlock( + features=[ + "h2", + "h3", + "h4", + "h5", + "bold", + "italic", + "ol", + "ul", + "hr", + "link", + "document-link", + "image", + "superscript", + "subscript", + "strikethrough", + "blockquote", + "embed", + ], + label="Textový editor", + ), + ), + ( + "table", + wagtail.contrib.table_block.blocks.TableBlock( + template="shared/blocks/table_block.html" + ), + ), + ( + "figure", + wagtail.blocks.StructBlock( + [ + ( + "img", + wagtail.images.blocks.ImageChooserBlock( + label="Obrázek", + required=True, + ), + ), + ( + "caption", + wagtail.blocks.TextBlock( + label="Popisek", + required=False, + ), + ), + ] + ), + ), + ( + "youtube", + wagtail.blocks.StructBlock( + [ + ( + "poster_image", + wagtail.images.blocks.ImageChooserBlock( + help_text="Není třeba vyplňovat, náhled bude dohledán automaticky.", + label="Náhled videa (automatické pole)", + required=False, + ), + ), + ( + "video_url", + wagtail.blocks.URLBlock( + help_text="Odkaz na YouTube video bude automaticky zkonvertován na ID videa a NEBUDE uložen.", + label="Odkaz na video", + required=False, + ), + ), + ( + "video_id", + wagtail.blocks.CharBlock( + help_text="Není třeba vyplňovat, bude automaticky načteno z odkazu.", + label="ID videa (automatické pole)", + required=False, + ), + ), + ] + ), + ), + ( + "map_point", + wagtail.blocks.StructBlock( + [ + ( + "lat", + wagtail.blocks.DecimalBlock( + help_text="Např. 50.04075", + label="Zeměpisná šířka", + ), + ), + ( + "lon", + wagtail.blocks.DecimalBlock( + help_text="Např. 15.77659", + label="Zeměpisná délka", + ), + ), + ( + "hex_color", + wagtail.blocks.CharBlock( + default="000000", + help_text="Zadejte barvu pomocí HEX notace (bez # na začátku).", + label="Barva špendlíku (HEX)", + ), + ), + ( + "zoom", + wagtail.blocks.IntegerBlock( + default=15, + label="Výchozí zoom", + max_value=18, + min_value=1, + ), + ), + ( + "style", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "osm-mapnik", + "OSM Mapnik", + ), + ( + "stadia-osm-bright", + "Stadia OSM Bright", + ), + ( + "stadia-outdoors", + "Stadia Outdoors", + ), + ( + "mapbox-streets", + "Mapbox Streets", + ), + ( + "mapbox-outdoors", + "Mapbox Outdoors", + ), + ( + "mapbox-light", + "Mapbox Light", + ), + ( + "mapbox-dark", + "Mapbox Dark", + ), + ( + "mapbox-satellite", + "Mapbox Satellite", + ), + ( + "mapbox-pirate", + "Mapbox Pirate Theme", + ), + ], + label="Styl", + ), + ), + ( + "height", + wagtail.blocks.IntegerBlock( + label="Výška v px", + max_value=1000, + min_value=100, + ), + ), + ], + label="Špendlík na mapě", + ), + ), + ( + "map_collection", + wagtail.blocks.StructBlock( + [ + ( + "features", + wagtail.blocks.ListBlock( + wagtail.blocks.StructBlock( + [ + ( + "title", + wagtail.blocks.CharBlock( + label="Titulek", + required=True, + ), + ), + ( + "description", + wagtail.blocks.TextBlock( + label="Popisek", + required=False, + ), + ), + ( + "geojson", + wagtail.blocks.TextBlock( + help_text="Vložte surový GeoJSON objekt typu 'Feature'. Vyrobit jej můžete např. pomocí online služby geojson.io. Pokud u objektu poskytnete properties 'title' a 'description', zobrazí se jak na mapě, tak i v detailu.", + label="Geodata", + required=True, + ), + ), + ( + "image", + wagtail.images.blocks.ImageChooserBlock( + label="Obrázek", + required=False, + ), + ), + ( + "link", + wagtail.blocks.URLBlock( + label="Odkaz", + required=False, + ), + ), + ( + "hex_color", + wagtail.blocks.CharBlock( + default="000000", + help_text="Zadejte barvu pomocí HEX notace (bez # na začátku).", + label="Barva (HEX)", + ), + ), + ], + required=True, + ), + label="Součásti", + ), + ), + ( + "zoom", + wagtail.blocks.IntegerBlock( + default=15, + label="Výchozí zoom", + max_value=18, + min_value=1, + ), + ), + ( + "style", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "osm-mapnik", + "OSM Mapnik", + ), + ( + "stadia-osm-bright", + "Stadia OSM Bright", + ), + ( + "stadia-outdoors", + "Stadia Outdoors", + ), + ( + "mapbox-streets", + "Mapbox Streets", + ), + ( + "mapbox-outdoors", + "Mapbox Outdoors", + ), + ( + "mapbox-light", + "Mapbox Light", + ), + ( + "mapbox-dark", + "Mapbox Dark", + ), + ( + "mapbox-satellite", + "Mapbox Satellite", + ), + ( + "mapbox-pirate", + "Mapbox Pirate Theme", + ), + ], + label="Styl", + ), + ), + ( + "height", + wagtail.blocks.IntegerBlock( + label="Výška v px", + max_value=1000, + min_value=100, + ), + ), + ], + label="Mapová kolekce", + ), + ), + ], + label="Obsah", + required=False, + ), + ), + ( + "page", + wagtail.blocks.PageChooserBlock( + label="Stránka", + required=False, + ), + ), + ( + "link", + wagtail.blocks.URLBlock( + label="Odkaz", + required=False, + ), + ), + ] + ), + ), + ( + "figure", + wagtail.blocks.StructBlock( + [ + ( + "img", + wagtail.images.blocks.ImageChooserBlock( + label="Obrázek", + required=True, + ), + ), + ( + "caption", + wagtail.blocks.TextBlock( + label="Popisek", + required=False, + ), + ), + ] + ), + ), + ( + "youtube", + wagtail.blocks.StructBlock( + [ + ( + "poster_image", + wagtail.images.blocks.ImageChooserBlock( + help_text="Není třeba vyplňovat, náhled bude dohledán automaticky.", + label="Náhled videa (automatické pole)", + required=False, + ), + ), + ( + "video_url", + wagtail.blocks.URLBlock( + help_text="Odkaz na YouTube video bude automaticky zkonvertován na ID videa a NEBUDE uložen.", + label="Odkaz na video", + required=False, + ), + ), + ( + "video_id", + wagtail.blocks.CharBlock( + help_text="Není třeba vyplňovat, bude automaticky načteno z odkazu.", + label="ID videa (automatické pole)", + required=False, + ), + ), + ] + ), + ), + ( + "map_point", + wagtail.blocks.StructBlock( + [ + ( + "lat", + wagtail.blocks.DecimalBlock( + help_text="Např. 50.04075", + label="Zeměpisná šířka", + ), + ), + ( + "lon", + wagtail.blocks.DecimalBlock( + help_text="Např. 15.77659", + label="Zeměpisná délka", + ), + ), + ( + "hex_color", + wagtail.blocks.CharBlock( + default="000000", + help_text="Zadejte barvu pomocí HEX notace (bez # na začátku).", + label="Barva špendlíku (HEX)", + ), + ), + ( + "zoom", + wagtail.blocks.IntegerBlock( + default=15, + label="Výchozí zoom", + max_value=18, + min_value=1, + ), + ), + ( + "style", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "osm-mapnik", + "OSM Mapnik", + ), + ( + "stadia-osm-bright", + "Stadia OSM Bright", + ), + ( + "stadia-outdoors", + "Stadia Outdoors", + ), + ( + "mapbox-streets", + "Mapbox Streets", + ), + ( + "mapbox-outdoors", + "Mapbox Outdoors", + ), + ( + "mapbox-light", + "Mapbox Light", + ), + ( + "mapbox-dark", + "Mapbox Dark", + ), + ( + "mapbox-satellite", + "Mapbox Satellite", + ), + ( + "mapbox-pirate", + "Mapbox Pirate Theme", + ), + ], + label="Styl", + ), + ), + ( + "height", + wagtail.blocks.IntegerBlock( + label="Výška v px", + max_value=1000, + min_value=100, + ), + ), + ], + label="Špendlík na mapě", + ), + ), + ( + "map_collection", + wagtail.blocks.StructBlock( + [ + ( + "features", + wagtail.blocks.ListBlock( + wagtail.blocks.StructBlock( + [ + ( + "title", + wagtail.blocks.CharBlock( + label="Titulek", + required=True, + ), + ), + ( + "description", + wagtail.blocks.TextBlock( + label="Popisek", + required=False, + ), + ), + ( + "geojson", + wagtail.blocks.TextBlock( + help_text="Vložte surový GeoJSON objekt typu 'Feature'. Vyrobit jej můžete např. pomocí online služby geojson.io. Pokud u objektu poskytnete properties 'title' a 'description', zobrazí se jak na mapě, tak i v detailu.", + label="Geodata", + required=True, + ), + ), + ( + "image", + wagtail.images.blocks.ImageChooserBlock( + label="Obrázek", + required=False, + ), + ), + ( + "link", + wagtail.blocks.URLBlock( + label="Odkaz", + required=False, + ), + ), + ( + "hex_color", + wagtail.blocks.CharBlock( + default="000000", + help_text="Zadejte barvu pomocí HEX notace (bez # na začátku).", + label="Barva (HEX)", + ), + ), + ], + required=True, + ), + label="Součásti", + ), + ), + ( + "zoom", + wagtail.blocks.IntegerBlock( + default=15, + label="Výchozí zoom", + max_value=18, + min_value=1, + ), + ), + ( + "style", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "osm-mapnik", + "OSM Mapnik", + ), + ( + "stadia-osm-bright", + "Stadia OSM Bright", + ), + ( + "stadia-outdoors", + "Stadia Outdoors", + ), + ( + "mapbox-streets", + "Mapbox Streets", + ), + ( + "mapbox-outdoors", + "Mapbox Outdoors", + ), + ( + "mapbox-light", + "Mapbox Light", + ), + ( + "mapbox-dark", + "Mapbox Dark", + ), + ( + "mapbox-satellite", + "Mapbox Satellite", + ), + ( + "mapbox-pirate", + "Mapbox Pirate Theme", + ), + ], + label="Styl", + ), + ), + ( + "height", + wagtail.blocks.IntegerBlock( + label="Výška v px", + max_value=1000, + min_value=100, + ), + ), + ], + label="Mapová kolekce", + ), + ), + ( + "button", + wagtail.blocks.StructBlock( + [ + ( + "title", + wagtail.blocks.CharBlock( + label="Titulek", + max_length=128, + required=True, + ), + ), + ( + "icon", + wagtail.blocks.CharBlock( + help_text="Identifikátor ikonky ze styleguide (https://styleguide.pirati.cz/latest/?p=viewall-atoms-icons), např. ico--key.", + label="Ikonka", + max_length=128, + required=False, + ), + ), + ( + "size", + wagtail.blocks.ChoiceBlock( + choices=[ + ("sm", "Malá"), + ("base", "Střední"), + ("lg", "Velká"), + ], + label="Velikost", + ), + ), + ( + "color", + wagtail.blocks.ChoiceBlock( + choices=[ + ("black", "Černá"), + ("white", "Bílá"), + ( + "grey-125", + "Světle šedá", + ), + ( + "blue-300", + "Modrá", + ), + ( + "cyan-200", + "Tyrkysová", + ), + ( + "green-400", + "Zelené", + ), + ( + "violet-400", + "Vínová", + ), + ( + "red-600", + "Červená", + ), + ], + label="Barva", + ), + ), + ( + "hoveractive", + wagtail.blocks.BooleanBlock( + default=True, + help_text="Pokud je zapnuto, tlačítko mění barvu, když na něj uživatel najede myší.", + label="Animovat na hover", + required=False, + ), + ), + ( + "mobile_fullwidth", + wagtail.blocks.BooleanBlock( + default=True, + help_text="Pokud je zapnuto, tlačítko se na mobilních zařízeních roztáhne na plnou šířku.", + label="Plná šířka na mobilních zařízeních", + required=False, + ), + ), + ( + "page", + wagtail.blocks.PageChooserBlock( + label="Stránka", + required=False, + ), + ), + ( + "link", + wagtail.blocks.URLBlock( + label="Odkaz", + required=False, + ), + ), + ( + "align", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "auto", + "Automaticky", + ), + ( + "center", + "Na střed", + ), + ], + label="Zarovnání", + ), + ), + ] + ), + ), + ( + "button_group", + wagtail.blocks.StructBlock( + [ + ( + "buttons", + wagtail.blocks.ListBlock( + wagtail.blocks.StructBlock( + [ + ( + "title", + wagtail.blocks.CharBlock( + label="Titulek", + max_length=128, + required=True, + ), + ), + ( + "icon", + wagtail.blocks.CharBlock( + help_text="Identifikátor ikonky ze styleguide (https://styleguide.pirati.cz/latest/?p=viewall-atoms-icons), např. ico--key.", + label="Ikonka", + max_length=128, + required=False, + ), + ), + ( + "size", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "sm", + "Malá", + ), + ( + "base", + "Střední", + ), + ( + "lg", + "Velká", + ), + ], + label="Velikost", + ), + ), + ( + "color", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "black", + "Černá", + ), + ( + "white", + "Bílá", + ), + ( + "grey-125", + "Světle šedá", + ), + ( + "blue-300", + "Modrá", + ), + ( + "cyan-200", + "Tyrkysová", + ), + ( + "green-400", + "Zelené", + ), + ( + "violet-400", + "Vínová", + ), + ( + "red-600", + "Červená", + ), + ], + label="Barva", + ), + ), + ( + "hoveractive", + wagtail.blocks.BooleanBlock( + default=True, + help_text="Pokud je zapnuto, tlačítko mění barvu, když na něj uživatel najede myší.", + label="Animovat na hover", + required=False, + ), + ), + ( + "mobile_fullwidth", + wagtail.blocks.BooleanBlock( + default=True, + help_text="Pokud je zapnuto, tlačítko se na mobilních zařízeních roztáhne na plnou šířku.", + label="Plná šířka na mobilních zařízeních", + required=False, + ), + ), + ( + "page", + wagtail.blocks.PageChooserBlock( + label="Stránka", + required=False, + ), + ), + ( + "link", + wagtail.blocks.URLBlock( + label="Odkaz", + required=False, + ), + ), + ( + "align", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "auto", + "Automaticky", + ), + ( + "center", + "Na střed", + ), + ], + label="Zarovnání", + ), + ), + ] + ), + label="Tlačítka", + ), + ) + ] + ), + ), + ], + label="Obsah pravého sloupce", + required=True, + ), + ), + ] + ), + ), + ( + "three_columns", + wagtail.blocks.StructBlock( + [ + ( + "left_column_content", + wagtail.blocks.StreamBlock( + [ + ( + "text", + wagtail.blocks.RichTextBlock( + features=[ + "h2", + "h3", + "h4", + "h5", + "bold", + "italic", + "ol", + "ul", + "hr", + "link", + "document-link", + "image", + "superscript", + "subscript", + "strikethrough", + "blockquote", + "embed", + ], + label="Textový editor", + ), + ), + ( + "table", + wagtail.contrib.table_block.blocks.TableBlock( + template="shared/blocks/table_block.html" + ), + ), + ( + "card", + wagtail.blocks.StructBlock( + [ + ( + "img", + wagtail.images.blocks.ImageChooserBlock( + label="Obrázek", + required=False, + ), + ), + ( + "elevation", + wagtail.blocks.IntegerBlock( + default=2, + help_text="0 = žádný stín, 21 = maximální stín", + label="Velikost stínu", + max_value=21, + min_value=0, + ), + ), + ( + "headline", + wagtail.blocks.TextBlock( + label="Titulek", + required=False, + ), + ), + ( + "hoveractive", + wagtail.blocks.BooleanBlock( + default=False, + help_text="Pokud je zapnuto, stín se zvýrazní, když na kartu uživatel najede myší.", + label="Zvýraznit stín na hover", + required=False, + ), + ), + ( + "content", + wagtail.blocks.StreamBlock( + [ + ( + "text", + wagtail.blocks.RichTextBlock( + features=[ + "h2", + "h3", + "h4", + "h5", + "bold", + "italic", + "ol", + "ul", + "hr", + "link", + "document-link", + "image", + "superscript", + "subscript", + "strikethrough", + "blockquote", + "embed", + ], + label="Textový editor", + ), + ), + ( + "table", + wagtail.contrib.table_block.blocks.TableBlock( + template="shared/blocks/table_block.html" + ), + ), + ( + "figure", + wagtail.blocks.StructBlock( + [ + ( + "img", + wagtail.images.blocks.ImageChooserBlock( + label="Obrázek", + required=True, + ), + ), + ( + "caption", + wagtail.blocks.TextBlock( + label="Popisek", + required=False, + ), + ), + ] + ), + ), + ( + "youtube", + wagtail.blocks.StructBlock( + [ + ( + "poster_image", + wagtail.images.blocks.ImageChooserBlock( + help_text="Není třeba vyplňovat, náhled bude dohledán automaticky.", + label="Náhled videa (automatické pole)", + required=False, + ), + ), + ( + "video_url", + wagtail.blocks.URLBlock( + help_text="Odkaz na YouTube video bude automaticky zkonvertován na ID videa a NEBUDE uložen.", + label="Odkaz na video", + required=False, + ), + ), + ( + "video_id", + wagtail.blocks.CharBlock( + help_text="Není třeba vyplňovat, bude automaticky načteno z odkazu.", + label="ID videa (automatické pole)", + required=False, + ), + ), + ] + ), + ), + ( + "map_point", + wagtail.blocks.StructBlock( + [ + ( + "lat", + wagtail.blocks.DecimalBlock( + help_text="Např. 50.04075", + label="Zeměpisná šířka", + ), + ), + ( + "lon", + wagtail.blocks.DecimalBlock( + help_text="Např. 15.77659", + label="Zeměpisná délka", + ), + ), + ( + "hex_color", + wagtail.blocks.CharBlock( + default="000000", + help_text="Zadejte barvu pomocí HEX notace (bez # na začátku).", + label="Barva špendlíku (HEX)", + ), + ), + ( + "zoom", + wagtail.blocks.IntegerBlock( + default=15, + label="Výchozí zoom", + max_value=18, + min_value=1, + ), + ), + ( + "style", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "osm-mapnik", + "OSM Mapnik", + ), + ( + "stadia-osm-bright", + "Stadia OSM Bright", + ), + ( + "stadia-outdoors", + "Stadia Outdoors", + ), + ( + "mapbox-streets", + "Mapbox Streets", + ), + ( + "mapbox-outdoors", + "Mapbox Outdoors", + ), + ( + "mapbox-light", + "Mapbox Light", + ), + ( + "mapbox-dark", + "Mapbox Dark", + ), + ( + "mapbox-satellite", + "Mapbox Satellite", + ), + ( + "mapbox-pirate", + "Mapbox Pirate Theme", + ), + ], + label="Styl", + ), + ), + ( + "height", + wagtail.blocks.IntegerBlock( + label="Výška v px", + max_value=1000, + min_value=100, + ), + ), + ], + label="Špendlík na mapě", + ), + ), + ( + "map_collection", + wagtail.blocks.StructBlock( + [ + ( + "features", + wagtail.blocks.ListBlock( + wagtail.blocks.StructBlock( + [ + ( + "title", + wagtail.blocks.CharBlock( + label="Titulek", + required=True, + ), + ), + ( + "description", + wagtail.blocks.TextBlock( + label="Popisek", + required=False, + ), + ), + ( + "geojson", + wagtail.blocks.TextBlock( + help_text="Vložte surový GeoJSON objekt typu 'Feature'. Vyrobit jej můžete např. pomocí online služby geojson.io. Pokud u objektu poskytnete properties 'title' a 'description', zobrazí se jak na mapě, tak i v detailu.", + label="Geodata", + required=True, + ), + ), + ( + "image", + wagtail.images.blocks.ImageChooserBlock( + label="Obrázek", + required=False, + ), + ), + ( + "link", + wagtail.blocks.URLBlock( + label="Odkaz", + required=False, + ), + ), + ( + "hex_color", + wagtail.blocks.CharBlock( + default="000000", + help_text="Zadejte barvu pomocí HEX notace (bez # na začátku).", + label="Barva (HEX)", + ), + ), + ], + required=True, + ), + label="Součásti", + ), + ), + ( + "zoom", + wagtail.blocks.IntegerBlock( + default=15, + label="Výchozí zoom", + max_value=18, + min_value=1, + ), + ), + ( + "style", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "osm-mapnik", + "OSM Mapnik", + ), + ( + "stadia-osm-bright", + "Stadia OSM Bright", + ), + ( + "stadia-outdoors", + "Stadia Outdoors", + ), + ( + "mapbox-streets", + "Mapbox Streets", + ), + ( + "mapbox-outdoors", + "Mapbox Outdoors", + ), + ( + "mapbox-light", + "Mapbox Light", + ), + ( + "mapbox-dark", + "Mapbox Dark", + ), + ( + "mapbox-satellite", + "Mapbox Satellite", + ), + ( + "mapbox-pirate", + "Mapbox Pirate Theme", + ), + ], + label="Styl", + ), + ), + ( + "height", + wagtail.blocks.IntegerBlock( + label="Výška v px", + max_value=1000, + min_value=100, + ), + ), + ], + label="Mapová kolekce", + ), + ), + ], + label="Obsah", + required=False, + ), + ), + ( + "page", + wagtail.blocks.PageChooserBlock( + label="Stránka", + required=False, + ), + ), + ( + "link", + wagtail.blocks.URLBlock( + label="Odkaz", + required=False, + ), + ), + ] + ), + ), + ( + "figure", + wagtail.blocks.StructBlock( + [ + ( + "img", + wagtail.images.blocks.ImageChooserBlock( + label="Obrázek", + required=True, + ), + ), + ( + "caption", + wagtail.blocks.TextBlock( + label="Popisek", + required=False, + ), + ), + ] + ), + ), + ( + "youtube", + wagtail.blocks.StructBlock( + [ + ( + "poster_image", + wagtail.images.blocks.ImageChooserBlock( + help_text="Není třeba vyplňovat, náhled bude dohledán automaticky.", + label="Náhled videa (automatické pole)", + required=False, + ), + ), + ( + "video_url", + wagtail.blocks.URLBlock( + help_text="Odkaz na YouTube video bude automaticky zkonvertován na ID videa a NEBUDE uložen.", + label="Odkaz na video", + required=False, + ), + ), + ( + "video_id", + wagtail.blocks.CharBlock( + help_text="Není třeba vyplňovat, bude automaticky načteno z odkazu.", + label="ID videa (automatické pole)", + required=False, + ), + ), + ] + ), + ), + ( + "map_point", + wagtail.blocks.StructBlock( + [ + ( + "lat", + wagtail.blocks.DecimalBlock( + help_text="Např. 50.04075", + label="Zeměpisná šířka", + ), + ), + ( + "lon", + wagtail.blocks.DecimalBlock( + help_text="Např. 15.77659", + label="Zeměpisná délka", + ), + ), + ( + "hex_color", + wagtail.blocks.CharBlock( + default="000000", + help_text="Zadejte barvu pomocí HEX notace (bez # na začátku).", + label="Barva špendlíku (HEX)", + ), + ), + ( + "zoom", + wagtail.blocks.IntegerBlock( + default=15, + label="Výchozí zoom", + max_value=18, + min_value=1, + ), + ), + ( + "style", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "osm-mapnik", + "OSM Mapnik", + ), + ( + "stadia-osm-bright", + "Stadia OSM Bright", + ), + ( + "stadia-outdoors", + "Stadia Outdoors", + ), + ( + "mapbox-streets", + "Mapbox Streets", + ), + ( + "mapbox-outdoors", + "Mapbox Outdoors", + ), + ( + "mapbox-light", + "Mapbox Light", + ), + ( + "mapbox-dark", + "Mapbox Dark", + ), + ( + "mapbox-satellite", + "Mapbox Satellite", + ), + ( + "mapbox-pirate", + "Mapbox Pirate Theme", + ), + ], + label="Styl", + ), + ), + ( + "height", + wagtail.blocks.IntegerBlock( + label="Výška v px", + max_value=1000, + min_value=100, + ), + ), + ], + label="Špendlík na mapě", + ), + ), + ( + "map_collection", + wagtail.blocks.StructBlock( + [ + ( + "features", + wagtail.blocks.ListBlock( + wagtail.blocks.StructBlock( + [ + ( + "title", + wagtail.blocks.CharBlock( + label="Titulek", + required=True, + ), + ), + ( + "description", + wagtail.blocks.TextBlock( + label="Popisek", + required=False, + ), + ), + ( + "geojson", + wagtail.blocks.TextBlock( + help_text="Vložte surový GeoJSON objekt typu 'Feature'. Vyrobit jej můžete např. pomocí online služby geojson.io. Pokud u objektu poskytnete properties 'title' a 'description', zobrazí se jak na mapě, tak i v detailu.", + label="Geodata", + required=True, + ), + ), + ( + "image", + wagtail.images.blocks.ImageChooserBlock( + label="Obrázek", + required=False, + ), + ), + ( + "link", + wagtail.blocks.URLBlock( + label="Odkaz", + required=False, + ), + ), + ( + "hex_color", + wagtail.blocks.CharBlock( + default="000000", + help_text="Zadejte barvu pomocí HEX notace (bez # na začátku).", + label="Barva (HEX)", + ), + ), + ], + required=True, + ), + label="Součásti", + ), + ), + ( + "zoom", + wagtail.blocks.IntegerBlock( + default=15, + label="Výchozí zoom", + max_value=18, + min_value=1, + ), + ), + ( + "style", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "osm-mapnik", + "OSM Mapnik", + ), + ( + "stadia-osm-bright", + "Stadia OSM Bright", + ), + ( + "stadia-outdoors", + "Stadia Outdoors", + ), + ( + "mapbox-streets", + "Mapbox Streets", + ), + ( + "mapbox-outdoors", + "Mapbox Outdoors", + ), + ( + "mapbox-light", + "Mapbox Light", + ), + ( + "mapbox-dark", + "Mapbox Dark", + ), + ( + "mapbox-satellite", + "Mapbox Satellite", + ), + ( + "mapbox-pirate", + "Mapbox Pirate Theme", + ), + ], + label="Styl", + ), + ), + ( + "height", + wagtail.blocks.IntegerBlock( + label="Výška v px", + max_value=1000, + min_value=100, + ), + ), + ], + label="Mapová kolekce", + ), + ), + ( + "button", + wagtail.blocks.StructBlock( + [ + ( + "title", + wagtail.blocks.CharBlock( + label="Titulek", + max_length=128, + required=True, + ), + ), + ( + "icon", + wagtail.blocks.CharBlock( + help_text="Identifikátor ikonky ze styleguide (https://styleguide.pirati.cz/latest/?p=viewall-atoms-icons), např. ico--key.", + label="Ikonka", + max_length=128, + required=False, + ), + ), + ( + "size", + wagtail.blocks.ChoiceBlock( + choices=[ + ("sm", "Malá"), + ("base", "Střední"), + ("lg", "Velká"), + ], + label="Velikost", + ), + ), + ( + "color", + wagtail.blocks.ChoiceBlock( + choices=[ + ("black", "Černá"), + ("white", "Bílá"), + ( + "grey-125", + "Světle šedá", + ), + ( + "blue-300", + "Modrá", + ), + ( + "cyan-200", + "Tyrkysová", + ), + ( + "green-400", + "Zelené", + ), + ( + "violet-400", + "Vínová", + ), + ( + "red-600", + "Červená", + ), + ], + label="Barva", + ), + ), + ( + "hoveractive", + wagtail.blocks.BooleanBlock( + default=True, + help_text="Pokud je zapnuto, tlačítko mění barvu, když na něj uživatel najede myší.", + label="Animovat na hover", + required=False, + ), + ), + ( + "mobile_fullwidth", + wagtail.blocks.BooleanBlock( + default=True, + help_text="Pokud je zapnuto, tlačítko se na mobilních zařízeních roztáhne na plnou šířku.", + label="Plná šířka na mobilních zařízeních", + required=False, + ), + ), + ( + "page", + wagtail.blocks.PageChooserBlock( + label="Stránka", + required=False, + ), + ), + ( + "link", + wagtail.blocks.URLBlock( + label="Odkaz", + required=False, + ), + ), + ( + "align", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "auto", + "Automaticky", + ), + ( + "center", + "Na střed", + ), + ], + label="Zarovnání", + ), + ), + ] + ), + ), + ( + "button_group", + wagtail.blocks.StructBlock( + [ + ( + "buttons", + wagtail.blocks.ListBlock( + wagtail.blocks.StructBlock( + [ + ( + "title", + wagtail.blocks.CharBlock( + label="Titulek", + max_length=128, + required=True, + ), + ), + ( + "icon", + wagtail.blocks.CharBlock( + help_text="Identifikátor ikonky ze styleguide (https://styleguide.pirati.cz/latest/?p=viewall-atoms-icons), např. ico--key.", + label="Ikonka", + max_length=128, + required=False, + ), + ), + ( + "size", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "sm", + "Malá", + ), + ( + "base", + "Střední", + ), + ( + "lg", + "Velká", + ), + ], + label="Velikost", + ), + ), + ( + "color", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "black", + "Černá", + ), + ( + "white", + "Bílá", + ), + ( + "grey-125", + "Světle šedá", + ), + ( + "blue-300", + "Modrá", + ), + ( + "cyan-200", + "Tyrkysová", + ), + ( + "green-400", + "Zelené", + ), + ( + "violet-400", + "Vínová", + ), + ( + "red-600", + "Červená", + ), + ], + label="Barva", + ), + ), + ( + "hoveractive", + wagtail.blocks.BooleanBlock( + default=True, + help_text="Pokud je zapnuto, tlačítko mění barvu, když na něj uživatel najede myší.", + label="Animovat na hover", + required=False, + ), + ), + ( + "mobile_fullwidth", + wagtail.blocks.BooleanBlock( + default=True, + help_text="Pokud je zapnuto, tlačítko se na mobilních zařízeních roztáhne na plnou šířku.", + label="Plná šířka na mobilních zařízeních", + required=False, + ), + ), + ( + "page", + wagtail.blocks.PageChooserBlock( + label="Stránka", + required=False, + ), + ), + ( + "link", + wagtail.blocks.URLBlock( + label="Odkaz", + required=False, + ), + ), + ( + "align", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "auto", + "Automaticky", + ), + ( + "center", + "Na střed", + ), + ], + label="Zarovnání", + ), + ), + ] + ), + label="Tlačítka", + ), + ) + ] + ), + ), + ], + label="Obsah levého sloupce", + required=True, + ), + ), + ( + "middle_column_content", + wagtail.blocks.StreamBlock( + [ + ( + "text", + wagtail.blocks.RichTextBlock( + features=[ + "h2", + "h3", + "h4", + "h5", + "bold", + "italic", + "ol", + "ul", + "hr", + "link", + "document-link", + "image", + "superscript", + "subscript", + "strikethrough", + "blockquote", + "embed", + ], + label="Textový editor", + ), + ), + ( + "table", + wagtail.contrib.table_block.blocks.TableBlock( + template="shared/blocks/table_block.html" + ), + ), + ( + "card", + wagtail.blocks.StructBlock( + [ + ( + "img", + wagtail.images.blocks.ImageChooserBlock( + label="Obrázek", + required=False, + ), + ), + ( + "elevation", + wagtail.blocks.IntegerBlock( + default=2, + help_text="0 = žádný stín, 21 = maximální stín", + label="Velikost stínu", + max_value=21, + min_value=0, + ), + ), + ( + "headline", + wagtail.blocks.TextBlock( + label="Titulek", + required=False, + ), + ), + ( + "hoveractive", + wagtail.blocks.BooleanBlock( + default=False, + help_text="Pokud je zapnuto, stín se zvýrazní, když na kartu uživatel najede myší.", + label="Zvýraznit stín na hover", + required=False, + ), + ), + ( + "content", + wagtail.blocks.StreamBlock( + [ + ( + "text", + wagtail.blocks.RichTextBlock( + features=[ + "h2", + "h3", + "h4", + "h5", + "bold", + "italic", + "ol", + "ul", + "hr", + "link", + "document-link", + "image", + "superscript", + "subscript", + "strikethrough", + "blockquote", + "embed", + ], + label="Textový editor", + ), + ), + ( + "table", + wagtail.contrib.table_block.blocks.TableBlock( + template="shared/blocks/table_block.html" + ), + ), + ( + "figure", + wagtail.blocks.StructBlock( + [ + ( + "img", + wagtail.images.blocks.ImageChooserBlock( + label="Obrázek", + required=True, + ), + ), + ( + "caption", + wagtail.blocks.TextBlock( + label="Popisek", + required=False, + ), + ), + ] + ), + ), + ( + "youtube", + wagtail.blocks.StructBlock( + [ + ( + "poster_image", + wagtail.images.blocks.ImageChooserBlock( + help_text="Není třeba vyplňovat, náhled bude dohledán automaticky.", + label="Náhled videa (automatické pole)", + required=False, + ), + ), + ( + "video_url", + wagtail.blocks.URLBlock( + help_text="Odkaz na YouTube video bude automaticky zkonvertován na ID videa a NEBUDE uložen.", + label="Odkaz na video", + required=False, + ), + ), + ( + "video_id", + wagtail.blocks.CharBlock( + help_text="Není třeba vyplňovat, bude automaticky načteno z odkazu.", + label="ID videa (automatické pole)", + required=False, + ), + ), + ] + ), + ), + ( + "map_point", + wagtail.blocks.StructBlock( + [ + ( + "lat", + wagtail.blocks.DecimalBlock( + help_text="Např. 50.04075", + label="Zeměpisná šířka", + ), + ), + ( + "lon", + wagtail.blocks.DecimalBlock( + help_text="Např. 15.77659", + label="Zeměpisná délka", + ), + ), + ( + "hex_color", + wagtail.blocks.CharBlock( + default="000000", + help_text="Zadejte barvu pomocí HEX notace (bez # na začátku).", + label="Barva špendlíku (HEX)", + ), + ), + ( + "zoom", + wagtail.blocks.IntegerBlock( + default=15, + label="Výchozí zoom", + max_value=18, + min_value=1, + ), + ), + ( + "style", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "osm-mapnik", + "OSM Mapnik", + ), + ( + "stadia-osm-bright", + "Stadia OSM Bright", + ), + ( + "stadia-outdoors", + "Stadia Outdoors", + ), + ( + "mapbox-streets", + "Mapbox Streets", + ), + ( + "mapbox-outdoors", + "Mapbox Outdoors", + ), + ( + "mapbox-light", + "Mapbox Light", + ), + ( + "mapbox-dark", + "Mapbox Dark", + ), + ( + "mapbox-satellite", + "Mapbox Satellite", + ), + ( + "mapbox-pirate", + "Mapbox Pirate Theme", + ), + ], + label="Styl", + ), + ), + ( + "height", + wagtail.blocks.IntegerBlock( + label="Výška v px", + max_value=1000, + min_value=100, + ), + ), + ], + label="Špendlík na mapě", + ), + ), + ( + "map_collection", + wagtail.blocks.StructBlock( + [ + ( + "features", + wagtail.blocks.ListBlock( + wagtail.blocks.StructBlock( + [ + ( + "title", + wagtail.blocks.CharBlock( + label="Titulek", + required=True, + ), + ), + ( + "description", + wagtail.blocks.TextBlock( + label="Popisek", + required=False, + ), + ), + ( + "geojson", + wagtail.blocks.TextBlock( + help_text="Vložte surový GeoJSON objekt typu 'Feature'. Vyrobit jej můžete např. pomocí online služby geojson.io. Pokud u objektu poskytnete properties 'title' a 'description', zobrazí se jak na mapě, tak i v detailu.", + label="Geodata", + required=True, + ), + ), + ( + "image", + wagtail.images.blocks.ImageChooserBlock( + label="Obrázek", + required=False, + ), + ), + ( + "link", + wagtail.blocks.URLBlock( + label="Odkaz", + required=False, + ), + ), + ( + "hex_color", + wagtail.blocks.CharBlock( + default="000000", + help_text="Zadejte barvu pomocí HEX notace (bez # na začátku).", + label="Barva (HEX)", + ), + ), + ], + required=True, + ), + label="Součásti", + ), + ), + ( + "zoom", + wagtail.blocks.IntegerBlock( + default=15, + label="Výchozí zoom", + max_value=18, + min_value=1, + ), + ), + ( + "style", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "osm-mapnik", + "OSM Mapnik", + ), + ( + "stadia-osm-bright", + "Stadia OSM Bright", + ), + ( + "stadia-outdoors", + "Stadia Outdoors", + ), + ( + "mapbox-streets", + "Mapbox Streets", + ), + ( + "mapbox-outdoors", + "Mapbox Outdoors", + ), + ( + "mapbox-light", + "Mapbox Light", + ), + ( + "mapbox-dark", + "Mapbox Dark", + ), + ( + "mapbox-satellite", + "Mapbox Satellite", + ), + ( + "mapbox-pirate", + "Mapbox Pirate Theme", + ), + ], + label="Styl", + ), + ), + ( + "height", + wagtail.blocks.IntegerBlock( + label="Výška v px", + max_value=1000, + min_value=100, + ), + ), + ], + label="Mapová kolekce", + ), + ), + ], + label="Obsah", + required=False, + ), + ), + ( + "page", + wagtail.blocks.PageChooserBlock( + label="Stránka", + required=False, + ), + ), + ( + "link", + wagtail.blocks.URLBlock( + label="Odkaz", + required=False, + ), + ), + ] + ), + ), + ( + "figure", + wagtail.blocks.StructBlock( + [ + ( + "img", + wagtail.images.blocks.ImageChooserBlock( + label="Obrázek", + required=True, + ), + ), + ( + "caption", + wagtail.blocks.TextBlock( + label="Popisek", + required=False, + ), + ), + ] + ), + ), + ( + "youtube", + wagtail.blocks.StructBlock( + [ + ( + "poster_image", + wagtail.images.blocks.ImageChooserBlock( + help_text="Není třeba vyplňovat, náhled bude dohledán automaticky.", + label="Náhled videa (automatické pole)", + required=False, + ), + ), + ( + "video_url", + wagtail.blocks.URLBlock( + help_text="Odkaz na YouTube video bude automaticky zkonvertován na ID videa a NEBUDE uložen.", + label="Odkaz na video", + required=False, + ), + ), + ( + "video_id", + wagtail.blocks.CharBlock( + help_text="Není třeba vyplňovat, bude automaticky načteno z odkazu.", + label="ID videa (automatické pole)", + required=False, + ), + ), + ] + ), + ), + ( + "map_point", + wagtail.blocks.StructBlock( + [ + ( + "lat", + wagtail.blocks.DecimalBlock( + help_text="Např. 50.04075", + label="Zeměpisná šířka", + ), + ), + ( + "lon", + wagtail.blocks.DecimalBlock( + help_text="Např. 15.77659", + label="Zeměpisná délka", + ), + ), + ( + "hex_color", + wagtail.blocks.CharBlock( + default="000000", + help_text="Zadejte barvu pomocí HEX notace (bez # na začátku).", + label="Barva špendlíku (HEX)", + ), + ), + ( + "zoom", + wagtail.blocks.IntegerBlock( + default=15, + label="Výchozí zoom", + max_value=18, + min_value=1, + ), + ), + ( + "style", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "osm-mapnik", + "OSM Mapnik", + ), + ( + "stadia-osm-bright", + "Stadia OSM Bright", + ), + ( + "stadia-outdoors", + "Stadia Outdoors", + ), + ( + "mapbox-streets", + "Mapbox Streets", + ), + ( + "mapbox-outdoors", + "Mapbox Outdoors", + ), + ( + "mapbox-light", + "Mapbox Light", + ), + ( + "mapbox-dark", + "Mapbox Dark", + ), + ( + "mapbox-satellite", + "Mapbox Satellite", + ), + ( + "mapbox-pirate", + "Mapbox Pirate Theme", + ), + ], + label="Styl", + ), + ), + ( + "height", + wagtail.blocks.IntegerBlock( + label="Výška v px", + max_value=1000, + min_value=100, + ), + ), + ], + label="Špendlík na mapě", + ), + ), + ( + "map_collection", + wagtail.blocks.StructBlock( + [ + ( + "features", + wagtail.blocks.ListBlock( + wagtail.blocks.StructBlock( + [ + ( + "title", + wagtail.blocks.CharBlock( + label="Titulek", + required=True, + ), + ), + ( + "description", + wagtail.blocks.TextBlock( + label="Popisek", + required=False, + ), + ), + ( + "geojson", + wagtail.blocks.TextBlock( + help_text="Vložte surový GeoJSON objekt typu 'Feature'. Vyrobit jej můžete např. pomocí online služby geojson.io. Pokud u objektu poskytnete properties 'title' a 'description', zobrazí se jak na mapě, tak i v detailu.", + label="Geodata", + required=True, + ), + ), + ( + "image", + wagtail.images.blocks.ImageChooserBlock( + label="Obrázek", + required=False, + ), + ), + ( + "link", + wagtail.blocks.URLBlock( + label="Odkaz", + required=False, + ), + ), + ( + "hex_color", + wagtail.blocks.CharBlock( + default="000000", + help_text="Zadejte barvu pomocí HEX notace (bez # na začátku).", + label="Barva (HEX)", + ), + ), + ], + required=True, + ), + label="Součásti", + ), + ), + ( + "zoom", + wagtail.blocks.IntegerBlock( + default=15, + label="Výchozí zoom", + max_value=18, + min_value=1, + ), + ), + ( + "style", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "osm-mapnik", + "OSM Mapnik", + ), + ( + "stadia-osm-bright", + "Stadia OSM Bright", + ), + ( + "stadia-outdoors", + "Stadia Outdoors", + ), + ( + "mapbox-streets", + "Mapbox Streets", + ), + ( + "mapbox-outdoors", + "Mapbox Outdoors", + ), + ( + "mapbox-light", + "Mapbox Light", + ), + ( + "mapbox-dark", + "Mapbox Dark", + ), + ( + "mapbox-satellite", + "Mapbox Satellite", + ), + ( + "mapbox-pirate", + "Mapbox Pirate Theme", + ), + ], + label="Styl", + ), + ), + ( + "height", + wagtail.blocks.IntegerBlock( + label="Výška v px", + max_value=1000, + min_value=100, + ), + ), + ], + label="Mapová kolekce", + ), + ), + ( + "button", + wagtail.blocks.StructBlock( + [ + ( + "title", + wagtail.blocks.CharBlock( + label="Titulek", + max_length=128, + required=True, + ), + ), + ( + "icon", + wagtail.blocks.CharBlock( + help_text="Identifikátor ikonky ze styleguide (https://styleguide.pirati.cz/latest/?p=viewall-atoms-icons), např. ico--key.", + label="Ikonka", + max_length=128, + required=False, + ), + ), + ( + "size", + wagtail.blocks.ChoiceBlock( + choices=[ + ("sm", "Malá"), + ("base", "Střední"), + ("lg", "Velká"), + ], + label="Velikost", + ), + ), + ( + "color", + wagtail.blocks.ChoiceBlock( + choices=[ + ("black", "Černá"), + ("white", "Bílá"), + ( + "grey-125", + "Světle šedá", + ), + ( + "blue-300", + "Modrá", + ), + ( + "cyan-200", + "Tyrkysová", + ), + ( + "green-400", + "Zelené", + ), + ( + "violet-400", + "Vínová", + ), + ( + "red-600", + "Červená", + ), + ], + label="Barva", + ), + ), + ( + "hoveractive", + wagtail.blocks.BooleanBlock( + default=True, + help_text="Pokud je zapnuto, tlačítko mění barvu, když na něj uživatel najede myší.", + label="Animovat na hover", + required=False, + ), + ), + ( + "mobile_fullwidth", + wagtail.blocks.BooleanBlock( + default=True, + help_text="Pokud je zapnuto, tlačítko se na mobilních zařízeních roztáhne na plnou šířku.", + label="Plná šířka na mobilních zařízeních", + required=False, + ), + ), + ( + "page", + wagtail.blocks.PageChooserBlock( + label="Stránka", + required=False, + ), + ), + ( + "link", + wagtail.blocks.URLBlock( + label="Odkaz", + required=False, + ), + ), + ( + "align", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "auto", + "Automaticky", + ), + ( + "center", + "Na střed", + ), + ], + label="Zarovnání", + ), + ), + ] + ), + ), + ( + "button_group", + wagtail.blocks.StructBlock( + [ + ( + "buttons", + wagtail.blocks.ListBlock( + wagtail.blocks.StructBlock( + [ + ( + "title", + wagtail.blocks.CharBlock( + label="Titulek", + max_length=128, + required=True, + ), + ), + ( + "icon", + wagtail.blocks.CharBlock( + help_text="Identifikátor ikonky ze styleguide (https://styleguide.pirati.cz/latest/?p=viewall-atoms-icons), např. ico--key.", + label="Ikonka", + max_length=128, + required=False, + ), + ), + ( + "size", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "sm", + "Malá", + ), + ( + "base", + "Střední", + ), + ( + "lg", + "Velká", + ), + ], + label="Velikost", + ), + ), + ( + "color", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "black", + "Černá", + ), + ( + "white", + "Bílá", + ), + ( + "grey-125", + "Světle šedá", + ), + ( + "blue-300", + "Modrá", + ), + ( + "cyan-200", + "Tyrkysová", + ), + ( + "green-400", + "Zelené", + ), + ( + "violet-400", + "Vínová", + ), + ( + "red-600", + "Červená", + ), + ], + label="Barva", + ), + ), + ( + "hoveractive", + wagtail.blocks.BooleanBlock( + default=True, + help_text="Pokud je zapnuto, tlačítko mění barvu, když na něj uživatel najede myší.", + label="Animovat na hover", + required=False, + ), + ), + ( + "mobile_fullwidth", + wagtail.blocks.BooleanBlock( + default=True, + help_text="Pokud je zapnuto, tlačítko se na mobilních zařízeních roztáhne na plnou šířku.", + label="Plná šířka na mobilních zařízeních", + required=False, + ), + ), + ( + "page", + wagtail.blocks.PageChooserBlock( + label="Stránka", + required=False, + ), + ), + ( + "link", + wagtail.blocks.URLBlock( + label="Odkaz", + required=False, + ), + ), + ( + "align", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "auto", + "Automaticky", + ), + ( + "center", + "Na střed", + ), + ], + label="Zarovnání", + ), + ), + ] + ), + label="Tlačítka", + ), + ) + ] + ), + ), + ], + label="Obsah prostředního sloupce", + required=True, + ), + ), + ( + "right_column_content", + wagtail.blocks.StreamBlock( + [ + ( + "text", + wagtail.blocks.RichTextBlock( + features=[ + "h2", + "h3", + "h4", + "h5", + "bold", + "italic", + "ol", + "ul", + "hr", + "link", + "document-link", + "image", + "superscript", + "subscript", + "strikethrough", + "blockquote", + "embed", + ], + label="Textový editor", + ), + ), + ( + "table", + wagtail.contrib.table_block.blocks.TableBlock( + template="shared/blocks/table_block.html" + ), + ), + ( + "card", + wagtail.blocks.StructBlock( + [ + ( + "img", + wagtail.images.blocks.ImageChooserBlock( + label="Obrázek", + required=False, + ), + ), + ( + "elevation", + wagtail.blocks.IntegerBlock( + default=2, + help_text="0 = žádný stín, 21 = maximální stín", + label="Velikost stínu", + max_value=21, + min_value=0, + ), + ), + ( + "headline", + wagtail.blocks.TextBlock( + label="Titulek", + required=False, + ), + ), + ( + "hoveractive", + wagtail.blocks.BooleanBlock( + default=False, + help_text="Pokud je zapnuto, stín se zvýrazní, když na kartu uživatel najede myší.", + label="Zvýraznit stín na hover", + required=False, + ), + ), + ( + "content", + wagtail.blocks.StreamBlock( + [ + ( + "text", + wagtail.blocks.RichTextBlock( + features=[ + "h2", + "h3", + "h4", + "h5", + "bold", + "italic", + "ol", + "ul", + "hr", + "link", + "document-link", + "image", + "superscript", + "subscript", + "strikethrough", + "blockquote", + "embed", + ], + label="Textový editor", + ), + ), + ( + "table", + wagtail.contrib.table_block.blocks.TableBlock( + template="shared/blocks/table_block.html" + ), + ), + ( + "figure", + wagtail.blocks.StructBlock( + [ + ( + "img", + wagtail.images.blocks.ImageChooserBlock( + label="Obrázek", + required=True, + ), + ), + ( + "caption", + wagtail.blocks.TextBlock( + label="Popisek", + required=False, + ), + ), + ] + ), + ), + ( + "youtube", + wagtail.blocks.StructBlock( + [ + ( + "poster_image", + wagtail.images.blocks.ImageChooserBlock( + help_text="Není třeba vyplňovat, náhled bude dohledán automaticky.", + label="Náhled videa (automatické pole)", + required=False, + ), + ), + ( + "video_url", + wagtail.blocks.URLBlock( + help_text="Odkaz na YouTube video bude automaticky zkonvertován na ID videa a NEBUDE uložen.", + label="Odkaz na video", + required=False, + ), + ), + ( + "video_id", + wagtail.blocks.CharBlock( + help_text="Není třeba vyplňovat, bude automaticky načteno z odkazu.", + label="ID videa (automatické pole)", + required=False, + ), + ), + ] + ), + ), + ( + "map_point", + wagtail.blocks.StructBlock( + [ + ( + "lat", + wagtail.blocks.DecimalBlock( + help_text="Např. 50.04075", + label="Zeměpisná šířka", + ), + ), + ( + "lon", + wagtail.blocks.DecimalBlock( + help_text="Např. 15.77659", + label="Zeměpisná délka", + ), + ), + ( + "hex_color", + wagtail.blocks.CharBlock( + default="000000", + help_text="Zadejte barvu pomocí HEX notace (bez # na začátku).", + label="Barva špendlíku (HEX)", + ), + ), + ( + "zoom", + wagtail.blocks.IntegerBlock( + default=15, + label="Výchozí zoom", + max_value=18, + min_value=1, + ), + ), + ( + "style", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "osm-mapnik", + "OSM Mapnik", + ), + ( + "stadia-osm-bright", + "Stadia OSM Bright", + ), + ( + "stadia-outdoors", + "Stadia Outdoors", + ), + ( + "mapbox-streets", + "Mapbox Streets", + ), + ( + "mapbox-outdoors", + "Mapbox Outdoors", + ), + ( + "mapbox-light", + "Mapbox Light", + ), + ( + "mapbox-dark", + "Mapbox Dark", + ), + ( + "mapbox-satellite", + "Mapbox Satellite", + ), + ( + "mapbox-pirate", + "Mapbox Pirate Theme", + ), + ], + label="Styl", + ), + ), + ( + "height", + wagtail.blocks.IntegerBlock( + label="Výška v px", + max_value=1000, + min_value=100, + ), + ), + ], + label="Špendlík na mapě", + ), + ), + ( + "map_collection", + wagtail.blocks.StructBlock( + [ + ( + "features", + wagtail.blocks.ListBlock( + wagtail.blocks.StructBlock( + [ + ( + "title", + wagtail.blocks.CharBlock( + label="Titulek", + required=True, + ), + ), + ( + "description", + wagtail.blocks.TextBlock( + label="Popisek", + required=False, + ), + ), + ( + "geojson", + wagtail.blocks.TextBlock( + help_text="Vložte surový GeoJSON objekt typu 'Feature'. Vyrobit jej můžete např. pomocí online služby geojson.io. Pokud u objektu poskytnete properties 'title' a 'description', zobrazí se jak na mapě, tak i v detailu.", + label="Geodata", + required=True, + ), + ), + ( + "image", + wagtail.images.blocks.ImageChooserBlock( + label="Obrázek", + required=False, + ), + ), + ( + "link", + wagtail.blocks.URLBlock( + label="Odkaz", + required=False, + ), + ), + ( + "hex_color", + wagtail.blocks.CharBlock( + default="000000", + help_text="Zadejte barvu pomocí HEX notace (bez # na začátku).", + label="Barva (HEX)", + ), + ), + ], + required=True, + ), + label="Součásti", + ), + ), + ( + "zoom", + wagtail.blocks.IntegerBlock( + default=15, + label="Výchozí zoom", + max_value=18, + min_value=1, + ), + ), + ( + "style", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "osm-mapnik", + "OSM Mapnik", + ), + ( + "stadia-osm-bright", + "Stadia OSM Bright", + ), + ( + "stadia-outdoors", + "Stadia Outdoors", + ), + ( + "mapbox-streets", + "Mapbox Streets", + ), + ( + "mapbox-outdoors", + "Mapbox Outdoors", + ), + ( + "mapbox-light", + "Mapbox Light", + ), + ( + "mapbox-dark", + "Mapbox Dark", + ), + ( + "mapbox-satellite", + "Mapbox Satellite", + ), + ( + "mapbox-pirate", + "Mapbox Pirate Theme", + ), + ], + label="Styl", + ), + ), + ( + "height", + wagtail.blocks.IntegerBlock( + label="Výška v px", + max_value=1000, + min_value=100, + ), + ), + ], + label="Mapová kolekce", + ), + ), + ], + label="Obsah", + required=False, + ), + ), + ( + "page", + wagtail.blocks.PageChooserBlock( + label="Stránka", + required=False, + ), + ), + ( + "link", + wagtail.blocks.URLBlock( + label="Odkaz", + required=False, + ), + ), + ] + ), + ), + ( + "figure", + wagtail.blocks.StructBlock( + [ + ( + "img", + wagtail.images.blocks.ImageChooserBlock( + label="Obrázek", + required=True, + ), + ), + ( + "caption", + wagtail.blocks.TextBlock( + label="Popisek", + required=False, + ), + ), + ] + ), + ), + ( + "youtube", + wagtail.blocks.StructBlock( + [ + ( + "poster_image", + wagtail.images.blocks.ImageChooserBlock( + help_text="Není třeba vyplňovat, náhled bude dohledán automaticky.", + label="Náhled videa (automatické pole)", + required=False, + ), + ), + ( + "video_url", + wagtail.blocks.URLBlock( + help_text="Odkaz na YouTube video bude automaticky zkonvertován na ID videa a NEBUDE uložen.", + label="Odkaz na video", + required=False, + ), + ), + ( + "video_id", + wagtail.blocks.CharBlock( + help_text="Není třeba vyplňovat, bude automaticky načteno z odkazu.", + label="ID videa (automatické pole)", + required=False, + ), + ), + ] + ), + ), + ( + "map_point", + wagtail.blocks.StructBlock( + [ + ( + "lat", + wagtail.blocks.DecimalBlock( + help_text="Např. 50.04075", + label="Zeměpisná šířka", + ), + ), + ( + "lon", + wagtail.blocks.DecimalBlock( + help_text="Např. 15.77659", + label="Zeměpisná délka", + ), + ), + ( + "hex_color", + wagtail.blocks.CharBlock( + default="000000", + help_text="Zadejte barvu pomocí HEX notace (bez # na začátku).", + label="Barva špendlíku (HEX)", + ), + ), + ( + "zoom", + wagtail.blocks.IntegerBlock( + default=15, + label="Výchozí zoom", + max_value=18, + min_value=1, + ), + ), + ( + "style", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "osm-mapnik", + "OSM Mapnik", + ), + ( + "stadia-osm-bright", + "Stadia OSM Bright", + ), + ( + "stadia-outdoors", + "Stadia Outdoors", + ), + ( + "mapbox-streets", + "Mapbox Streets", + ), + ( + "mapbox-outdoors", + "Mapbox Outdoors", + ), + ( + "mapbox-light", + "Mapbox Light", + ), + ( + "mapbox-dark", + "Mapbox Dark", + ), + ( + "mapbox-satellite", + "Mapbox Satellite", + ), + ( + "mapbox-pirate", + "Mapbox Pirate Theme", + ), + ], + label="Styl", + ), + ), + ( + "height", + wagtail.blocks.IntegerBlock( + label="Výška v px", + max_value=1000, + min_value=100, + ), + ), + ], + label="Špendlík na mapě", + ), + ), + ( + "map_collection", + wagtail.blocks.StructBlock( + [ + ( + "features", + wagtail.blocks.ListBlock( + wagtail.blocks.StructBlock( + [ + ( + "title", + wagtail.blocks.CharBlock( + label="Titulek", + required=True, + ), + ), + ( + "description", + wagtail.blocks.TextBlock( + label="Popisek", + required=False, + ), + ), + ( + "geojson", + wagtail.blocks.TextBlock( + help_text="Vložte surový GeoJSON objekt typu 'Feature'. Vyrobit jej můžete např. pomocí online služby geojson.io. Pokud u objektu poskytnete properties 'title' a 'description', zobrazí se jak na mapě, tak i v detailu.", + label="Geodata", + required=True, + ), + ), + ( + "image", + wagtail.images.blocks.ImageChooserBlock( + label="Obrázek", + required=False, + ), + ), + ( + "link", + wagtail.blocks.URLBlock( + label="Odkaz", + required=False, + ), + ), + ( + "hex_color", + wagtail.blocks.CharBlock( + default="000000", + help_text="Zadejte barvu pomocí HEX notace (bez # na začátku).", + label="Barva (HEX)", + ), + ), + ], + required=True, + ), + label="Součásti", + ), + ), + ( + "zoom", + wagtail.blocks.IntegerBlock( + default=15, + label="Výchozí zoom", + max_value=18, + min_value=1, + ), + ), + ( + "style", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "osm-mapnik", + "OSM Mapnik", + ), + ( + "stadia-osm-bright", + "Stadia OSM Bright", + ), + ( + "stadia-outdoors", + "Stadia Outdoors", + ), + ( + "mapbox-streets", + "Mapbox Streets", + ), + ( + "mapbox-outdoors", + "Mapbox Outdoors", + ), + ( + "mapbox-light", + "Mapbox Light", + ), + ( + "mapbox-dark", + "Mapbox Dark", + ), + ( + "mapbox-satellite", + "Mapbox Satellite", + ), + ( + "mapbox-pirate", + "Mapbox Pirate Theme", + ), + ], + label="Styl", + ), + ), + ( + "height", + wagtail.blocks.IntegerBlock( + label="Výška v px", + max_value=1000, + min_value=100, + ), + ), + ], + label="Mapová kolekce", + ), + ), + ( + "button", + wagtail.blocks.StructBlock( + [ + ( + "title", + wagtail.blocks.CharBlock( + label="Titulek", + max_length=128, + required=True, + ), + ), + ( + "icon", + wagtail.blocks.CharBlock( + help_text="Identifikátor ikonky ze styleguide (https://styleguide.pirati.cz/latest/?p=viewall-atoms-icons), např. ico--key.", + label="Ikonka", + max_length=128, + required=False, + ), + ), + ( + "size", + wagtail.blocks.ChoiceBlock( + choices=[ + ("sm", "Malá"), + ("base", "Střední"), + ("lg", "Velká"), + ], + label="Velikost", + ), + ), + ( + "color", + wagtail.blocks.ChoiceBlock( + choices=[ + ("black", "Černá"), + ("white", "Bílá"), + ( + "grey-125", + "Světle šedá", + ), + ( + "blue-300", + "Modrá", + ), + ( + "cyan-200", + "Tyrkysová", + ), + ( + "green-400", + "Zelené", + ), + ( + "violet-400", + "Vínová", + ), + ( + "red-600", + "Červená", + ), + ], + label="Barva", + ), + ), + ( + "hoveractive", + wagtail.blocks.BooleanBlock( + default=True, + help_text="Pokud je zapnuto, tlačítko mění barvu, když na něj uživatel najede myší.", + label="Animovat na hover", + required=False, + ), + ), + ( + "mobile_fullwidth", + wagtail.blocks.BooleanBlock( + default=True, + help_text="Pokud je zapnuto, tlačítko se na mobilních zařízeních roztáhne na plnou šířku.", + label="Plná šířka na mobilních zařízeních", + required=False, + ), + ), + ( + "page", + wagtail.blocks.PageChooserBlock( + label="Stránka", + required=False, + ), + ), + ( + "link", + wagtail.blocks.URLBlock( + label="Odkaz", + required=False, + ), + ), + ( + "align", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "auto", + "Automaticky", + ), + ( + "center", + "Na střed", + ), + ], + label="Zarovnání", + ), + ), + ] + ), + ), + ( + "button_group", + wagtail.blocks.StructBlock( + [ + ( + "buttons", + wagtail.blocks.ListBlock( + wagtail.blocks.StructBlock( + [ + ( + "title", + wagtail.blocks.CharBlock( + label="Titulek", + max_length=128, + required=True, + ), + ), + ( + "icon", + wagtail.blocks.CharBlock( + help_text="Identifikátor ikonky ze styleguide (https://styleguide.pirati.cz/latest/?p=viewall-atoms-icons), např. ico--key.", + label="Ikonka", + max_length=128, + required=False, + ), + ), + ( + "size", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "sm", + "Malá", + ), + ( + "base", + "Střední", + ), + ( + "lg", + "Velká", + ), + ], + label="Velikost", + ), + ), + ( + "color", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "black", + "Černá", + ), + ( + "white", + "Bílá", + ), + ( + "grey-125", + "Světle šedá", + ), + ( + "blue-300", + "Modrá", + ), + ( + "cyan-200", + "Tyrkysová", + ), + ( + "green-400", + "Zelené", + ), + ( + "violet-400", + "Vínová", + ), + ( + "red-600", + "Červená", + ), + ], + label="Barva", + ), + ), + ( + "hoveractive", + wagtail.blocks.BooleanBlock( + default=True, + help_text="Pokud je zapnuto, tlačítko mění barvu, když na něj uživatel najede myší.", + label="Animovat na hover", + required=False, + ), + ), + ( + "mobile_fullwidth", + wagtail.blocks.BooleanBlock( + default=True, + help_text="Pokud je zapnuto, tlačítko se na mobilních zařízeních roztáhne na plnou šířku.", + label="Plná šířka na mobilních zařízeních", + required=False, + ), + ), + ( + "page", + wagtail.blocks.PageChooserBlock( + label="Stránka", + required=False, + ), + ), + ( + "link", + wagtail.blocks.URLBlock( + label="Odkaz", + required=False, + ), + ), + ( + "align", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "auto", + "Automaticky", + ), + ( + "center", + "Na střed", + ), + ], + label="Zarovnání", + ), + ), + ] + ), + label="Tlačítka", + ), + ) + ] + ), + ), + ], + label="Obsah pravého sloupce", + required=True, + ), + ), + ] + ), + ), + ( + "youtube", + wagtail.blocks.StructBlock( + [ + ( + "poster_image", + wagtail.images.blocks.ImageChooserBlock( + help_text="Není třeba vyplňovat, náhled bude dohledán automaticky.", + label="Náhled videa (automatické pole)", + required=False, + ), + ), + ( + "video_url", + wagtail.blocks.URLBlock( + help_text="Odkaz na YouTube video bude automaticky zkonvertován na ID videa a NEBUDE uložen.", + label="Odkaz na video", + required=False, + ), + ), + ( + "video_id", + wagtail.blocks.CharBlock( + help_text="Není třeba vyplňovat, bude automaticky načteno z odkazu.", + label="ID videa (automatické pole)", + required=False, + ), + ), + ], + label="YouTube video", + ), + ), + ( + "map_point", + wagtail.blocks.StructBlock( + [ + ( + "lat", + wagtail.blocks.DecimalBlock( + help_text="Např. 50.04075", + label="Zeměpisná šířka", + ), + ), + ( + "lon", + wagtail.blocks.DecimalBlock( + help_text="Např. 15.77659", + label="Zeměpisná délka", + ), + ), + ( + "hex_color", + wagtail.blocks.CharBlock( + default="000000", + help_text="Zadejte barvu pomocí HEX notace (bez # na začátku).", + label="Barva špendlíku (HEX)", + ), + ), + ( + "zoom", + wagtail.blocks.IntegerBlock( + default=15, + label="Výchozí zoom", + max_value=18, + min_value=1, + ), + ), + ( + "style", + wagtail.blocks.ChoiceBlock( + choices=[ + ("osm-mapnik", "OSM Mapnik"), + ("stadia-osm-bright", "Stadia OSM Bright"), + ("stadia-outdoors", "Stadia Outdoors"), + ("mapbox-streets", "Mapbox Streets"), + ("mapbox-outdoors", "Mapbox Outdoors"), + ("mapbox-light", "Mapbox Light"), + ("mapbox-dark", "Mapbox Dark"), + ("mapbox-satellite", "Mapbox Satellite"), + ("mapbox-pirate", "Mapbox Pirate Theme"), + ], + label="Styl", + ), + ), + ( + "height", + wagtail.blocks.IntegerBlock( + label="Výška v px", + max_value=1000, + min_value=100, + ), + ), + ], + label="Špendlík na mapě", + ), + ), + ( + "map_collection", + wagtail.blocks.StructBlock( + [ + ( + "features", + wagtail.blocks.ListBlock( + wagtail.blocks.StructBlock( + [ + ( + "title", + wagtail.blocks.CharBlock( + label="Titulek", required=True + ), + ), + ( + "description", + wagtail.blocks.TextBlock( + label="Popisek", required=False + ), + ), + ( + "geojson", + wagtail.blocks.TextBlock( + help_text="Vložte surový GeoJSON objekt typu 'Feature'. Vyrobit jej můžete např. pomocí online služby geojson.io. Pokud u objektu poskytnete properties 'title' a 'description', zobrazí se jak na mapě, tak i v detailu.", + label="Geodata", + required=True, + ), + ), + ( + "image", + wagtail.images.blocks.ImageChooserBlock( + label="Obrázek", required=False + ), + ), + ( + "link", + wagtail.blocks.URLBlock( + label="Odkaz", required=False + ), + ), + ( + "hex_color", + wagtail.blocks.CharBlock( + default="000000", + help_text="Zadejte barvu pomocí HEX notace (bez # na začátku).", + label="Barva (HEX)", + ), + ), + ], + required=True, + ), + label="Součásti", + ), + ), + ( + "zoom", + wagtail.blocks.IntegerBlock( + default=15, + label="Výchozí zoom", + max_value=18, + min_value=1, + ), + ), + ( + "style", + wagtail.blocks.ChoiceBlock( + choices=[ + ("osm-mapnik", "OSM Mapnik"), + ("stadia-osm-bright", "Stadia OSM Bright"), + ("stadia-outdoors", "Stadia Outdoors"), + ("mapbox-streets", "Mapbox Streets"), + ("mapbox-outdoors", "Mapbox Outdoors"), + ("mapbox-light", "Mapbox Light"), + ("mapbox-dark", "Mapbox Dark"), + ("mapbox-satellite", "Mapbox Satellite"), + ("mapbox-pirate", "Mapbox Pirate Theme"), + ], + label="Styl", + ), + ), + ( + "height", + wagtail.blocks.IntegerBlock( + label="Výška v px", + max_value=1000, + min_value=100, + ), + ), + ], + label="Mapová kolekce", + ), + ), + ( + "button", + wagtail.blocks.StructBlock( + [ + ( + "title", + wagtail.blocks.CharBlock( + label="Titulek", max_length=128, required=True + ), + ), + ( + "icon", + wagtail.blocks.CharBlock( + help_text="Identifikátor ikonky ze styleguide (https://styleguide.pirati.cz/latest/?p=viewall-atoms-icons), např. ico--key.", + label="Ikonka", + max_length=128, + required=False, + ), + ), + ( + "size", + wagtail.blocks.ChoiceBlock( + choices=[ + ("sm", "Malá"), + ("base", "Střední"), + ("lg", "Velká"), + ], + label="Velikost", + ), + ), + ( + "color", + wagtail.blocks.ChoiceBlock( + choices=[ + ("black", "Černá"), + ("white", "Bílá"), + ("grey-125", "Světle šedá"), + ("blue-300", "Modrá"), + ("cyan-200", "Tyrkysová"), + ("green-400", "Zelené"), + ("violet-400", "Vínová"), + ("red-600", "Červená"), + ], + label="Barva", + ), + ), + ( + "hoveractive", + wagtail.blocks.BooleanBlock( + default=True, + help_text="Pokud je zapnuto, tlačítko mění barvu, když na něj uživatel najede myší.", + label="Animovat na hover", + required=False, + ), + ), + ( + "mobile_fullwidth", + wagtail.blocks.BooleanBlock( + default=True, + help_text="Pokud je zapnuto, tlačítko se na mobilních zařízeních roztáhne na plnou šířku.", + label="Plná šířka na mobilních zařízeních", + required=False, + ), + ), + ( + "page", + wagtail.blocks.PageChooserBlock( + label="Stránka", required=False + ), + ), + ( + "link", + wagtail.blocks.URLBlock( + label="Odkaz", required=False + ), + ), + ( + "align", + wagtail.blocks.ChoiceBlock( + choices=[ + ("auto", "Automaticky"), + ("center", "Na střed"), + ], + label="Zarovnání", + ), + ), + ] + ), + ), + ( + "button_group", + wagtail.blocks.StructBlock( + [ + ( + "buttons", + wagtail.blocks.ListBlock( + wagtail.blocks.StructBlock( + [ + ( + "title", + wagtail.blocks.CharBlock( + label="Titulek", + max_length=128, + required=True, + ), + ), + ( + "icon", + wagtail.blocks.CharBlock( + help_text="Identifikátor ikonky ze styleguide (https://styleguide.pirati.cz/latest/?p=viewall-atoms-icons), např. ico--key.", + label="Ikonka", + max_length=128, + required=False, + ), + ), + ( + "size", + wagtail.blocks.ChoiceBlock( + choices=[ + ("sm", "Malá"), + ("base", "Střední"), + ("lg", "Velká"), + ], + label="Velikost", + ), + ), + ( + "color", + wagtail.blocks.ChoiceBlock( + choices=[ + ("black", "Černá"), + ("white", "Bílá"), + ("grey-125", "Světle šedá"), + ("blue-300", "Modrá"), + ("cyan-200", "Tyrkysová"), + ("green-400", "Zelené"), + ("violet-400", "Vínová"), + ("red-600", "Červená"), + ], + label="Barva", + ), + ), + ( + "hoveractive", + wagtail.blocks.BooleanBlock( + default=True, + help_text="Pokud je zapnuto, tlačítko mění barvu, když na něj uživatel najede myší.", + label="Animovat na hover", + required=False, + ), + ), + ( + "mobile_fullwidth", + wagtail.blocks.BooleanBlock( + default=True, + help_text="Pokud je zapnuto, tlačítko se na mobilních zařízeních roztáhne na plnou šířku.", + label="Plná šířka na mobilních zařízeních", + required=False, + ), + ), + ( + "page", + wagtail.blocks.PageChooserBlock( + label="Stránka", required=False + ), + ), + ( + "link", + wagtail.blocks.URLBlock( + label="Odkaz", required=False + ), + ), + ( + "align", + wagtail.blocks.ChoiceBlock( + choices=[ + ("auto", "Automaticky"), + ("center", "Na střed"), + ], + label="Zarovnání", + ), + ), + ] + ), + label="Tlačítka", + ), + ) + ] + ), + ), + ( + "image_banner", + wagtail.blocks.StructBlock( + [ + ( + "image", + wagtail.images.blocks.ImageChooserBlock( + label="Obrázek", required=True + ), + ), + ( + "headline", + wagtail.blocks.CharBlock( + label="Headline", max_length=128, required=True + ), + ), + ( + "content", + wagtail.blocks.StreamBlock( + [ + ( + "text", + wagtail.blocks.RichTextBlock( + features=( + "h2", + "h3", + "h4", + "h5", + "bold", + "italic", + "ol", + "ul", + "hr", + "link", + "document-link", + "superscript", + "subscript", + "strikethrough", + "blockquote", + ), + label="Textový editor", + ), + ), + ( + "button", + wagtail.blocks.StructBlock( + [ + ( + "title", + wagtail.blocks.CharBlock( + label="Titulek", + max_length=128, + required=True, + ), + ), + ( + "icon", + wagtail.blocks.CharBlock( + help_text="Identifikátor ikonky ze styleguide (https://styleguide.pirati.cz/latest/?p=viewall-atoms-icons), např. ico--key.", + label="Ikonka", + max_length=128, + required=False, + ), + ), + ( + "size", + wagtail.blocks.ChoiceBlock( + choices=[ + ("sm", "Malá"), + ("base", "Střední"), + ("lg", "Velká"), + ], + label="Velikost", + ), + ), + ( + "color", + wagtail.blocks.ChoiceBlock( + choices=[ + ("black", "Černá"), + ("white", "Bílá"), + ( + "grey-125", + "Světle šedá", + ), + ( + "blue-300", + "Modrá", + ), + ( + "cyan-200", + "Tyrkysová", + ), + ( + "green-400", + "Zelené", + ), + ( + "violet-400", + "Vínová", + ), + ( + "red-600", + "Červená", + ), + ], + label="Barva", + ), + ), + ( + "hoveractive", + wagtail.blocks.BooleanBlock( + default=True, + help_text="Pokud je zapnuto, tlačítko mění barvu, když na něj uživatel najede myší.", + label="Animovat na hover", + required=False, + ), + ), + ( + "mobile_fullwidth", + wagtail.blocks.BooleanBlock( + default=True, + help_text="Pokud je zapnuto, tlačítko se na mobilních zařízeních roztáhne na plnou šířku.", + label="Plná šířka na mobilních zařízeních", + required=False, + ), + ), + ( + "page", + wagtail.blocks.PageChooserBlock( + label="Stránka", + required=False, + ), + ), + ( + "link", + wagtail.blocks.URLBlock( + label="Odkaz", + required=False, + ), + ), + ( + "align", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "auto", + "Automaticky", + ), + ( + "center", + "Na střed", + ), + ], + label="Zarovnání", + ), + ), + ] + ), + ), + ( + "button_group", + wagtail.blocks.StructBlock( + [ + ( + "buttons", + wagtail.blocks.ListBlock( + wagtail.blocks.StructBlock( + [ + ( + "title", + wagtail.blocks.CharBlock( + label="Titulek", + max_length=128, + required=True, + ), + ), + ( + "icon", + wagtail.blocks.CharBlock( + help_text="Identifikátor ikonky ze styleguide (https://styleguide.pirati.cz/latest/?p=viewall-atoms-icons), např. ico--key.", + label="Ikonka", + max_length=128, + required=False, + ), + ), + ( + "size", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "sm", + "Malá", + ), + ( + "base", + "Střední", + ), + ( + "lg", + "Velká", + ), + ], + label="Velikost", + ), + ), + ( + "color", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "black", + "Černá", + ), + ( + "white", + "Bílá", + ), + ( + "grey-125", + "Světle šedá", + ), + ( + "blue-300", + "Modrá", + ), + ( + "cyan-200", + "Tyrkysová", + ), + ( + "green-400", + "Zelené", + ), + ( + "violet-400", + "Vínová", + ), + ( + "red-600", + "Červená", + ), + ], + label="Barva", + ), + ), + ( + "hoveractive", + wagtail.blocks.BooleanBlock( + default=True, + help_text="Pokud je zapnuto, tlačítko mění barvu, když na něj uživatel najede myší.", + label="Animovat na hover", + required=False, + ), + ), + ( + "mobile_fullwidth", + wagtail.blocks.BooleanBlock( + default=True, + help_text="Pokud je zapnuto, tlačítko se na mobilních zařízeních roztáhne na plnou šířku.", + label="Plná šířka na mobilních zařízeních", + required=False, + ), + ), + ( + "page", + wagtail.blocks.PageChooserBlock( + label="Stránka", + required=False, + ), + ), + ( + "link", + wagtail.blocks.URLBlock( + label="Odkaz", + required=False, + ), + ), + ( + "align", + wagtail.blocks.ChoiceBlock( + choices=[ + ( + "auto", + "Automaticky", + ), + ( + "center", + "Na střed", + ), + ], + label="Zarovnání", + ), + ), + ] + ), + label="Tlačítka", + ), + ) + ] + ), + ), + ], + label="Obsah pravého sloupce", + required=False, + ), + ), + ] + ), + ), + ( + "chart", + wagtail.blocks.StructBlock( + [ + ( + "title", + wagtail.blocks.CharBlock( + label="Název", max_length=120 + ), + ), + ( + "chart_type", + wagtail.blocks.ChoiceBlock( + choices=[ + ("bar", "Graf se sloupci"), + ( + "horizontalBar", + "Graf s vodorovnými sloupci", + ), + ("pie", "Koláčový graf"), + ("doughnut", "Donutový graf"), + ("polarArea", "Graf polární oblasti"), + ("radar", "Radarový graf"), + ("line", "Graf s liniemi"), + ], + label="Typ", + ), + ), + ( + "hide_points", + wagtail.blocks.BooleanBlock( + help_text="Mění vzhled pouze u linových grafů.", + label="Schovat body", + required=False, + ), + ), + ( + "local_labels", + wagtail.blocks.ListBlock( + wagtail.blocks.CharBlock( + label="Skupina", max_length=40 + ), + blank=True, + collapsed=True, + default=[], + label="Místně definované skupiny", + required=False, + ), + ), + ( + "local_datasets", + wagtail.blocks.ListBlock( + wagtail.blocks.StructBlock( + [ + ( + "label", + wagtail.blocks.CharBlock( + label="Označení zdroje dat", + max_length=120, + ), + ), + ( + "data", + wagtail.blocks.ListBlock( + wagtail.blocks.IntegerBlock(), + default=[0], + label="Data", + ), + ), + ] + ), + blank=True, + collapsed=True, + default=[], + label="Místní zdroje dat", + required=False, + ), + ), + ( + "redmine_issue_datasets", + wagtail.blocks.ListBlock( + wagtail.blocks.StructBlock( + [ + ( + "projects", + wagtail.blocks.MultipleChoiceBlock( + choices=shared.blocks.get_redmine_projects, + label="Projekty", + ), + ), + ( + "is_open", + wagtail.blocks.BooleanBlock( + label="Jen otevřené", + required=False, + ), + ), + ( + "is_closed", + wagtail.blocks.BooleanBlock( + label="Jen uzavřené", + required=False, + ), + ), + ( + "created_on_min_date", + wagtail.blocks.DateBlock( + label="Min. datum vytvoření", + required=True, + ), + ), + ( + "created_on_max_date", + wagtail.blocks.DateBlock( + label="Max. datum vytvoření", + required=True, + ), + ), + ( + "updated_on", + wagtail.blocks.CharBlock( + help_text="Např. <=2023-01-01. Více informací na pi2.cz/redmine-api", + label="Filtr pro datum aktualizace", + max_length=128, + required=False, + ), + ), + ( + "issue_label", + wagtail.blocks.CharBlock( + label="Označení úkolů uvnitř grafu", + max_length=128, + required=True, + ), + ), + ( + "split_per_project", + wagtail.blocks.BooleanBlock( + label="Rozdělit podle projektu", + required=False, + ), + ), + ( + "only_grow", + wagtail.blocks.BooleanBlock( + label="Pouze růst nahoru", + required=False, + ), + ), + ], + label="Redmine úkoly", + ), + blank=True, + default=[], + help_text="Úkoly, podle doby vytvoření. Pokud definuješ více zdrojů, datumy v nich musí být stejné.", + label="Zdroje dat z Redmine (úkoly)", + required=False, + ), + ), + ], + template="district/blocks/chart.html", + ), + ), + ( + "related", + wagtail.blocks.StructBlock( + [ + ( + "articles", + wagtail.blocks.ListBlock( + wagtail.blocks.PageChooserBlock( + "district.DistrictArticlePage", + label="Aktualita", + required=True, + ), + label="Seznam aktualit", + required=True, + ), + ) + ] + ), + ), + ( + "related_links", + wagtail.blocks.StructBlock( + [ + ( + "articles", + wagtail.blocks.ListBlock( + wagtail.blocks.PageChooserBlock( + "district.DistrictArticlePage", + label="Aktualita", + required=True, + ), + label="Seznam aktualit", + required=True, + ), + ) + ] + ), + ), + ( + "badge", + wagtail.blocks.StructBlock( + [ + ( + "person", + wagtail.blocks.PageChooserBlock( + label="Osoba", + page_type=["district.DistrictPersonPage"], + required=True, + ), + ), + ( + "wrap_in_card", + wagtail.blocks.BooleanBlock( + default=False, + label="Zabalit do karty", + required=False, + ), + ), + ( + "caption", + wagtail.blocks.CharBlock( + help_text="Vlastní popisek na vizitce. Pokud není uvedeno, použije se výchozí profese osoby.", + label="Popisek", + required=False, + ), + ), + ] + ), + ), + ( + "people_group", + wagtail.blocks.StructBlock( + [ + ( + "group_title", + wagtail.blocks.CharBlock( + label="Titulek", required=True + ), + ), + ( + "person_list", + wagtail.blocks.ListBlock( + wagtail.blocks.StructBlock( + [ + ( + "position", + wagtail.blocks.CharBlock( + label="Název pozice", + required=False, + ), + ), + ( + "person", + wagtail.blocks.PageChooserBlock( + label="Osoba", + page_type=[ + "district.DistrictPersonPage" + ], + ), + ), + ] + ), + label="List osob", + ), + ), + ] + ), + ), + ( + "newsletter", + wagtail.blocks.StructBlock( + [ + ( + "list_id", + wagtail.blocks.CharBlock( + label="ID newsletteru", required=True + ), + ), + ( + "description", + wagtail.blocks.CharBlock( + default="Fake news tam nenajdeš, ale dozvíš se, co chystáme doopravdy!", + label="Popis newsletteru", + required=True, + ), + ), + ] + ), + ), + ], + blank=True, + use_json_field=True, + verbose_name="Obsah", + ), + ), + migrations.AlterField( + model_name="districthomepage", + name="content", + field=wagtail.fields.StreamField( + [ + ( + "text", + wagtail.blocks.RichTextBlock( + features=[ + "h2", + "h3", + "h4", + "h5", + "bold", + "italic", + "ol", + "ul", + "hr", + "link", + "document-link", + "image", + "superscript", + "subscript", + "strikethrough", + "blockquote", + "embed", + ], + label="Textový editor", + ), + ), + ( + "headline", + wagtail.blocks.StructBlock( + [ + ( + "headline", + wagtail.blocks.CharBlock( + label="Headline", max_length=300, required=True + ), + ), + ( + "style", + wagtail.blocks.ChoiceBlock( + choices=[ + ("head-alt-xl", "Bebas XL"), + ("head-alt-lg", "Bebas L"), + ("head-alt-md", "Bebas M"), + ("head-alt-base", "Bebas base"), + ("head-alt-sm", "Bebas SM"), + ("head-alt-xs", "Bebas XS"), + ("head-alt-2xs", "Bebas 2XS"), + ("head-heavy-base", "Roboto base"), + ("head-heavy-sm", "Roboto SM"), + ("head-heavy-xs", "Roboto XS"), + ("head-heavy-2xs", "Roboto 2XS"), + ("head-allcaps-2xs", "Allcaps 2XS"), + ("head-allcaps-3xs", "Allcaps 3XS"), + ("head-allcaps-4xs", "Allcaps 4XS"), + ( + "head-heavy-allcaps-2xs", + "Allcaps heavy 2XS", + ), + ( + "head-heavy-allcaps-3xs", + "Allcaps heavy 3XS", + ), + ( + "head-heavy-allcaps-4xs", + "Allcaps heavy 4XS", + ), + ], + help_text="Náhled si prohlédněte na https://styleguide.pir-test.eu/latest/?p=viewall-atoms-text.", + label="Styl", + ), + ), + ( + "tag", + wagtail.blocks.ChoiceBlock( + choices=[ + ("h1", "H1"), + ("h2", "H2"), + ("h3", "H3"), + ("h4", "H4"), + ("h5", "H5"), + ("h6", "H6"), + ], + help_text="Čím nižší číslo, tím vyšší úroveň.", + label="Úroveň nadpisu", + ), + ), + ( + "align", + wagtail.blocks.ChoiceBlock( + choices=[ + ("auto", "Automaticky"), + ("center", "Na střed"), + ], + label="Zarovnání", + ), + ), + ] + ), + ), + ( + "newsletter", + wagtail.blocks.StructBlock( + [ + ( + "list_id", + wagtail.blocks.CharBlock( + label="ID newsletteru", required=True + ), + ), + ( + "description", + wagtail.blocks.CharBlock( + default="Fake news tam nenajdeš, ale dozvíš se, co chystáme doopravdy!", + label="Popis newsletteru", + required=True, + ), + ), + ] + ), + ), + ], + blank=True, + use_json_field=True, + verbose_name="Obsah stránky", + ), + ), + ] diff --git a/district/migrations/0119_districthomepage_newsletter_description_and_more.py b/district/migrations/0119_districthomepage_newsletter_description_and_more.py new file mode 100644 index 0000000000000000000000000000000000000000..c8eddabc6bb28b05a307688b77edd1d3099fc527 --- /dev/null +++ b/district/migrations/0119_districthomepage_newsletter_description_and_more.py @@ -0,0 +1,28 @@ +# Generated by Django 4.1.10 on 2023-07-27 11:28 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + dependencies = [ + ("district", "0118_alter_districtcustompage_content_and_more"), + ] + + operations = [ + migrations.AddField( + model_name="districthomepage", + name="newsletter_description", + field=models.CharField( + default="Fake news tam nenajdeš, ale dozvíš se, co chystáme doopravdy!", + max_length=250, + verbose_name="Popis newsletteru", + ), + ), + migrations.AddField( + model_name="districthomepage", + name="newsletter_list_id", + field=models.CharField( + blank=True, max_length=20, null=True, verbose_name="ID newsletteru" + ), + ), + ] diff --git a/district/migrations/0120_alter_districthomepage_content_and_more.py b/district/migrations/0120_alter_districthomepage_content_and_more.py new file mode 100644 index 0000000000000000000000000000000000000000..4b6dbaf25b8e4e04ea225a295bc7f636c56583cc --- /dev/null +++ b/district/migrations/0120_alter_districthomepage_content_and_more.py @@ -0,0 +1,134 @@ +# Generated by Django 4.1.10 on 2023-07-27 11:58 + +import wagtail.blocks +import wagtail.fields +from django.db import migrations, models + + +class Migration(migrations.Migration): + dependencies = [ + ("district", "0119_districthomepage_newsletter_description_and_more"), + ] + + operations = [ + migrations.AlterField( + model_name="districthomepage", + name="content", + field=wagtail.fields.StreamField( + [ + ( + "text", + wagtail.blocks.RichTextBlock( + features=[ + "h2", + "h3", + "h4", + "h5", + "bold", + "italic", + "ol", + "ul", + "hr", + "link", + "document-link", + "image", + "superscript", + "subscript", + "strikethrough", + "blockquote", + "embed", + ], + label="Textový editor", + ), + ), + ( + "headline", + wagtail.blocks.StructBlock( + [ + ( + "headline", + wagtail.blocks.CharBlock( + label="Headline", max_length=300, required=True + ), + ), + ( + "style", + wagtail.blocks.ChoiceBlock( + choices=[ + ("head-alt-xl", "Bebas XL"), + ("head-alt-lg", "Bebas L"), + ("head-alt-md", "Bebas M"), + ("head-alt-base", "Bebas base"), + ("head-alt-sm", "Bebas SM"), + ("head-alt-xs", "Bebas XS"), + ("head-alt-2xs", "Bebas 2XS"), + ("head-heavy-base", "Roboto base"), + ("head-heavy-sm", "Roboto SM"), + ("head-heavy-xs", "Roboto XS"), + ("head-heavy-2xs", "Roboto 2XS"), + ("head-allcaps-2xs", "Allcaps 2XS"), + ("head-allcaps-3xs", "Allcaps 3XS"), + ("head-allcaps-4xs", "Allcaps 4XS"), + ( + "head-heavy-allcaps-2xs", + "Allcaps heavy 2XS", + ), + ( + "head-heavy-allcaps-3xs", + "Allcaps heavy 3XS", + ), + ( + "head-heavy-allcaps-4xs", + "Allcaps heavy 4XS", + ), + ], + help_text="Náhled si prohlédněte na https://styleguide.pir-test.eu/latest/?p=viewall-atoms-text.", + label="Styl", + ), + ), + ( + "tag", + wagtail.blocks.ChoiceBlock( + choices=[ + ("h1", "H1"), + ("h2", "H2"), + ("h3", "H3"), + ("h4", "H4"), + ("h5", "H5"), + ("h6", "H6"), + ], + help_text="Čím nižší číslo, tím vyšší úroveň.", + label="Úroveň nadpisu", + ), + ), + ( + "align", + wagtail.blocks.ChoiceBlock( + choices=[ + ("auto", "Automaticky"), + ("center", "Na střed"), + ], + label="Zarovnání", + ), + ), + ] + ), + ), + ], + blank=True, + use_json_field=True, + verbose_name="Obsah stránky", + ), + ), + migrations.AlterField( + model_name="districthomepage", + name="newsletter_list_id", + field=models.CharField( + blank=True, + help_text="ID newsletteru z Mailtrainu. Po vyplnění se formulář pro odběr newsletteru zobrazí na úvodní stránce a na stránce s kontakty.", + max_length=20, + null=True, + verbose_name="ID newsletteru", + ), + ), + ] diff --git a/district/models.py b/district/models.py index 17bbde63e932181651be2a3ac1db4d37227d4f67..b5cbea719ee70953150edb92c129dc69791055a0 100644 --- a/district/models.py +++ b/district/models.py @@ -106,10 +106,6 @@ class DistrictHomePage( ), ), ("headline", HeadlineBlock()), - ( - "newsletter", - NewsletterSubscriptionBlock(), - ), ], verbose_name="Obsah stránky", blank=True, @@ -198,6 +194,19 @@ class DistrictHomePage( default="https://dary.pirati.cz", ) + newsletter_list_id = models.CharField( + "ID newsletteru", + max_length=20, + blank=True, + null=True, + help_text="ID newsletteru z Mailtrainu. Po vyplnění se formulář pro odběr newsletteru zobrazí na úvodní stránce a na stránce s kontakty.", + ) + newsletter_description = models.CharField( + "Popis newsletteru", + max_length=250, + default="Fake news tam nenajdeš, ale dozvíš se, co chystáme doopravdy!", + ) + # Lide uvedeni v paticce footer_person_list = StreamField( [ @@ -292,6 +301,13 @@ class DistrictHomePage( ], gettext_lazy("Nastavení lišty s kalendářem a mapou"), ), + MultiFieldPanel( + [ + FieldPanel("newsletter_list_id"), + FieldPanel("newsletter_description"), + ], + gettext_lazy("Formulář pro odběr newsletteru"), + ), FieldPanel("footer_links"), FieldPanel("fallback_image"), ] @@ -384,6 +400,15 @@ class DistrictHomePage( def has_calendar(self): return self.calendar_id is not None + @property + def newsletter_info(self): + if not self.newsletter_list_id: + return None + return { + "list_id": self.newsletter_list_id, + "description": self.newsletter_description, + } + class DistrictArticleTag(TaggedItemBase): content_object = ParentalKey( diff --git a/district/templates/district/district_contact_page.html b/district/templates/district/district_contact_page.html index 79a5a1b1569b08ec4202ba3f128236a46354f31b..97432add429f161d529df9e391c724ae2394faa0 100644 --- a/district/templates/district/district_contact_page.html +++ b/district/templates/district/district_contact_page.html @@ -92,5 +92,11 @@ </section> </div> + {% if page.root_page.newsletter_info %} + <section class="my-8 lg:my-24 container-padding--zero lg:container-padding--auto"> + {% include "shared/blocks/newsletter_subscription_block.html" with value=page.root_page.newsletter_info %} + </section> + {% endif%} + {% include "shared/followus_snippet.html" %} {% endblock %} diff --git a/district/templates/district/district_home_page.html b/district/templates/district/district_home_page.html index 77e93b9e4d691997c5ce8f58a8859b22b254e8e9..bfe820497549cabb7ea6535b1d24f615693c8180 100644 --- a/district/templates/district/district_home_page.html +++ b/district/templates/district/district_home_page.html @@ -12,7 +12,7 @@ {% block content %} {% if page.content %} - <div class="mb-8"> + <div class="mb-8 lg:mb-24"> {% for block in page.content %} {% include_block block %} {% endfor %} @@ -30,22 +30,28 @@ {% endfor %} </div> - <div class="mb-8 lg:mb-16"> + <div class="mb-8 lg:mb-24"> {% include "shared/more_articles_snippet.html" %} </div> {% endif %} {% if page.election_countdown_datetime %} - <section class="my-8 lg:my-16 container-padding--zero lg:container-padding--auto"> + <section class="my-8 lg:my-24 container-padding--zero lg:container-padding--auto"> {% include "shared/election_countdown_snippet.html" %} </section> {% endif %} {% if page.show_calendar_on_hp %} - <section class="my-8 lg:my-16 container-padding--zero lg:container-padding--auto"> + <section class="my-8 lg:my-24 container-padding--zero lg:container-padding--auto"> {% include "shared/calendar_current_events_snippet.html" %} </section> {% endif %} + {% if page.newsletter_info %} + <section class="my-8 lg:my-24 container-padding--zero lg:container-padding--auto"> + {% include "shared/blocks/newsletter_subscription_block.html" with value=page.newsletter_info %} + </section> + {% endif%} + {% include "shared/followus_snippet.html" %} {% endblock %} diff --git a/shared/blocks.py b/shared/blocks.py index 116159f06cac003eba712c6a8aea19a1092bf2da..edc32b36391622b987944b9a20a483e7d5664f2d 100644 --- a/shared/blocks.py +++ b/shared/blocks.py @@ -1076,6 +1076,11 @@ class FooterLinksBlock(blocks.StructBlock): class NewsletterSubscriptionBlock(blocks.StructBlock): list_id = blocks.CharBlock(label="ID newsletteru", required=True) + description = blocks.CharBlock( + label="Popis newsletteru", + required=True, + default="Fake news tam nenajdeš, ale dozvíš se, co chystáme doopravdy!", + ) class Meta: label = "Formulář pro odebírání newsletteru" diff --git a/shared/templates/shared/blocks/newsletter_subscription_block.html b/shared/templates/shared/blocks/newsletter_subscription_block.html index 397de10ff0a70f0d406caaa009dd4e6ce8b7c913..c0bd416c9b4fd67a97264b7cf77c7bbdc8eaff56 100644 --- a/shared/templates/shared/blocks/newsletter_subscription_block.html +++ b/shared/templates/shared/blocks/newsletter_subscription_block.html @@ -11,7 +11,7 @@ Odebírej náš newsletter </h5> <span class="inline-block uppercase text-xl xl:text-base font-bold mb-4 xl:w-full"> - Fake news tam nenajdeš, ale dozvíš se, co chystáme doopravdy! + {{ value.description }} </span> <div data-success="true" style="display: none;"> <ul class="flex flex-col w-full drop-shadow-lg"> @@ -28,7 +28,7 @@ <formulate-input type="hidden" name="list_id" - value="{{ self.list_id }}" + value="{{ value.list_id }}" ></formulate-input> <formulate-input type="email" name="email" label="Tvůj e-mail" placeholder="Tvůj e-mail" validation-name="E-mail" validation="^required|email" error-behavior="blur" diff --git a/uniweb/migrations/0047_alter_uniwebflexiblepage_content_and_more.py b/uniweb/migrations/0047_alter_uniwebflexiblepage_content_and_more.py new file mode 100644 index 0000000000000000000000000000000000000000..0f271a7a21462e22473636c072b2287833495aca --- /dev/null +++ b/uniweb/migrations/0047_alter_uniwebflexiblepage_content_and_more.py @@ -0,0 +1,1239 @@ +# Generated by Django 4.1.10 on 2023-07-27 10:37 + +import wagtail.blocks +import wagtail.blocks.static_block +import wagtail.contrib.table_block.blocks +import wagtail.fields +import wagtail.images.blocks +from django.db import migrations + +import shared.blocks + + +class Migration(migrations.Migration): + dependencies = [ + ("uniweb", "0046_merge_20230711_1636"), + ] + + operations = [ + migrations.AlterField( + model_name="uniwebflexiblepage", + name="content", + field=wagtail.fields.StreamField( + [ + ( + "title", + wagtail.blocks.CharBlock( + group="nadpisy", + icon="title", + label="nadpis", + template="uniweb/blocks/title.html", + ), + ), + ( + "advanced_title", + wagtail.blocks.StructBlock( + [ + ( + "align", + wagtail.blocks.ChoiceBlock( + choices=[ + ("left", "vlevo"), + ("center", "uprostřed"), + ("right", "vpravo"), + ], + label="zarovnání", + ), + ), + ( + "color", + wagtail.blocks.ChoiceBlock( + choices=[ + ("black_on_white", "černá na bílé"), + ("white_on_black", "bílá na černé"), + ("white_on_blue", "bílá na modré"), + ("white_on_cyan", "bílá na tyrkysové"), + ("white_on_violet", "bílá na fialové"), + ], + label="barva", + ), + ), + ("title", wagtail.blocks.CharBlock(label="nadpis")), + ] + ), + ), + ( + "picture_title", + wagtail.blocks.StructBlock( + [ + ( + "color", + wagtail.blocks.ChoiceBlock( + choices=[ + ("black_on_white", "černá na bílé"), + ("white_on_black", "bílá na černé"), + ("white_on_blue", "bílá na modré"), + ("white_on_cyan", "bílá na tyrkysové"), + ("white_on_violet", "bílá na fialové"), + ], + label="barva", + ), + ), + ("title", wagtail.blocks.CharBlock(label="nadpis")), + ( + "picture", + wagtail.images.blocks.ImageChooserBlock( + help_text="rozměr na výšku 75px nebo více (obrázek bude zmenšen na výšku 75px)", + label="obrázek", + ), + ), + ] + ), + ), + ( + "text", + wagtail.blocks.RichTextBlock( + features=[ + "h2", + "h3", + "h4", + "h5", + "bold", + "italic", + "ol", + "ul", + "hr", + "link", + "document-link", + "image", + "superscript", + "subscript", + "strikethrough", + "blockquote", + "embed", + ], + group="texty", + label="text", + template="uniweb/blocks/text.html", + ), + ), + ( + "advanced_text", + wagtail.blocks.StructBlock( + [ + ( + "align", + wagtail.blocks.ChoiceBlock( + choices=[ + ("left", "vlevo"), + ("center", "uprostřed"), + ("right", "vpravo"), + ], + label="zarovnání", + ), + ), + ( + "color", + wagtail.blocks.ChoiceBlock( + choices=[ + ("black_on_white", "černá na bílé"), + ("white_on_black", "bílá na černé"), + ("white_on_blue", "bílá na modré"), + ("white_on_cyan", "bílá na tyrkysové"), + ("white_on_violet", "bílá na fialové"), + ], + label="barva", + ), + ), + ( + "text", + wagtail.blocks.RichTextBlock( + features=[ + "h2", + "h3", + "h4", + "h5", + "bold", + "italic", + "ol", + "ul", + "hr", + "link", + "document-link", + "image", + "superscript", + "subscript", + "strikethrough", + "blockquote", + "embed", + ], + label="text", + ), + ), + ] + ), + ), + ( + "text_columns", + wagtail.blocks.StructBlock( + [ + ( + "left_text", + wagtail.blocks.RichTextBlock( + features=[ + "h2", + "h3", + "h4", + "h5", + "bold", + "italic", + "ol", + "ul", + "hr", + "link", + "document-link", + "image", + "superscript", + "subscript", + "strikethrough", + "blockquote", + "embed", + ], + label="levý sloupec", + ), + ), + ( + "right_text", + wagtail.blocks.RichTextBlock( + features=[ + "h2", + "h3", + "h4", + "h5", + "bold", + "italic", + "ol", + "ul", + "hr", + "link", + "document-link", + "image", + "superscript", + "subscript", + "strikethrough", + "blockquote", + "embed", + ], + label="pravý sloupec", + ), + ), + ] + ), + ), + ( + "advanced_text_columns", + wagtail.blocks.StructBlock( + [ + ( + "align", + wagtail.blocks.ChoiceBlock( + choices=[ + ("left", "vlevo"), + ("center", "uprostřed"), + ("right", "vpravo"), + ], + label="zarovnání", + ), + ), + ( + "color", + wagtail.blocks.ChoiceBlock( + choices=[ + ("black_on_white", "černá na bílé"), + ("white_on_black", "bílá na černé"), + ("white_on_blue", "bílá na modré"), + ("white_on_cyan", "bílá na tyrkysové"), + ("white_on_violet", "bílá na fialové"), + ], + label="barva", + ), + ), + ( + "left_text", + wagtail.blocks.RichTextBlock( + features=[ + "h2", + "h3", + "h4", + "h5", + "bold", + "italic", + "ol", + "ul", + "hr", + "link", + "document-link", + "image", + "superscript", + "subscript", + "strikethrough", + "blockquote", + "embed", + ], + label="levý sloupec", + ), + ), + ( + "right_text", + wagtail.blocks.RichTextBlock( + features=[ + "h2", + "h3", + "h4", + "h5", + "bold", + "italic", + "ol", + "ul", + "hr", + "link", + "document-link", + "image", + "superscript", + "subscript", + "strikethrough", + "blockquote", + "embed", + ], + label="pravý sloupec", + ), + ), + ] + ), + ), + ( + "gallery", + wagtail.blocks.ListBlock( + wagtail.images.blocks.ImageChooserBlock(label="obrázek"), + group="ostatní", + icon="image", + label="galerie", + template="uniweb/blocks/gallery.html", + ), + ), + ( + "picture_list", + wagtail.blocks.StructBlock( + [ + ( + "color", + wagtail.blocks.ChoiceBlock( + choices=[ + ("black_on_white", "černá na bílé"), + ("white_on_black", "bílá na černé"), + ("white_on_blue", "bílá na modré"), + ("white_on_cyan", "bílá na tyrkysové"), + ("white_on_violet", "bílá na fialové"), + ], + label="barva", + ), + ), + ( + "items", + wagtail.blocks.ListBlock( + wagtail.blocks.RichTextBlock( + features=[ + "h2", + "h3", + "h4", + "h5", + "bold", + "italic", + "ol", + "ul", + "hr", + "link", + "document-link", + "image", + "superscript", + "subscript", + "strikethrough", + "blockquote", + "embed", + ], + label="odstavec", + ), + label="odstavce", + ), + ), + ( + "picture", + wagtail.images.blocks.ImageChooserBlock( + help_text="rozměr 25x25px nebo více (obrázek bude zmenšen na 25x25px)", + label="obrázek", + ), + ), + ] + ), + ), + ( + "table", + wagtail.contrib.table_block.blocks.TableBlock( + group="ostatní", + label="tabulka", + template="uniweb/blocks/table.html", + ), + ), + ( + "articles", + wagtail.blocks.StructBlock( + [ + ( + "page", + wagtail.blocks.PageChooserBlock( + label="sekce článků", + page_type=["uniweb.UniwebArticlesIndexPage"], + ), + ), + ( + "lines", + wagtail.blocks.IntegerBlock( + default=1, + help_text="zobrazí se tři články na řádek", + label="počet řádků", + ), + ), + ] + ), + ), + ( + "calendar_agenda", + wagtail.blocks.StructBlock( + [ + ( + "info", + wagtail.blocks.static_block.StaticBlock( + admin_text="adresa kalendáře se zadává v nastavení hlavní stránky webu", + label="volba kalendáře", + ), + ), + ( + "count", + wagtail.blocks.IntegerBlock( + default=10, label="maximum událostí k zobrazení" + ), + ), + ( + "event_type", + wagtail.blocks.ChoiceBlock( + choices=[ + ("future", "budoucí"), + ("past", "proběhlé"), + ], + label="druh událostí", + ), + ), + ] + ), + ), + ( + "chart", + wagtail.blocks.StructBlock( + [ + ( + "title", + wagtail.blocks.CharBlock( + label="Název", max_length=120 + ), + ), + ( + "chart_type", + wagtail.blocks.ChoiceBlock( + choices=[ + ("bar", "Graf se sloupci"), + ( + "horizontalBar", + "Graf s vodorovnými sloupci", + ), + ("pie", "Koláčový graf"), + ("doughnut", "Donutový graf"), + ("polarArea", "Graf polární oblasti"), + ("radar", "Radarový graf"), + ("line", "Graf s liniemi"), + ], + label="Typ", + ), + ), + ( + "hide_points", + wagtail.blocks.BooleanBlock( + help_text="Mění vzhled pouze u linových grafů.", + label="Schovat body", + required=False, + ), + ), + ( + "local_labels", + wagtail.blocks.ListBlock( + wagtail.blocks.CharBlock( + label="Skupina", max_length=40 + ), + blank=True, + collapsed=True, + default=[], + label="Místně definované skupiny", + required=False, + ), + ), + ( + "local_datasets", + wagtail.blocks.ListBlock( + wagtail.blocks.StructBlock( + [ + ( + "label", + wagtail.blocks.CharBlock( + label="Označení zdroje dat", + max_length=120, + ), + ), + ( + "data", + wagtail.blocks.ListBlock( + wagtail.blocks.IntegerBlock(), + default=[0], + label="Data", + ), + ), + ] + ), + blank=True, + collapsed=True, + default=[], + label="Místní zdroje dat", + required=False, + ), + ), + ( + "redmine_issue_datasets", + wagtail.blocks.ListBlock( + wagtail.blocks.StructBlock( + [ + ( + "projects", + wagtail.blocks.MultipleChoiceBlock( + choices=shared.blocks.get_redmine_projects, + label="Projekty", + ), + ), + ( + "is_open", + wagtail.blocks.BooleanBlock( + label="Jen otevřené", + required=False, + ), + ), + ( + "is_closed", + wagtail.blocks.BooleanBlock( + label="Jen uzavřené", + required=False, + ), + ), + ( + "created_on_min_date", + wagtail.blocks.DateBlock( + label="Min. datum vytvoření", + required=True, + ), + ), + ( + "created_on_max_date", + wagtail.blocks.DateBlock( + label="Max. datum vytvoření", + required=True, + ), + ), + ( + "updated_on", + wagtail.blocks.CharBlock( + help_text="Např. <=2023-01-01. Více informací na pi2.cz/redmine-api", + label="Filtr pro datum aktualizace", + max_length=128, + required=False, + ), + ), + ( + "issue_label", + wagtail.blocks.CharBlock( + label="Označení úkolů uvnitř grafu", + max_length=128, + required=True, + ), + ), + ( + "split_per_project", + wagtail.blocks.BooleanBlock( + label="Rozdělit podle projektu", + required=False, + ), + ), + ( + "only_grow", + wagtail.blocks.BooleanBlock( + label="Pouze růst nahoru", + required=False, + ), + ), + ], + label="Redmine úkoly", + ), + blank=True, + default=[], + help_text="Úkoly, podle doby vytvoření. Pokud definuješ více zdrojů, datumy v nich musí být stejné.", + label="Zdroje dat z Redmine (úkoly)", + required=False, + ), + ), + ], + template="uniweb/blocks/chart.html", + ), + ), + ( + "newsletter", + wagtail.blocks.StructBlock( + [ + ( + "list_id", + wagtail.blocks.CharBlock( + label="ID newsletteru", required=True + ), + ), + ( + "description", + wagtail.blocks.CharBlock( + default="Fake news tam nenajdeš, ale dozvíš se, co chystáme doopravdy!", + label="Popis newsletteru", + required=True, + ), + ), + ] + ), + ), + ], + blank=True, + use_json_field=True, + verbose_name="obsah stránky", + ), + ), + migrations.AlterField( + model_name="uniwebhomepage", + name="content", + field=wagtail.fields.StreamField( + [ + ( + "title", + wagtail.blocks.CharBlock( + group="nadpisy", + icon="title", + label="nadpis", + template="uniweb/blocks/title.html", + ), + ), + ( + "advanced_title", + wagtail.blocks.StructBlock( + [ + ( + "align", + wagtail.blocks.ChoiceBlock( + choices=[ + ("left", "vlevo"), + ("center", "uprostřed"), + ("right", "vpravo"), + ], + label="zarovnání", + ), + ), + ( + "color", + wagtail.blocks.ChoiceBlock( + choices=[ + ("black_on_white", "černá na bílé"), + ("white_on_black", "bílá na černé"), + ("white_on_blue", "bílá na modré"), + ("white_on_cyan", "bílá na tyrkysové"), + ("white_on_violet", "bílá na fialové"), + ], + label="barva", + ), + ), + ("title", wagtail.blocks.CharBlock(label="nadpis")), + ] + ), + ), + ( + "picture_title", + wagtail.blocks.StructBlock( + [ + ( + "color", + wagtail.blocks.ChoiceBlock( + choices=[ + ("black_on_white", "černá na bílé"), + ("white_on_black", "bílá na černé"), + ("white_on_blue", "bílá na modré"), + ("white_on_cyan", "bílá na tyrkysové"), + ("white_on_violet", "bílá na fialové"), + ], + label="barva", + ), + ), + ("title", wagtail.blocks.CharBlock(label="nadpis")), + ( + "picture", + wagtail.images.blocks.ImageChooserBlock( + help_text="rozměr na výšku 75px nebo více (obrázek bude zmenšen na výšku 75px)", + label="obrázek", + ), + ), + ] + ), + ), + ( + "text", + wagtail.blocks.RichTextBlock( + features=[ + "h2", + "h3", + "h4", + "h5", + "bold", + "italic", + "ol", + "ul", + "hr", + "link", + "document-link", + "image", + "superscript", + "subscript", + "strikethrough", + "blockquote", + "embed", + ], + group="texty", + label="text", + template="uniweb/blocks/text.html", + ), + ), + ( + "advanced_text", + wagtail.blocks.StructBlock( + [ + ( + "align", + wagtail.blocks.ChoiceBlock( + choices=[ + ("left", "vlevo"), + ("center", "uprostřed"), + ("right", "vpravo"), + ], + label="zarovnání", + ), + ), + ( + "color", + wagtail.blocks.ChoiceBlock( + choices=[ + ("black_on_white", "černá na bílé"), + ("white_on_black", "bílá na černé"), + ("white_on_blue", "bílá na modré"), + ("white_on_cyan", "bílá na tyrkysové"), + ("white_on_violet", "bílá na fialové"), + ], + label="barva", + ), + ), + ( + "text", + wagtail.blocks.RichTextBlock( + features=[ + "h2", + "h3", + "h4", + "h5", + "bold", + "italic", + "ol", + "ul", + "hr", + "link", + "document-link", + "image", + "superscript", + "subscript", + "strikethrough", + "blockquote", + "embed", + ], + label="text", + ), + ), + ] + ), + ), + ( + "text_columns", + wagtail.blocks.StructBlock( + [ + ( + "left_text", + wagtail.blocks.RichTextBlock( + features=[ + "h2", + "h3", + "h4", + "h5", + "bold", + "italic", + "ol", + "ul", + "hr", + "link", + "document-link", + "image", + "superscript", + "subscript", + "strikethrough", + "blockquote", + "embed", + ], + label="levý sloupec", + ), + ), + ( + "right_text", + wagtail.blocks.RichTextBlock( + features=[ + "h2", + "h3", + "h4", + "h5", + "bold", + "italic", + "ol", + "ul", + "hr", + "link", + "document-link", + "image", + "superscript", + "subscript", + "strikethrough", + "blockquote", + "embed", + ], + label="pravý sloupec", + ), + ), + ] + ), + ), + ( + "advanced_text_columns", + wagtail.blocks.StructBlock( + [ + ( + "align", + wagtail.blocks.ChoiceBlock( + choices=[ + ("left", "vlevo"), + ("center", "uprostřed"), + ("right", "vpravo"), + ], + label="zarovnání", + ), + ), + ( + "color", + wagtail.blocks.ChoiceBlock( + choices=[ + ("black_on_white", "černá na bílé"), + ("white_on_black", "bílá na černé"), + ("white_on_blue", "bílá na modré"), + ("white_on_cyan", "bílá na tyrkysové"), + ("white_on_violet", "bílá na fialové"), + ], + label="barva", + ), + ), + ( + "left_text", + wagtail.blocks.RichTextBlock( + features=[ + "h2", + "h3", + "h4", + "h5", + "bold", + "italic", + "ol", + "ul", + "hr", + "link", + "document-link", + "image", + "superscript", + "subscript", + "strikethrough", + "blockquote", + "embed", + ], + label="levý sloupec", + ), + ), + ( + "right_text", + wagtail.blocks.RichTextBlock( + features=[ + "h2", + "h3", + "h4", + "h5", + "bold", + "italic", + "ol", + "ul", + "hr", + "link", + "document-link", + "image", + "superscript", + "subscript", + "strikethrough", + "blockquote", + "embed", + ], + label="pravý sloupec", + ), + ), + ] + ), + ), + ( + "gallery", + wagtail.blocks.ListBlock( + wagtail.images.blocks.ImageChooserBlock(label="obrázek"), + group="ostatní", + icon="image", + label="galerie", + template="uniweb/blocks/gallery.html", + ), + ), + ( + "picture_list", + wagtail.blocks.StructBlock( + [ + ( + "color", + wagtail.blocks.ChoiceBlock( + choices=[ + ("black_on_white", "černá na bílé"), + ("white_on_black", "bílá na černé"), + ("white_on_blue", "bílá na modré"), + ("white_on_cyan", "bílá na tyrkysové"), + ("white_on_violet", "bílá na fialové"), + ], + label="barva", + ), + ), + ( + "items", + wagtail.blocks.ListBlock( + wagtail.blocks.RichTextBlock( + features=[ + "h2", + "h3", + "h4", + "h5", + "bold", + "italic", + "ol", + "ul", + "hr", + "link", + "document-link", + "image", + "superscript", + "subscript", + "strikethrough", + "blockquote", + "embed", + ], + label="odstavec", + ), + label="odstavce", + ), + ), + ( + "picture", + wagtail.images.blocks.ImageChooserBlock( + help_text="rozměr 25x25px nebo více (obrázek bude zmenšen na 25x25px)", + label="obrázek", + ), + ), + ] + ), + ), + ( + "table", + wagtail.contrib.table_block.blocks.TableBlock( + group="ostatní", + label="tabulka", + template="uniweb/blocks/table.html", + ), + ), + ( + "articles", + wagtail.blocks.StructBlock( + [ + ( + "page", + wagtail.blocks.PageChooserBlock( + label="sekce článků", + page_type=["uniweb.UniwebArticlesIndexPage"], + ), + ), + ( + "lines", + wagtail.blocks.IntegerBlock( + default=1, + help_text="zobrazí se tři články na řádek", + label="počet řádků", + ), + ), + ] + ), + ), + ( + "calendar_agenda", + wagtail.blocks.StructBlock( + [ + ( + "info", + wagtail.blocks.static_block.StaticBlock( + admin_text="adresa kalendáře se zadává v nastavení hlavní stránky webu", + label="volba kalendáře", + ), + ), + ( + "count", + wagtail.blocks.IntegerBlock( + default=10, label="maximum událostí k zobrazení" + ), + ), + ( + "event_type", + wagtail.blocks.ChoiceBlock( + choices=[ + ("future", "budoucí"), + ("past", "proběhlé"), + ], + label="druh událostí", + ), + ), + ] + ), + ), + ( + "chart", + wagtail.blocks.StructBlock( + [ + ( + "title", + wagtail.blocks.CharBlock( + label="Název", max_length=120 + ), + ), + ( + "chart_type", + wagtail.blocks.ChoiceBlock( + choices=[ + ("bar", "Graf se sloupci"), + ( + "horizontalBar", + "Graf s vodorovnými sloupci", + ), + ("pie", "Koláčový graf"), + ("doughnut", "Donutový graf"), + ("polarArea", "Graf polární oblasti"), + ("radar", "Radarový graf"), + ("line", "Graf s liniemi"), + ], + label="Typ", + ), + ), + ( + "hide_points", + wagtail.blocks.BooleanBlock( + help_text="Mění vzhled pouze u linových grafů.", + label="Schovat body", + required=False, + ), + ), + ( + "local_labels", + wagtail.blocks.ListBlock( + wagtail.blocks.CharBlock( + label="Skupina", max_length=40 + ), + blank=True, + collapsed=True, + default=[], + label="Místně definované skupiny", + required=False, + ), + ), + ( + "local_datasets", + wagtail.blocks.ListBlock( + wagtail.blocks.StructBlock( + [ + ( + "label", + wagtail.blocks.CharBlock( + label="Označení zdroje dat", + max_length=120, + ), + ), + ( + "data", + wagtail.blocks.ListBlock( + wagtail.blocks.IntegerBlock(), + default=[0], + label="Data", + ), + ), + ] + ), + blank=True, + collapsed=True, + default=[], + label="Místní zdroje dat", + required=False, + ), + ), + ( + "redmine_issue_datasets", + wagtail.blocks.ListBlock( + wagtail.blocks.StructBlock( + [ + ( + "projects", + wagtail.blocks.MultipleChoiceBlock( + choices=shared.blocks.get_redmine_projects, + label="Projekty", + ), + ), + ( + "is_open", + wagtail.blocks.BooleanBlock( + label="Jen otevřené", + required=False, + ), + ), + ( + "is_closed", + wagtail.blocks.BooleanBlock( + label="Jen uzavřené", + required=False, + ), + ), + ( + "created_on_min_date", + wagtail.blocks.DateBlock( + label="Min. datum vytvoření", + required=True, + ), + ), + ( + "created_on_max_date", + wagtail.blocks.DateBlock( + label="Max. datum vytvoření", + required=True, + ), + ), + ( + "updated_on", + wagtail.blocks.CharBlock( + help_text="Např. <=2023-01-01. Více informací na pi2.cz/redmine-api", + label="Filtr pro datum aktualizace", + max_length=128, + required=False, + ), + ), + ( + "issue_label", + wagtail.blocks.CharBlock( + label="Označení úkolů uvnitř grafu", + max_length=128, + required=True, + ), + ), + ( + "split_per_project", + wagtail.blocks.BooleanBlock( + label="Rozdělit podle projektu", + required=False, + ), + ), + ( + "only_grow", + wagtail.blocks.BooleanBlock( + label="Pouze růst nahoru", + required=False, + ), + ), + ], + label="Redmine úkoly", + ), + blank=True, + default=[], + help_text="Úkoly, podle doby vytvoření. Pokud definuješ více zdrojů, datumy v nich musí být stejné.", + label="Zdroje dat z Redmine (úkoly)", + required=False, + ), + ), + ], + template="uniweb/blocks/chart.html", + ), + ), + ( + "newsletter", + wagtail.blocks.StructBlock( + [ + ( + "list_id", + wagtail.blocks.CharBlock( + label="ID newsletteru", required=True + ), + ), + ( + "description", + wagtail.blocks.CharBlock( + default="Fake news tam nenajdeš, ale dozvíš se, co chystáme doopravdy!", + label="Popis newsletteru", + required=True, + ), + ), + ] + ), + ), + ], + blank=True, + use_json_field=True, + verbose_name="obsah stránky", + ), + ), + ]