Skip to content
Snippets Groups Projects
Commit 1c16ed63 authored by Alexa Valentová's avatar Alexa Valentová
Browse files

fix newsletter, newsletter blocks

parent d4e79caa
No related branches found
No related tags found
2 merge requests!1029Release,!1028Fix newsletter blocks
# Generated by Django 5.0.6 on 2024-06-21 10:21
import shared.blocks.base
import wagtail.blocks
import wagtail.contrib.table_block.blocks
import wagtail.fields
import wagtail.images.blocks
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
('district', '0237_auto_20240620_1443'),
]
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', template='styleguide2/includes/atoms/text/prose_richtext.html')), ('headline', wagtail.blocks.StructBlock([('headline', wagtail.blocks.CharBlock(label='Nadpis', max_length=300, required=True)), ('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')), ('style', wagtail.blocks.ChoiceBlock(choices=[('head-alt-xl', 'Velký, Bebas Neue - 6XL'), ('head-alt-lg', 'Střední, Bebas Neue - 4XL'), ('head-alt-md', 'Základní velikost - Roboto - MD'), ('head-alt-sm', 'Malý - Roboto - SM'), ('head-alt-xs', 'Extra malý - Roboto - XS')], help_text='Náhled si prohlédněte na https://styleguide2.pirati.cz/pattern/patterns/atoms/text/headings.html.', label='Velikost')), ('align', wagtail.blocks.ChoiceBlock(choices=[('auto', 'Automaticky'), ('center', 'Na střed')], label='Zarovnání'))])), ('table', wagtail.contrib.table_block.blocks.TableBlock(label='Tabulka', template='styleguide2/includes/atoms/table/table.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)), ('headline', wagtail.blocks.TextBlock(label='Titulek', 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(label='Tabulka', template='styleguide2/includes/atoms/table/table.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(label='Tabulka', template='styleguide2/includes/atoms/table/table.html')), ('card', wagtail.blocks.StructBlock([('img', wagtail.images.blocks.ImageChooserBlock(label='Obrázek', required=False)), ('headline', wagtail.blocks.TextBlock(label='Titulek', 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(label='Tabulka', template='styleguide2/includes/atoms/table/table.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)), ('color', wagtail.blocks.ChoiceBlock(choices=[('black', 'Černá'), ('white', 'Bílá'), ('pirati-yellow', 'Žlutá'), ('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 při najetí kurzorem ukáže žlutou šipku.', label='Animovat na hover', 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)), ('color', wagtail.blocks.ChoiceBlock(choices=[('black', 'Černá'), ('white', 'Bílá'), ('pirati-yellow', 'Žlutá'), ('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 při najetí kurzorem ukáže žlutou šipku.', label='Animovat na hover', 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(label='Tabulka', template='styleguide2/includes/atoms/table/table.html')), ('card', wagtail.blocks.StructBlock([('img', wagtail.images.blocks.ImageChooserBlock(label='Obrázek', required=False)), ('headline', wagtail.blocks.TextBlock(label='Titulek', 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(label='Tabulka', template='styleguide2/includes/atoms/table/table.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)), ('color', wagtail.blocks.ChoiceBlock(choices=[('black', 'Černá'), ('white', 'Bílá'), ('pirati-yellow', 'Žlutá'), ('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 při najetí kurzorem ukáže žlutou šipku.', label='Animovat na hover', 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)), ('color', wagtail.blocks.ChoiceBlock(choices=[('black', 'Černá'), ('white', 'Bílá'), ('pirati-yellow', 'Žlutá'), ('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 při najetí kurzorem ukáže žlutou šipku.', label='Animovat na hover', 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(label='Tabulka', template='styleguide2/includes/atoms/table/table.html')), ('card', wagtail.blocks.StructBlock([('img', wagtail.images.blocks.ImageChooserBlock(label='Obrázek', required=False)), ('headline', wagtail.blocks.TextBlock(label='Titulek', 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(label='Tabulka', template='styleguide2/includes/atoms/table/table.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)), ('color', wagtail.blocks.ChoiceBlock(choices=[('black', 'Černá'), ('white', 'Bílá'), ('pirati-yellow', 'Žlutá'), ('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 při najetí kurzorem ukáže žlutou šipku.', label='Animovat na hover', 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)), ('color', wagtail.blocks.ChoiceBlock(choices=[('black', 'Černá'), ('white', 'Bílá'), ('pirati-yellow', 'Žlutá'), ('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 při najetí kurzorem ukáže žlutou šipku.', label='Animovat na hover', 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(label='Tabulka', template='styleguide2/includes/atoms/table/table.html')), ('card', wagtail.blocks.StructBlock([('img', wagtail.images.blocks.ImageChooserBlock(label='Obrázek', required=False)), ('headline', wagtail.blocks.TextBlock(label='Titulek', 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(label='Tabulka', template='styleguide2/includes/atoms/table/table.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)), ('color', wagtail.blocks.ChoiceBlock(choices=[('black', 'Černá'), ('white', 'Bílá'), ('pirati-yellow', 'Žlutá'), ('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 při najetí kurzorem ukáže žlutou šipku.', label='Animovat na hover', 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)), ('color', wagtail.blocks.ChoiceBlock(choices=[('black', 'Černá'), ('white', 'Bílá'), ('pirati-yellow', 'Žlutá'), ('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 při najetí kurzorem ukáže žlutou šipku.', label='Animovat na hover', 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(label='Tabulka', template='styleguide2/includes/atoms/table/table.html')), ('card', wagtail.blocks.StructBlock([('img', wagtail.images.blocks.ImageChooserBlock(label='Obrázek', required=False)), ('headline', wagtail.blocks.TextBlock(label='Titulek', 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(label='Tabulka', template='styleguide2/includes/atoms/table/table.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)), ('color', wagtail.blocks.ChoiceBlock(choices=[('black', 'Černá'), ('white', 'Bílá'), ('pirati-yellow', 'Žlutá'), ('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 při najetí kurzorem ukáže žlutou šipku.', label='Animovat na hover', 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)), ('color', wagtail.blocks.ChoiceBlock(choices=[('black', 'Černá'), ('white', 'Bílá'), ('pirati-yellow', 'Žlutá'), ('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 při najetí kurzorem ukáže žlutou šipku.', label='Animovat na hover', 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)), ('color', wagtail.blocks.ChoiceBlock(choices=[('black', 'Černá'), ('white', 'Bílá'), ('pirati-yellow', 'Žlutá'), ('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 při najetí kurzorem ukáže žlutou šipku.', label='Animovat na hover', 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)), ('color', wagtail.blocks.ChoiceBlock(choices=[('black', 'Černá'), ('white', 'Bílá'), ('pirati-yellow', 'Žlutá'), ('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 při najetí kurzorem ukáže žlutou šipku.', label='Animovat na hover', 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'))])), ('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.base.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)), ('caption', wagtail.blocks.CharBlock(help_text='Vlastní popisek na vizitce. Pokud není uvedeno, použije se výchozí profese osoby.', label='Popisek', required=False))])), ('new_people_group', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock(label='Titulek')), ('slug', wagtail.blocks.CharBlock(help_text='Není třeba vyplňovat, bude automaticky vyplněno', label='Slug skupiny', required=False)), ('person_list_with_custom_positions', wagtail.blocks.ListBlock(wagtail.blocks.StructBlock([('page', wagtail.blocks.PageChooserBlock(label='Detail osoby', page_type=['district.DistrictPersonPage'])), ('position', wagtail.blocks.CharBlock(help_text='Pokud není pozice vyplněná, použije se pozice ze stránky osoby.', label='Pozice', required=False))]), label='Skupina osob'))])), ('newsletter', wagtail.blocks.StructBlock([('list_id', wagtail.blocks.CharBlock(label='ID newsletteru', required=True)), ('title_line_1', wagtail.blocks.CharBlock(default='Odebírej náš', label='Nadpis bloku (1. řádek)', required=True)), ('title_line_2', wagtail.blocks.CharBlock(default='newsletter', label='Nadpis bloku (2. řádek)', 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, verbose_name='Obsah'),
),
]
import json import json
from functools import cached_property
from django.core.cache import cache from django.core.cache import cache
from django.core.exceptions import ValidationError from django.core.exceptions import ValidationError
from django.db import models from django.db import models
from django.conf import settings
from django.http import HttpResponseRedirect from django.http import HttpResponseRedirect
from modelcluster.contrib.taggit import ClusterTaggableManager from modelcluster.contrib.taggit import ClusterTaggableManager
from modelcluster.fields import ParentalKey from modelcluster.fields import ParentalKey
from wagtail.contrib.routable_page.models import RoutablePageMixin
from taggit.models import TaggedItemBase from taggit.models import TaggedItemBase
from wagtail.admin.panels import ( from wagtail.admin.panels import (
FieldPanel, FieldPanel,
...@@ -21,6 +24,8 @@ from wagtailmetadata.models import MetadataPageMixin ...@@ -21,6 +24,8 @@ from wagtailmetadata.models import MetadataPageMixin
from calendar_utils.models import CalendarMixin from calendar_utils.models import CalendarMixin
from maps_utils.blocks import MapPointBlock from maps_utils.blocks import MapPointBlock
from shared.forms import SubscribeForm
from wagtail.contrib.routable_page.models import route
from maps_utils.const import ( from maps_utils.const import (
DEFAULT_MAP_STYLE, DEFAULT_MAP_STYLE,
MAP_STYLES, MAP_STYLES,
...@@ -55,7 +60,7 @@ from shared.models import ( ...@@ -55,7 +60,7 @@ from shared.models import (
SharedTaggedDistrictArticle, SharedTaggedDistrictArticle,
SubpageMixin, SubpageMixin,
) )
from shared.utils import make_promote_panels, strip_all_html_tags, trim_to_length from shared.utils import make_promote_panels, strip_all_html_tags, subscribe_to_newsletter, trim_to_length
from . import blocks from . import blocks
from .forms import JekyllImportForm from .forms import JekyllImportForm
...@@ -636,7 +641,7 @@ class DistrictSearchPage(MainSearchPageMixin): ...@@ -636,7 +641,7 @@ class DistrictSearchPage(MainSearchPageMixin):
parent_page_types = ["district.DistrictHomePage"] parent_page_types = ["district.DistrictHomePage"]
class DistrictCustomPage(MainSimplePageMixin): class DistrictCustomPage(RoutablePageMixin, MainSimplePageMixin):
### FIELDS ### FIELDS
main_image = models.ForeignKey( main_image = models.ForeignKey(
...@@ -672,6 +677,63 @@ class DistrictCustomPage(MainSimplePageMixin): ...@@ -672,6 +677,63 @@ class DistrictCustomPage(MainSimplePageMixin):
parent_page_types = ["district.DistrictHomePage", "district.DistrictCrossroadPage"] parent_page_types = ["district.DistrictHomePage", "district.DistrictCrossroadPage"]
subpage_types = [] subpage_types = []
### OTHERS
@cached_property
def newsletter_subscribe_url(self):
newsletter_subscribe = self.reverse_subpage("newsletter_subscribe")
return (
self.url + newsletter_subscribe
if self.url is not None
else newsletter_subscribe
) # preview fix
@route(r"^prihlaseni-k-newsletteru/$")
def newsletter_subscribe(self, request):
if request.method == "POST":
form = SubscribeForm(request.POST)
if form.is_valid():
subscribe_to_newsletter(
form.cleaned_data["email"],
(
self.newsletter_list_id
if hasattr(self, "newsletter_list_id") and self.newsletter_list_id
else settings.PIRATICZ_NEWSLETTER_CID
)
)
messages.success(
request,
"Zkontroluj si prosím schránku, poslali jsme ti potvrzovací email.",
)
try:
page = (
Page.objects.filter(id=form.cleaned_data["return_page_id"])
.live()
.first()
)
return HttpResponseRedirect(page.full_url)
except Page.DoesNotExist:
return HttpResponseRedirect(self.url)
messages.error(
request,
"Tvůj prohlížeč nám odeslal špatná data. Prosím, zkus to znovu.",
)
return HttpResponseRedirect(self.url)
@property
def newsletter_list_id(self) -> str:
for block in self.content:
if block.block_type == "newsletter":
return block.value["list_id"]
return self.root_page.newsletter_list_id
class DistrictGeoFeatureCollectionPage( class DistrictGeoFeatureCollectionPage(
ExtendedMetadataPageMixin, SubpageMixin, MetadataPageMixin, Page ExtendedMetadataPageMixin, SubpageMixin, MetadataPageMixin, Page
......
...@@ -1053,6 +1053,19 @@ class FooterLinksBlock(blocks.StructBlock): ...@@ -1053,6 +1053,19 @@ class FooterLinksBlock(blocks.StructBlock):
class NewsletterSubscriptionBlock(blocks.StructBlock): class NewsletterSubscriptionBlock(blocks.StructBlock):
list_id = blocks.CharBlock(label="ID newsletteru", required=True) list_id = blocks.CharBlock(label="ID newsletteru", required=True)
title_line_1 = blocks.CharBlock(
label = "Nadpis bloku (1. řádek)",
required=True,
default="Odebírej náš"
)
title_line_2 = blocks.CharBlock(
label = "Nadpis bloku (2. řádek)",
required=True,
default="newsletter"
)
description = blocks.CharBlock( description = blocks.CharBlock(
label="Popis newsletteru", label="Popis newsletteru",
required=True, required=True,
...@@ -1062,7 +1075,7 @@ class NewsletterSubscriptionBlock(blocks.StructBlock): ...@@ -1062,7 +1075,7 @@ class NewsletterSubscriptionBlock(blocks.StructBlock):
class Meta: class Meta:
label = "Formulář pro odebírání newsletteru" label = "Formulář pro odebírání newsletteru"
icon = "form" icon = "form"
template = "shared/blocks/newsletter_subscription_block.html" template = "styleguide2/includes/organisms/main_section/newsletter_section.html"
DEFAULT_CONTENT_BLOCKS = [ DEFAULT_CONTENT_BLOCKS = [
......
...@@ -29,7 +29,7 @@ from wagtail.blocks import PageChooserBlock, RichTextBlock ...@@ -29,7 +29,7 @@ from wagtail.blocks import PageChooserBlock, RichTextBlock
from wagtail.contrib.routable_page.models import RoutablePageMixin, route from wagtail.contrib.routable_page.models import RoutablePageMixin, route
from wagtail.documents.models import Document from wagtail.documents.models import Document
from wagtail.fields import RichTextField, StreamField from wagtail.fields import RichTextField, StreamField
from wagtail.models import Page from wagtail.models import Page, Site
from wagtail.search import index from wagtail.search import index
from wagtailmetadata.models import MetadataPageMixin from wagtailmetadata.models import MetadataPageMixin
...@@ -1160,9 +1160,15 @@ class MainHomePageMixin( ...@@ -1160,9 +1160,15 @@ class MainHomePageMixin(
def newsletter_subscribe(self, request): def newsletter_subscribe(self, request):
if request.method == "POST": if request.method == "POST":
form = SubscribeForm(request.POST) form = SubscribeForm(request.POST)
if form.is_valid(): if form.is_valid():
subscribe_to_newsletter( subscribe_to_newsletter(
form.cleaned_data["email"], settings.PIRATICZ_NEWSLETTER_CID form.cleaned_data["email"],
(
self.newsletter_list_id
if hasattr(self, "newsletter_list_id") and self.newsletter_list_id
else settings.PIRATICZ_NEWSLETTER_CID
)
) )
messages.success( messages.success(
......
...@@ -6,11 +6,24 @@ ...@@ -6,11 +6,24 @@
> >
<div class="container--medium pt-32 pb-24"> <div class="container--medium pt-32 pb-24">
<h2 class="head-14xl"> <h2 class="head-14xl">
Odebírej náš<br> {% if self.title_line_1 %}
{{ self.title_line_1 }}
{% else %}
Odebírej náš
{% endif %}
<br>
{% if self.title_line_2 %}
{{ self.title_line_2 }}
{% else %}
newsletter newsletter
{% endif %}
</h2> </h2>
<p class="xl:mt-[-1rem]"> <p class="xl:mt-[-1rem]">
{% if page.newsletter_description %} {% if self.description %}
{{ self.description }}
{% elif page.newsletter_description %}
{{ page.newsletter_description }} {{ page.newsletter_description }}
{% else %} {% else %}
Fake news tam nenajdeš, ale dozvíš se, co chystáme doopravdy! Fake news tam nenajdeš, ale dozvíš se, co chystáme doopravdy!
...@@ -20,13 +33,19 @@ ...@@ -20,13 +33,19 @@
<form <form
class="flex flex-col gap-2 mt-12 items-start" class="flex flex-col gap-2 mt-12 items-start"
method="post" method="post"
action="{{ page.root_page.newsletter_subscribe_url }}" action="
{% if page.newsletter_subscribe_url %}
{{ page.newsletter_subscribe_url }}
{% else %}
{{ page.root_page.newsletter_subscribe_url }}
{% endif %}
"
> >
{% csrf_token %} {% csrf_token %}
<input type="hidden" name="return_page_id" value="{{ page.id }}"> <input type="hidden" name="return_page_id" value="{{ page.id }}">
{% include 'styleguide2/includes/atoms/form_fields/form_input.html' with name="email" placeholder='Tvůj email' classes='mb-3 w-full md:w-96' %} {% include 'styleguide2/includes/atoms/form_fields/form_input.html' with name="email" placeholder='Tvůj email' classes='mb-3 w-full md:w-96' value='' %}
<div class="checkbox flex items-center mb-3"> <div class="checkbox flex items-center mb-3">
<input type="checkbox" id="confirmed" name="confirmed" required> <input type="checkbox" id="confirmed" name="confirmed" required>
......
...@@ -10,11 +10,17 @@ ...@@ -10,11 +10,17 @@
{% include 'styleguide2/includes/organisms/header/simple_header.html' with title=page.title %} {% include 'styleguide2/includes/organisms/header/simple_header.html' with title=page.title %}
{% endblock %} {% endblock %}
<main class="container--wide mb-2 lg:mb-12"> <main class="mb-2 lg:mb-12">
{% block inner_content %} {% block inner_content %}
<div class="mt-8"> <div class="mt-8">
{% for block in page.content %} {% for block in page.content %}
{% if block.block_type != "newsletter" %}
<div class="container--wide">
{% include_block block %} {% include_block block %}
</div>
{% else %}
{% include_block block %}
{% endif %}
{% endfor %} {% endfor %}
{% endblock %} {% endblock %}
</div> </div>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment