From 5307d5fe194d33ef815e6c97e88dd9de64bf5023 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Tom=C3=A1=C5=A1=20Valenta?= <tomas@imaniti.org>
Date: Mon, 4 Mar 2024 17:23:50 +0100
Subject: [PATCH] allow GDPR from main page

---
 ...tions2021homepage_gdpr_and_cookies_page.py |   20 +
 ...tions2021homepage_gdpr_and_cookies_page.py |   20 +
 elections2021/models.py                       |    8 +-
 ...ter_uniwebflexiblepage_content_and_more.py | 3250 ++++++++++++++++-
 ...ter_uniwebflexiblepage_content_and_more.py |   44 +
 5 files changed, 3318 insertions(+), 24 deletions(-)
 create mode 100644 elections2021/migrations/0058_alter_elections2021homepage_gdpr_and_cookies_page.py
 create mode 100644 elections2021/migrations/0059_alter_elections2021homepage_gdpr_and_cookies_page.py
 create mode 100644 uniweb/migrations/0059_alter_uniwebflexiblepage_content_and_more.py

diff --git a/elections2021/migrations/0058_alter_elections2021homepage_gdpr_and_cookies_page.py b/elections2021/migrations/0058_alter_elections2021homepage_gdpr_and_cookies_page.py
new file mode 100644
index 00000000..5f4146a9
--- /dev/null
+++ b/elections2021/migrations/0058_alter_elections2021homepage_gdpr_and_cookies_page.py
@@ -0,0 +1,20 @@
+# Generated by Django 4.1.13 on 2024-03-04 16:16
+
+from django.db import migrations, models
+import django.db.models.deletion
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('main', '0077_alter_mainresultspage_content'),
+        ('elections2021', '0057_rename_date_elections2021articlepage_timestamp'),
+    ]
+
+    operations = [
+        migrations.AlterField(
+            model_name='elections2021homepage',
+            name='gdpr_and_cookies_page',
+            field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to='main.mainsimplepage', verbose_name='stránka GDPR a Cookies'),
+        ),
+    ]
diff --git a/elections2021/migrations/0059_alter_elections2021homepage_gdpr_and_cookies_page.py b/elections2021/migrations/0059_alter_elections2021homepage_gdpr_and_cookies_page.py
new file mode 100644
index 00000000..928c90cb
--- /dev/null
+++ b/elections2021/migrations/0059_alter_elections2021homepage_gdpr_and_cookies_page.py
@@ -0,0 +1,20 @@
+# Generated by Django 4.1.13 on 2024-03-04 16:19
+
+from django.db import migrations, models
+import django.db.models.deletion
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('main', '0077_alter_mainresultspage_content'),
+        ('elections2021', '0058_alter_elections2021homepage_gdpr_and_cookies_page'),
+    ]
+
+    operations = [
+        migrations.AlterField(
+            model_name='elections2021homepage',
+            name='gdpr_and_cookies_page',
+            field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to='main.mainsimplepage', verbose_name='Stránka GDPR a Cookies'),
+        ),
+    ]
diff --git a/elections2021/models.py b/elections2021/models.py
index 1bf82212..a56bbfca 100644
--- a/elections2021/models.py
+++ b/elections2021/models.py
@@ -218,8 +218,8 @@ class Elections2021HomePage(MetadataPageMixin, RoutablePageMixin, Page):
         use_json_field=True,
     )
     gdpr_and_cookies_page = models.ForeignKey(
-        "wagtailcore.Page",
-        verbose_name="stránka GDPR a Cookies",
+        "main.MainSimplePage",
+        verbose_name="Stránka GDPR a Cookies",
         null=True,
         blank=True,
         on_delete=models.SET_NULL,
@@ -302,9 +302,7 @@ class Elections2021HomePage(MetadataPageMixin, RoutablePageMixin, Page):
     footer_panels = [
         FieldPanel("footer_menu"),
         FieldPanel("footer_links"),
-        PageChooserPanel(
-            "gdpr_and_cookies_page", "elections2021.Elections2021TextPage"
-        ),
+        PageChooserPanel("gdpr_and_cookies_page", "main.MainSimplePage"),
     ]
 
     promote_panels = [
diff --git a/uniweb/migrations/0058_alter_uniwebflexiblepage_content_and_more.py b/uniweb/migrations/0058_alter_uniwebflexiblepage_content_and_more.py
index b8badad0..1c920ff1 100644
--- a/uniweb/migrations/0058_alter_uniwebflexiblepage_content_and_more.py
+++ b/uniweb/migrations/0058_alter_uniwebflexiblepage_content_and_more.py
@@ -1,44 +1,3256 @@
 # Generated by Django 4.1.13 on 2024-03-04 15:01
 
-from django.db import migrations
-import shared.blocks.base
 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.base
 
-class Migration(migrations.Migration):
 
+class Migration(migrations.Migration):
     dependencies = [
-        ('uniweb', '0057_alter_uniwebflexiblepage_content_and_more'),
+        ("uniweb", "0057_alter_uniwebflexiblepage_content_and_more"),
     ]
 
     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'))])), ('aligned_table', wagtail.blocks.StructBlock([('alignment', wagtail.blocks.ChoiceBlock(choices=[('left', 'Vlevo'), ('center', 'Vprostřed'), ('right', 'Vpravo')], label='Zarovnání')), ('table', wagtail.contrib.table_block.blocks.TableBlock(label='Tabulka'))], group='ostatní', template='uniweb/blocks/aligned_table.html')), ('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í'))])), ('button', wagtail.blocks.StructBlock([('text', wagtail.blocks.CharBlock(label='Nadpis')), ('url', wagtail.blocks.URLBlock(help_text='Pokud je odkaz vyplněný, není nutno vyplňovat stránku.', label='Odkaz', required=False)), ('page', wagtail.blocks.PageChooserBlock(help_text='Pokud je stránka vyplněná, není nutno vyplňovat odkaz.', label='Stránka', 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.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='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'),
+            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",
+                                    ),
+                                ),
+                            ]
+                        ),
+                    ),
+                    (
+                        "aligned_table",
+                        wagtail.blocks.StructBlock(
+                            [
+                                (
+                                    "alignment",
+                                    wagtail.blocks.ChoiceBlock(
+                                        choices=[
+                                            ("left", "Vlevo"),
+                                            ("center", "Vprostřed"),
+                                            ("right", "Vpravo"),
+                                        ],
+                                        label="Zarovnání",
+                                    ),
+                                ),
+                                (
+                                    "table",
+                                    wagtail.contrib.table_block.blocks.TableBlock(
+                                        label="Tabulka"
+                                    ),
+                                ),
+                            ],
+                            group="ostatní",
+                            template="uniweb/blocks/aligned_table.html",
+                        ),
+                    ),
+                    (
+                        "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í",
+                                    ),
+                                ),
+                            ]
+                        ),
+                    ),
+                    (
+                        "button",
+                        wagtail.blocks.StructBlock(
+                            [
+                                ("text", wagtail.blocks.CharBlock(label="Nadpis")),
+                                (
+                                    "url",
+                                    wagtail.blocks.URLBlock(
+                                        help_text="Pokud je odkaz vyplněný, není nutno vyplňovat stránku.",
+                                        label="Odkaz",
+                                        required=False,
+                                    ),
+                                ),
+                                (
+                                    "page",
+                                    wagtail.blocks.PageChooserBlock(
+                                        help_text="Pokud je stránka vyplněná, není nutno vyplňovat odkaz.",
+                                        label="Stránka",
+                                        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.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="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='uniwebformpage',
-            name='content_after',
-            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'))])), ('aligned_table', wagtail.blocks.StructBlock([('alignment', wagtail.blocks.ChoiceBlock(choices=[('left', 'Vlevo'), ('center', 'Vprostřed'), ('right', 'Vpravo')], label='Zarovnání')), ('table', wagtail.contrib.table_block.blocks.TableBlock(label='Tabulka'))], group='ostatní', template='uniweb/blocks/aligned_table.html')), ('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í'))])), ('button', wagtail.blocks.StructBlock([('text', wagtail.blocks.CharBlock(label='Nadpis')), ('url', wagtail.blocks.URLBlock(help_text='Pokud je odkaz vyplněný, není nutno vyplňovat stránku.', label='Odkaz', required=False)), ('page', wagtail.blocks.PageChooserBlock(help_text='Pokud je stránka vyplněná, není nutno vyplňovat odkaz.', label='Stránka', 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.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='uniweb/blocks/chart.html'))], blank=True, use_json_field=True, verbose_name='obsah stránky za formulářem'),
+            model_name="uniwebformpage",
+            name="content_after",
+            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",
+                                    ),
+                                ),
+                            ]
+                        ),
+                    ),
+                    (
+                        "aligned_table",
+                        wagtail.blocks.StructBlock(
+                            [
+                                (
+                                    "alignment",
+                                    wagtail.blocks.ChoiceBlock(
+                                        choices=[
+                                            ("left", "Vlevo"),
+                                            ("center", "Vprostřed"),
+                                            ("right", "Vpravo"),
+                                        ],
+                                        label="Zarovnání",
+                                    ),
+                                ),
+                                (
+                                    "table",
+                                    wagtail.contrib.table_block.blocks.TableBlock(
+                                        label="Tabulka"
+                                    ),
+                                ),
+                            ],
+                            group="ostatní",
+                            template="uniweb/blocks/aligned_table.html",
+                        ),
+                    ),
+                    (
+                        "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í",
+                                    ),
+                                ),
+                            ]
+                        ),
+                    ),
+                    (
+                        "button",
+                        wagtail.blocks.StructBlock(
+                            [
+                                ("text", wagtail.blocks.CharBlock(label="Nadpis")),
+                                (
+                                    "url",
+                                    wagtail.blocks.URLBlock(
+                                        help_text="Pokud je odkaz vyplněný, není nutno vyplňovat stránku.",
+                                        label="Odkaz",
+                                        required=False,
+                                    ),
+                                ),
+                                (
+                                    "page",
+                                    wagtail.blocks.PageChooserBlock(
+                                        help_text="Pokud je stránka vyplněná, není nutno vyplňovat odkaz.",
+                                        label="Stránka",
+                                        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.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="uniweb/blocks/chart.html",
+                        ),
+                    ),
+                ],
+                blank=True,
+                use_json_field=True,
+                verbose_name="obsah stránky za formulářem",
+            ),
         ),
         migrations.AlterField(
-            model_name='uniwebformpage',
-            name='content_before',
-            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'))])), ('aligned_table', wagtail.blocks.StructBlock([('alignment', wagtail.blocks.ChoiceBlock(choices=[('left', 'Vlevo'), ('center', 'Vprostřed'), ('right', 'Vpravo')], label='Zarovnání')), ('table', wagtail.contrib.table_block.blocks.TableBlock(label='Tabulka'))], group='ostatní', template='uniweb/blocks/aligned_table.html')), ('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í'))])), ('button', wagtail.blocks.StructBlock([('text', wagtail.blocks.CharBlock(label='Nadpis')), ('url', wagtail.blocks.URLBlock(help_text='Pokud je odkaz vyplněný, není nutno vyplňovat stránku.', label='Odkaz', required=False)), ('page', wagtail.blocks.PageChooserBlock(help_text='Pokud je stránka vyplněná, není nutno vyplňovat odkaz.', label='Stránka', 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.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='uniweb/blocks/chart.html'))], blank=True, use_json_field=True, verbose_name='obsah stránky před formulářem'),
+            model_name="uniwebformpage",
+            name="content_before",
+            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",
+                                    ),
+                                ),
+                            ]
+                        ),
+                    ),
+                    (
+                        "aligned_table",
+                        wagtail.blocks.StructBlock(
+                            [
+                                (
+                                    "alignment",
+                                    wagtail.blocks.ChoiceBlock(
+                                        choices=[
+                                            ("left", "Vlevo"),
+                                            ("center", "Vprostřed"),
+                                            ("right", "Vpravo"),
+                                        ],
+                                        label="Zarovnání",
+                                    ),
+                                ),
+                                (
+                                    "table",
+                                    wagtail.contrib.table_block.blocks.TableBlock(
+                                        label="Tabulka"
+                                    ),
+                                ),
+                            ],
+                            group="ostatní",
+                            template="uniweb/blocks/aligned_table.html",
+                        ),
+                    ),
+                    (
+                        "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í",
+                                    ),
+                                ),
+                            ]
+                        ),
+                    ),
+                    (
+                        "button",
+                        wagtail.blocks.StructBlock(
+                            [
+                                ("text", wagtail.blocks.CharBlock(label="Nadpis")),
+                                (
+                                    "url",
+                                    wagtail.blocks.URLBlock(
+                                        help_text="Pokud je odkaz vyplněný, není nutno vyplňovat stránku.",
+                                        label="Odkaz",
+                                        required=False,
+                                    ),
+                                ),
+                                (
+                                    "page",
+                                    wagtail.blocks.PageChooserBlock(
+                                        help_text="Pokud je stránka vyplněná, není nutno vyplňovat odkaz.",
+                                        label="Stránka",
+                                        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.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="uniweb/blocks/chart.html",
+                        ),
+                    ),
+                ],
+                blank=True,
+                use_json_field=True,
+                verbose_name="obsah stránky před formulářem",
+            ),
         ),
         migrations.AlterField(
-            model_name='uniwebformpage',
-            name='content_landing',
-            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'))])), ('aligned_table', wagtail.blocks.StructBlock([('alignment', wagtail.blocks.ChoiceBlock(choices=[('left', 'Vlevo'), ('center', 'Vprostřed'), ('right', 'Vpravo')], label='Zarovnání')), ('table', wagtail.contrib.table_block.blocks.TableBlock(label='Tabulka'))], group='ostatní', template='uniweb/blocks/aligned_table.html')), ('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í'))])), ('button', wagtail.blocks.StructBlock([('text', wagtail.blocks.CharBlock(label='Nadpis')), ('url', wagtail.blocks.URLBlock(help_text='Pokud je odkaz vyplněný, není nutno vyplňovat stránku.', label='Odkaz', required=False)), ('page', wagtail.blocks.PageChooserBlock(help_text='Pokud je stránka vyplněná, není nutno vyplňovat odkaz.', label='Stránka', 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.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='uniweb/blocks/chart.html'))], blank=True, use_json_field=True, verbose_name='obsah stránky zobrazené po odeslání formuláře'),
+            model_name="uniwebformpage",
+            name="content_landing",
+            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",
+                                    ),
+                                ),
+                            ]
+                        ),
+                    ),
+                    (
+                        "aligned_table",
+                        wagtail.blocks.StructBlock(
+                            [
+                                (
+                                    "alignment",
+                                    wagtail.blocks.ChoiceBlock(
+                                        choices=[
+                                            ("left", "Vlevo"),
+                                            ("center", "Vprostřed"),
+                                            ("right", "Vpravo"),
+                                        ],
+                                        label="Zarovnání",
+                                    ),
+                                ),
+                                (
+                                    "table",
+                                    wagtail.contrib.table_block.blocks.TableBlock(
+                                        label="Tabulka"
+                                    ),
+                                ),
+                            ],
+                            group="ostatní",
+                            template="uniweb/blocks/aligned_table.html",
+                        ),
+                    ),
+                    (
+                        "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í",
+                                    ),
+                                ),
+                            ]
+                        ),
+                    ),
+                    (
+                        "button",
+                        wagtail.blocks.StructBlock(
+                            [
+                                ("text", wagtail.blocks.CharBlock(label="Nadpis")),
+                                (
+                                    "url",
+                                    wagtail.blocks.URLBlock(
+                                        help_text="Pokud je odkaz vyplněný, není nutno vyplňovat stránku.",
+                                        label="Odkaz",
+                                        required=False,
+                                    ),
+                                ),
+                                (
+                                    "page",
+                                    wagtail.blocks.PageChooserBlock(
+                                        help_text="Pokud je stránka vyplněná, není nutno vyplňovat odkaz.",
+                                        label="Stránka",
+                                        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.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="uniweb/blocks/chart.html",
+                        ),
+                    ),
+                ],
+                blank=True,
+                use_json_field=True,
+                verbose_name="obsah stránky zobrazené po odeslání formuláře",
+            ),
         ),
         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'))])), ('aligned_table', wagtail.blocks.StructBlock([('alignment', wagtail.blocks.ChoiceBlock(choices=[('left', 'Vlevo'), ('center', 'Vprostřed'), ('right', 'Vpravo')], label='Zarovnání')), ('table', wagtail.contrib.table_block.blocks.TableBlock(label='Tabulka'))], group='ostatní', template='uniweb/blocks/aligned_table.html')), ('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í'))])), ('button', wagtail.blocks.StructBlock([('text', wagtail.blocks.CharBlock(label='Nadpis')), ('url', wagtail.blocks.URLBlock(help_text='Pokud je odkaz vyplněný, není nutno vyplňovat stránku.', label='Odkaz', required=False)), ('page', wagtail.blocks.PageChooserBlock(help_text='Pokud je stránka vyplněná, není nutno vyplňovat odkaz.', label='Stránka', 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.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='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'),
+            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",
+                                    ),
+                                ),
+                            ]
+                        ),
+                    ),
+                    (
+                        "aligned_table",
+                        wagtail.blocks.StructBlock(
+                            [
+                                (
+                                    "alignment",
+                                    wagtail.blocks.ChoiceBlock(
+                                        choices=[
+                                            ("left", "Vlevo"),
+                                            ("center", "Vprostřed"),
+                                            ("right", "Vpravo"),
+                                        ],
+                                        label="Zarovnání",
+                                    ),
+                                ),
+                                (
+                                    "table",
+                                    wagtail.contrib.table_block.blocks.TableBlock(
+                                        label="Tabulka"
+                                    ),
+                                ),
+                            ],
+                            group="ostatní",
+                            template="uniweb/blocks/aligned_table.html",
+                        ),
+                    ),
+                    (
+                        "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í",
+                                    ),
+                                ),
+                            ]
+                        ),
+                    ),
+                    (
+                        "button",
+                        wagtail.blocks.StructBlock(
+                            [
+                                ("text", wagtail.blocks.CharBlock(label="Nadpis")),
+                                (
+                                    "url",
+                                    wagtail.blocks.URLBlock(
+                                        help_text="Pokud je odkaz vyplněný, není nutno vyplňovat stránku.",
+                                        label="Odkaz",
+                                        required=False,
+                                    ),
+                                ),
+                                (
+                                    "page",
+                                    wagtail.blocks.PageChooserBlock(
+                                        help_text="Pokud je stránka vyplněná, není nutno vyplňovat odkaz.",
+                                        label="Stránka",
+                                        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.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="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",
+            ),
         ),
     ]
diff --git a/uniweb/migrations/0059_alter_uniwebflexiblepage_content_and_more.py b/uniweb/migrations/0059_alter_uniwebflexiblepage_content_and_more.py
new file mode 100644
index 00000000..4fa87b64
--- /dev/null
+++ b/uniweb/migrations/0059_alter_uniwebflexiblepage_content_and_more.py
@@ -0,0 +1,44 @@
+# Generated by Django 4.1.13 on 2024-03-04 16:16
+
+from django.db import migrations
+import shared.blocks.base
+import wagtail.blocks
+import wagtail.blocks.static_block
+import wagtail.contrib.table_block.blocks
+import wagtail.fields
+import wagtail.images.blocks
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('uniweb', '0058_alter_uniwebflexiblepage_content_and_more'),
+    ]
+
+    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'))])), ('aligned_table', wagtail.blocks.StructBlock([('alignment', wagtail.blocks.ChoiceBlock(choices=[('left', 'Vlevo'), ('center', 'Vprostřed'), ('right', 'Vpravo'), ('full', 'Celá šířka obrazovky')], label='Zarovnání')), ('table', wagtail.contrib.table_block.blocks.TableBlock(label='Tabulka'))], group='ostatní', template='uniweb/blocks/aligned_table.html')), ('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í'))])), ('button', wagtail.blocks.StructBlock([('text', wagtail.blocks.CharBlock(label='Nadpis')), ('url', wagtail.blocks.URLBlock(help_text='Pokud je odkaz vyplněný, není nutno vyplňovat stránku.', label='Odkaz', required=False)), ('page', wagtail.blocks.PageChooserBlock(help_text='Pokud je stránka vyplněná, není nutno vyplňovat odkaz.', label='Stránka', 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.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='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='uniwebformpage',
+            name='content_after',
+            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'))])), ('aligned_table', wagtail.blocks.StructBlock([('alignment', wagtail.blocks.ChoiceBlock(choices=[('left', 'Vlevo'), ('center', 'Vprostřed'), ('right', 'Vpravo'), ('full', 'Celá šířka obrazovky')], label='Zarovnání')), ('table', wagtail.contrib.table_block.blocks.TableBlock(label='Tabulka'))], group='ostatní', template='uniweb/blocks/aligned_table.html')), ('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í'))])), ('button', wagtail.blocks.StructBlock([('text', wagtail.blocks.CharBlock(label='Nadpis')), ('url', wagtail.blocks.URLBlock(help_text='Pokud je odkaz vyplněný, není nutno vyplňovat stránku.', label='Odkaz', required=False)), ('page', wagtail.blocks.PageChooserBlock(help_text='Pokud je stránka vyplněná, není nutno vyplňovat odkaz.', label='Stránka', 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.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='uniweb/blocks/chart.html'))], blank=True, use_json_field=True, verbose_name='obsah stránky za formulářem'),
+        ),
+        migrations.AlterField(
+            model_name='uniwebformpage',
+            name='content_before',
+            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'))])), ('aligned_table', wagtail.blocks.StructBlock([('alignment', wagtail.blocks.ChoiceBlock(choices=[('left', 'Vlevo'), ('center', 'Vprostřed'), ('right', 'Vpravo'), ('full', 'Celá šířka obrazovky')], label='Zarovnání')), ('table', wagtail.contrib.table_block.blocks.TableBlock(label='Tabulka'))], group='ostatní', template='uniweb/blocks/aligned_table.html')), ('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í'))])), ('button', wagtail.blocks.StructBlock([('text', wagtail.blocks.CharBlock(label='Nadpis')), ('url', wagtail.blocks.URLBlock(help_text='Pokud je odkaz vyplněný, není nutno vyplňovat stránku.', label='Odkaz', required=False)), ('page', wagtail.blocks.PageChooserBlock(help_text='Pokud je stránka vyplněná, není nutno vyplňovat odkaz.', label='Stránka', 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.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='uniweb/blocks/chart.html'))], blank=True, use_json_field=True, verbose_name='obsah stránky před formulářem'),
+        ),
+        migrations.AlterField(
+            model_name='uniwebformpage',
+            name='content_landing',
+            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'))])), ('aligned_table', wagtail.blocks.StructBlock([('alignment', wagtail.blocks.ChoiceBlock(choices=[('left', 'Vlevo'), ('center', 'Vprostřed'), ('right', 'Vpravo'), ('full', 'Celá šířka obrazovky')], label='Zarovnání')), ('table', wagtail.contrib.table_block.blocks.TableBlock(label='Tabulka'))], group='ostatní', template='uniweb/blocks/aligned_table.html')), ('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í'))])), ('button', wagtail.blocks.StructBlock([('text', wagtail.blocks.CharBlock(label='Nadpis')), ('url', wagtail.blocks.URLBlock(help_text='Pokud je odkaz vyplněný, není nutno vyplňovat stránku.', label='Odkaz', required=False)), ('page', wagtail.blocks.PageChooserBlock(help_text='Pokud je stránka vyplněná, není nutno vyplňovat odkaz.', label='Stránka', 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.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='uniweb/blocks/chart.html'))], blank=True, use_json_field=True, verbose_name='obsah stránky zobrazené po odeslání formuláře'),
+        ),
+        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'))])), ('aligned_table', wagtail.blocks.StructBlock([('alignment', wagtail.blocks.ChoiceBlock(choices=[('left', 'Vlevo'), ('center', 'Vprostřed'), ('right', 'Vpravo'), ('full', 'Celá šířka obrazovky')], label='Zarovnání')), ('table', wagtail.contrib.table_block.blocks.TableBlock(label='Tabulka'))], group='ostatní', template='uniweb/blocks/aligned_table.html')), ('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í'))])), ('button', wagtail.blocks.StructBlock([('text', wagtail.blocks.CharBlock(label='Nadpis')), ('url', wagtail.blocks.URLBlock(help_text='Pokud je odkaz vyplněný, není nutno vyplňovat stránku.', label='Odkaz', required=False)), ('page', wagtail.blocks.PageChooserBlock(help_text='Pokud je stránka vyplněná, není nutno vyplňovat odkaz.', label='Stránka', 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.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='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'),
+        ),
+    ]
-- 
GitLab