Skip to content
Snippets Groups Projects
0047_alter_uniwebflexiblepage_content_and_more.py 62.47 KiB
# Generated by Django 4.1.10 on 2023-07-27 10:37

import wagtail.blocks
import wagtail.blocks.static_block
import wagtail.contrib.table_block.blocks
import wagtail.fields
import wagtail.images.blocks
from django.db import migrations

import shared.blocks


class Migration(migrations.Migration):
    dependencies = [
        ("uniweb", "0046_merge_20230711_1636"),
    ]

    operations = [
        migrations.AlterField(
            model_name="uniwebflexiblepage",
            name="content",
            field=wagtail.fields.StreamField(
                [
                    (
                        "title",
                        wagtail.blocks.CharBlock(
                            group="nadpisy",
                            icon="title",
                            label="nadpis",
                            template="uniweb/blocks/title.html",
                        ),
                    ),
                    (
                        "advanced_title",
                        wagtail.blocks.StructBlock(
                            [
                                (
                                    "align",
                                    wagtail.blocks.ChoiceBlock(
                                        choices=[
                                            ("left", "vlevo"),
                                            ("center", "uprostřed"),
                                            ("right", "vpravo"),
                                        ],
                                        label="zarovnání",
                                    ),
                                ),
                                (
                                    "color",
                                    wagtail.blocks.ChoiceBlock(
                                        choices=[
                                            ("black_on_white", "černá na bílé"),
                                            ("white_on_black", "bílá na černé"),
                                            ("white_on_blue", "bílá na modré"),
                                            ("white_on_cyan", "bílá na tyrkysové"),
                                            ("white_on_violet", "bílá na fialové"),
                                        ],
                                        label="barva",
                                    ),
                                ),
                                ("title", wagtail.blocks.CharBlock(label="nadpis")),
                            ]
                        ),
                    ),
                    (
                        "picture_title",
                        wagtail.blocks.StructBlock(
                            [
                                (
                                    "color",
                                    wagtail.blocks.ChoiceBlock(
                                        choices=[
                                            ("black_on_white", "černá na bílé"),
                                            ("white_on_black", "bílá na černé"),
                                            ("white_on_blue", "bílá na modré"),
                                            ("white_on_cyan", "bílá na tyrkysové"),
                                            ("white_on_violet", "bílá na fialové"),
                                        ],
                                        label="barva",
                                    ),
                                ),
                                ("title", wagtail.blocks.CharBlock(label="nadpis")),
                                (
                                    "picture",
                                    wagtail.images.blocks.ImageChooserBlock(
                                        help_text="rozměr na výšku 75px nebo více (obrázek bude zmenšen na výšku 75px)",
                                        label="obrázek",
                                    ),
                                ),
                            ]
                        ),
                    ),
                    (
                        "text",
                        wagtail.blocks.RichTextBlock(
                            features=[
                                "h2",
                                "h3",
                                "h4",
                                "h5",
                                "bold",
                                "italic",
                                "ol",
                                "ul",
                                "hr",
                                "link",
                                "document-link",
                                "image",
                                "superscript",
                                "subscript",
                                "strikethrough",
                                "blockquote",
                                "embed",
                            ],
                            group="texty",
                            label="text",
                            template="uniweb/blocks/text.html",
                        ),
                    ),
                    (
                        "advanced_text",
                        wagtail.blocks.StructBlock(
                            [
                                (
                                    "align",
                                    wagtail.blocks.ChoiceBlock(
                                        choices=[
                                            ("left", "vlevo"),
                                            ("center", "uprostřed"),
                                            ("right", "vpravo"),
                                        ],
                                        label="zarovnání",
                                    ),
                                ),
                                (
                                    "color",
                                    wagtail.blocks.ChoiceBlock(
                                        choices=[
                                            ("black_on_white", "černá na bílé"),
                                            ("white_on_black", "bílá na černé"),
                                            ("white_on_blue", "bílá na modré"),
                                            ("white_on_cyan", "bílá na tyrkysové"),
                                            ("white_on_violet", "bílá na fialové"),
                                        ],
                                        label="barva",
                                    ),
                                ),
                                (
                                    "text",
                                    wagtail.blocks.RichTextBlock(
                                        features=[
                                            "h2",
                                            "h3",
                                            "h4",
                                            "h5",
                                            "bold",
                                            "italic",
                                            "ol",
                                            "ul",
                                            "hr",
                                            "link",
                                            "document-link",
                                            "image",
                                            "superscript",
                                            "subscript",
                                            "strikethrough",
                                            "blockquote",
                                            "embed",
                                        ],
                                        label="text",
                                    ),
                                ),
                            ]
                        ),
                    ),
                    (
                        "text_columns",
                        wagtail.blocks.StructBlock(
                            [
                                (
                                    "left_text",
                                    wagtail.blocks.RichTextBlock(
                                        features=[
                                            "h2",
                                            "h3",
                                            "h4",
                                            "h5",
                                            "bold",
                                            "italic",
                                            "ol",
                                            "ul",
                                            "hr",
                                            "link",
                                            "document-link",
                                            "image",
                                            "superscript",
                                            "subscript",
                                            "strikethrough",
                                            "blockquote",
                                            "embed",
                                        ],
                                        label="levý sloupec",
                                    ),
                                ),
                                (
                                    "right_text",
                                    wagtail.blocks.RichTextBlock(
                                        features=[
                                            "h2",
                                            "h3",
                                            "h4",
                                            "h5",
                                            "bold",
                                            "italic",
                                            "ol",
                                            "ul",
                                            "hr",
                                            "link",
                                            "document-link",
                                            "image",
                                            "superscript",
                                            "subscript",
                                            "strikethrough",
                                            "blockquote",
                                            "embed",
                                        ],
                                        label="pravý sloupec",
                                    ),
                                ),
                            ]
                        ),
                    ),
                    (
                        "advanced_text_columns",
                        wagtail.blocks.StructBlock(
                            [
                                (
                                    "align",
                                    wagtail.blocks.ChoiceBlock(
                                        choices=[
                                            ("left", "vlevo"),
                                            ("center", "uprostřed"),
                                            ("right", "vpravo"),
                                        ],
                                        label="zarovnání",
                                    ),
                                ),
                                (
                                    "color",
                                    wagtail.blocks.ChoiceBlock(
                                        choices=[
                                            ("black_on_white", "černá na bílé"),
                                            ("white_on_black", "bílá na černé"),
                                            ("white_on_blue", "bílá na modré"),
                                            ("white_on_cyan", "bílá na tyrkysové"),
                                            ("white_on_violet", "bílá na fialové"),
                                        ],
                                        label="barva",
                                    ),
                                ),
                                (
                                    "left_text",
                                    wagtail.blocks.RichTextBlock(
                                        features=[
                                            "h2",
                                            "h3",
                                            "h4",
                                            "h5",
                                            "bold",
                                            "italic",
                                            "ol",
                                            "ul",
                                            "hr",
                                            "link",
                                            "document-link",
                                            "image",
                                            "superscript",
                                            "subscript",
                                            "strikethrough",
                                            "blockquote",
                                            "embed",
                                        ],
                                        label="levý sloupec",
                                    ),
                                ),
                                (
                                    "right_text",
                                    wagtail.blocks.RichTextBlock(
                                        features=[
                                            "h2",
                                            "h3",
                                            "h4",
                                            "h5",
                                            "bold",
                                            "italic",
                                            "ol",
                                            "ul",
                                            "hr",
                                            "link",
                                            "document-link",
                                            "image",
                                            "superscript",
                                            "subscript",
                                            "strikethrough",
                                            "blockquote",
                                            "embed",
                                        ],
                                        label="pravý sloupec",
                                    ),
                                ),
                            ]
                        ),
                    ),
                    (
                        "gallery",
                        wagtail.blocks.ListBlock(
                            wagtail.images.blocks.ImageChooserBlock(label="obrázek"),
                            group="ostatní",
                            icon="image",
                            label="galerie",
                            template="uniweb/blocks/gallery.html",
                        ),
                    ),
                    (
                        "picture_list",
                        wagtail.blocks.StructBlock(
                            [
                                (
                                    "color",
                                    wagtail.blocks.ChoiceBlock(
                                        choices=[
                                            ("black_on_white", "černá na bílé"),
                                            ("white_on_black", "bílá na černé"),
                                            ("white_on_blue", "bílá na modré"),
                                            ("white_on_cyan", "bílá na tyrkysové"),
                                            ("white_on_violet", "bílá na fialové"),
                                        ],
                                        label="barva",
                                    ),
                                ),
                                (
                                    "items",
                                    wagtail.blocks.ListBlock(
                                        wagtail.blocks.RichTextBlock(
                                            features=[
                                                "h2",
                                                "h3",
                                                "h4",
                                                "h5",
                                                "bold",
                                                "italic",
                                                "ol",
                                                "ul",
                                                "hr",
                                                "link",
                                                "document-link",
                                                "image",
                                                "superscript",
                                                "subscript",
                                                "strikethrough",
                                                "blockquote",
                                                "embed",
                                            ],
                                            label="odstavec",
                                        ),
                                        label="odstavce",
                                    ),
                                ),
                                (
                                    "picture",
                                    wagtail.images.blocks.ImageChooserBlock(
                                        help_text="rozměr 25x25px nebo více (obrázek bude zmenšen na 25x25px)",
                                        label="obrázek",
                                    ),
                                ),
                            ]
                        ),
                    ),
                    (
                        "table",
                        wagtail.contrib.table_block.blocks.TableBlock(
                            group="ostatní",
                            label="tabulka",
                            template="uniweb/blocks/table.html",
                        ),
                    ),
                    (
                        "articles",
                        wagtail.blocks.StructBlock(
                            [
                                (
                                    "page",
                                    wagtail.blocks.PageChooserBlock(
                                        label="sekce článků",
                                        page_type=["uniweb.UniwebArticlesIndexPage"],
                                    ),
                                ),
                                (
                                    "lines",
                                    wagtail.blocks.IntegerBlock(
                                        default=1,
                                        help_text="zobrazí se tři články na řádek",
                                        label="počet řádků",
                                    ),
                                ),
                            ]
                        ),
                    ),
                    (
                        "calendar_agenda",
                        wagtail.blocks.StructBlock(
                            [
                                (
                                    "info",
                                    wagtail.blocks.static_block.StaticBlock(
                                        admin_text="adresa kalendáře se zadává v nastavení hlavní stránky webu",
                                        label="volba kalendáře",
                                    ),
                                ),
                                (
                                    "count",
                                    wagtail.blocks.IntegerBlock(
                                        default=10, label="maximum událostí k zobrazení"
                                    ),
                                ),
                                (
                                    "event_type",
                                    wagtail.blocks.ChoiceBlock(
                                        choices=[
                                            ("future", "budoucí"),
                                            ("past", "proběhlé"),
                                        ],
                                        label="druh událostí",
                                    ),
                                ),
                            ]
                        ),
                    ),
                    (
                        "chart",
                        wagtail.blocks.StructBlock(
                            [
                                (
                                    "title",
                                    wagtail.blocks.CharBlock(
                                        label="Název", max_length=120
                                    ),
                                ),
                                (
                                    "chart_type",
                                    wagtail.blocks.ChoiceBlock(
                                        choices=[
                                            ("bar", "Graf se sloupci"),
                                            (
                                                "horizontalBar",
                                                "Graf s vodorovnými sloupci",
                                            ),
                                            ("pie", "Koláčový graf"),
                                            ("doughnut", "Donutový graf"),
                                            ("polarArea", "Graf polární oblasti"),
                                            ("radar", "Radarový graf"),
                                            ("line", "Graf s liniemi"),
                                        ],
                                        label="Typ",
                                    ),
                                ),
                                (
                                    "hide_points",
                                    wagtail.blocks.BooleanBlock(
                                        help_text="Mění vzhled pouze u linových grafů.",
                                        label="Schovat body",
                                        required=False,
                                    ),
                                ),
                                (
                                    "local_labels",
                                    wagtail.blocks.ListBlock(
                                        wagtail.blocks.CharBlock(
                                            label="Skupina", max_length=40
                                        ),
                                        blank=True,
                                        collapsed=True,
                                        default=[],
                                        label="Místně definované skupiny",
                                        required=False,
                                    ),
                                ),
                                (
                                    "local_datasets",
                                    wagtail.blocks.ListBlock(
                                        wagtail.blocks.StructBlock(
                                            [
                                                (
                                                    "label",
                                                    wagtail.blocks.CharBlock(
                                                        label="Označení zdroje dat",
                                                        max_length=120,
                                                    ),
                                                ),
                                                (
                                                    "data",
                                                    wagtail.blocks.ListBlock(
                                                        wagtail.blocks.IntegerBlock(),
                                                        default=[0],
                                                        label="Data",
                                                    ),
                                                ),
                                            ]
                                        ),
                                        blank=True,
                                        collapsed=True,
                                        default=[],
                                        label="Místní zdroje dat",
                                        required=False,
                                    ),
                                ),
                                (
                                    "redmine_issue_datasets",
                                    wagtail.blocks.ListBlock(
                                        wagtail.blocks.StructBlock(
                                            [
                                                (
                                                    "projects",
                                                    wagtail.blocks.MultipleChoiceBlock(
                                                        choices=shared.blocks.get_redmine_projects,
                                                        label="Projekty",
                                                    ),
                                                ),
                                                (
                                                    "is_open",
                                                    wagtail.blocks.BooleanBlock(
                                                        label="Jen otevřené",
                                                        required=False,
                                                    ),
                                                ),
                                                (
                                                    "is_closed",
                                                    wagtail.blocks.BooleanBlock(
                                                        label="Jen uzavřené",
                                                        required=False,
                                                    ),
                                                ),
                                                (
                                                    "created_on_min_date",
                                                    wagtail.blocks.DateBlock(
                                                        label="Min. datum vytvoření",
                                                        required=True,
                                                    ),
                                                ),
                                                (
                                                    "created_on_max_date",
                                                    wagtail.blocks.DateBlock(
                                                        label="Max. datum vytvoření",
                                                        required=True,
                                                    ),
                                                ),
                                                (
                                                    "updated_on",
                                                    wagtail.blocks.CharBlock(
                                                        help_text="Např. <=2023-01-01. Více informací na pi2.cz/redmine-api",
                                                        label="Filtr pro datum aktualizace",
                                                        max_length=128,
                                                        required=False,
                                                    ),
                                                ),
                                                (
                                                    "issue_label",
                                                    wagtail.blocks.CharBlock(
                                                        label="Označení úkolů uvnitř grafu",
                                                        max_length=128,
                                                        required=True,
                                                    ),
                                                ),
                                                (
                                                    "split_per_project",
                                                    wagtail.blocks.BooleanBlock(
                                                        label="Rozdělit podle projektu",
                                                        required=False,
                                                    ),
                                                ),
                                                (
                                                    "only_grow",
                                                    wagtail.blocks.BooleanBlock(
                                                        label="Pouze růst nahoru",
                                                        required=False,
                                                    ),
                                                ),
                                            ],
                                            label="Redmine úkoly",
                                        ),
                                        blank=True,
                                        default=[],
                                        help_text="Úkoly, podle doby vytvoření. Pokud definuješ více zdrojů, datumy v nich musí být stejné.",
                                        label="Zdroje dat z Redmine (úkoly)",
                                        required=False,
                                    ),
                                ),
                            ],
                            template="uniweb/blocks/chart.html",
                        ),
                    ),
                    (
                        "newsletter",
                        wagtail.blocks.StructBlock(
                            [
                                (
                                    "list_id",
                                    wagtail.blocks.CharBlock(
                                        label="ID newsletteru", required=True
                                    ),
                                ),
                                (
                                    "description",
                                    wagtail.blocks.CharBlock(
                                        default="Fake news tam nenajdeš, ale dozvíš se, co chystáme doopravdy!",
                                        label="Popis newsletteru",
                                        required=True,
                                    ),
                                ),
                            ]
                        ),
                    ),
                ],
                blank=True,
                use_json_field=True,
                verbose_name="obsah stránky",
            ),
        ),
        migrations.AlterField(
            model_name="uniwebhomepage",
            name="content",
            field=wagtail.fields.StreamField(
                [
                    (
                        "title",
                        wagtail.blocks.CharBlock(
                            group="nadpisy",
                            icon="title",
                            label="nadpis",
                            template="uniweb/blocks/title.html",
                        ),
                    ),
                    (
                        "advanced_title",
                        wagtail.blocks.StructBlock(
                            [
                                (
                                    "align",
                                    wagtail.blocks.ChoiceBlock(
                                        choices=[
                                            ("left", "vlevo"),
                                            ("center", "uprostřed"),
                                            ("right", "vpravo"),
                                        ],
                                        label="zarovnání",
                                    ),
                                ),
                                (
                                    "color",
                                    wagtail.blocks.ChoiceBlock(
                                        choices=[
                                            ("black_on_white", "černá na bílé"),
                                            ("white_on_black", "bílá na černé"),
                                            ("white_on_blue", "bílá na modré"),
                                            ("white_on_cyan", "bílá na tyrkysové"),
                                            ("white_on_violet", "bílá na fialové"),
                                        ],
                                        label="barva",
                                    ),
                                ),
                                ("title", wagtail.blocks.CharBlock(label="nadpis")),
                            ]
                        ),
                    ),
                    (
                        "picture_title",
                        wagtail.blocks.StructBlock(
                            [
                                (
                                    "color",
                                    wagtail.blocks.ChoiceBlock(
                                        choices=[
                                            ("black_on_white", "černá na bílé"),
                                            ("white_on_black", "bílá na černé"),
                                            ("white_on_blue", "bílá na modré"),
                                            ("white_on_cyan", "bílá na tyrkysové"),
                                            ("white_on_violet", "bílá na fialové"),
                                        ],
                                        label="barva",
                                    ),
                                ),
                                ("title", wagtail.blocks.CharBlock(label="nadpis")),
                                (
                                    "picture",
                                    wagtail.images.blocks.ImageChooserBlock(
                                        help_text="rozměr na výšku 75px nebo více (obrázek bude zmenšen na výšku 75px)",
                                        label="obrázek",
                                    ),
                                ),
                            ]
                        ),
                    ),
                    (
                        "text",
                        wagtail.blocks.RichTextBlock(
                            features=[
                                "h2",
                                "h3",
                                "h4",
                                "h5",
                                "bold",
                                "italic",
                                "ol",
                                "ul",
                                "hr",
                                "link",
                                "document-link",
                                "image",
                                "superscript",
                                "subscript",
                                "strikethrough",
                                "blockquote",
                                "embed",
                            ],
                            group="texty",
                            label="text",
                            template="uniweb/blocks/text.html",
                        ),
                    ),
                    (
                        "advanced_text",
                        wagtail.blocks.StructBlock(
                            [
                                (
                                    "align",
                                    wagtail.blocks.ChoiceBlock(
                                        choices=[
                                            ("left", "vlevo"),
                                            ("center", "uprostřed"),
                                            ("right", "vpravo"),
                                        ],
                                        label="zarovnání",
                                    ),
                                ),
                                (
                                    "color",
                                    wagtail.blocks.ChoiceBlock(
                                        choices=[
                                            ("black_on_white", "černá na bílé"),
                                            ("white_on_black", "bílá na černé"),
                                            ("white_on_blue", "bílá na modré"),
                                            ("white_on_cyan", "bílá na tyrkysové"),
                                            ("white_on_violet", "bílá na fialové"),
                                        ],
                                        label="barva",
                                    ),
                                ),
                                (
                                    "text",
                                    wagtail.blocks.RichTextBlock(
                                        features=[
                                            "h2",
                                            "h3",
                                            "h4",
                                            "h5",
                                            "bold",
                                            "italic",
                                            "ol",
                                            "ul",
                                            "hr",
                                            "link",
                                            "document-link",
                                            "image",
                                            "superscript",
                                            "subscript",
                                            "strikethrough",
                                            "blockquote",
                                            "embed",
                                        ],
                                        label="text",
                                    ),
                                ),
                            ]
                        ),
                    ),
                    (
                        "text_columns",
                        wagtail.blocks.StructBlock(
                            [
                                (
                                    "left_text",
                                    wagtail.blocks.RichTextBlock(
                                        features=[
                                            "h2",
                                            "h3",
                                            "h4",
                                            "h5",
                                            "bold",
                                            "italic",
                                            "ol",
                                            "ul",
                                            "hr",
                                            "link",
                                            "document-link",
                                            "image",
                                            "superscript",
                                            "subscript",
                                            "strikethrough",
                                            "blockquote",
                                            "embed",
                                        ],
                                        label="levý sloupec",
                                    ),
                                ),
                                (
                                    "right_text",
                                    wagtail.blocks.RichTextBlock(
                                        features=[
                                            "h2",
                                            "h3",
                                            "h4",
                                            "h5",
                                            "bold",
                                            "italic",
                                            "ol",
                                            "ul",
                                            "hr",
                                            "link",
                                            "document-link",
                                            "image",
                                            "superscript",
                                            "subscript",
                                            "strikethrough",
                                            "blockquote",
                                            "embed",
                                        ],
                                        label="pravý sloupec",
                                    ),
                                ),
                            ]
                        ),
                    ),
                    (
                        "advanced_text_columns",
                        wagtail.blocks.StructBlock(
                            [
                                (
                                    "align",
                                    wagtail.blocks.ChoiceBlock(
                                        choices=[
                                            ("left", "vlevo"),
                                            ("center", "uprostřed"),
                                            ("right", "vpravo"),
                                        ],
                                        label="zarovnání",
                                    ),
                                ),
                                (
                                    "color",
                                    wagtail.blocks.ChoiceBlock(
                                        choices=[
                                            ("black_on_white", "černá na bílé"),
                                            ("white_on_black", "bílá na černé"),
                                            ("white_on_blue", "bílá na modré"),
                                            ("white_on_cyan", "bílá na tyrkysové"),
                                            ("white_on_violet", "bílá na fialové"),
                                        ],
                                        label="barva",
                                    ),
                                ),
                                (
                                    "left_text",
                                    wagtail.blocks.RichTextBlock(
                                        features=[
                                            "h2",
                                            "h3",
                                            "h4",
                                            "h5",
                                            "bold",
                                            "italic",
                                            "ol",
                                            "ul",
                                            "hr",
                                            "link",
                                            "document-link",
                                            "image",
                                            "superscript",
                                            "subscript",
                                            "strikethrough",
                                            "blockquote",
                                            "embed",
                                        ],
                                        label="levý sloupec",
                                    ),
                                ),
                                (
                                    "right_text",
                                    wagtail.blocks.RichTextBlock(
                                        features=[
                                            "h2",
                                            "h3",
                                            "h4",
                                            "h5",
                                            "bold",
                                            "italic",
                                            "ol",
                                            "ul",
                                            "hr",
                                            "link",
                                            "document-link",
                                            "image",
                                            "superscript",
                                            "subscript",
                                            "strikethrough",
                                            "blockquote",
                                            "embed",
                                        ],
                                        label="pravý sloupec",
                                    ),
                                ),
                            ]
                        ),
                    ),
                    (
                        "gallery",
                        wagtail.blocks.ListBlock(
                            wagtail.images.blocks.ImageChooserBlock(label="obrázek"),
                            group="ostatní",
                            icon="image",
                            label="galerie",
                            template="uniweb/blocks/gallery.html",
                        ),
                    ),
                    (
                        "picture_list",
                        wagtail.blocks.StructBlock(
                            [
                                (
                                    "color",
                                    wagtail.blocks.ChoiceBlock(
                                        choices=[
                                            ("black_on_white", "černá na bílé"),
                                            ("white_on_black", "bílá na černé"),
                                            ("white_on_blue", "bílá na modré"),
                                            ("white_on_cyan", "bílá na tyrkysové"),
                                            ("white_on_violet", "bílá na fialové"),
                                        ],
                                        label="barva",
                                    ),
                                ),
                                (
                                    "items",
                                    wagtail.blocks.ListBlock(
                                        wagtail.blocks.RichTextBlock(
                                            features=[
                                                "h2",
                                                "h3",
                                                "h4",
                                                "h5",
                                                "bold",
                                                "italic",
                                                "ol",
                                                "ul",
                                                "hr",
                                                "link",
                                                "document-link",
                                                "image",
                                                "superscript",
                                                "subscript",
                                                "strikethrough",
                                                "blockquote",
                                                "embed",
                                            ],
                                            label="odstavec",
                                        ),
                                        label="odstavce",
                                    ),
                                ),
                                (
                                    "picture",
                                    wagtail.images.blocks.ImageChooserBlock(
                                        help_text="rozměr 25x25px nebo více (obrázek bude zmenšen na 25x25px)",
                                        label="obrázek",
                                    ),
                                ),
                            ]
                        ),
                    ),
                    (
                        "table",
                        wagtail.contrib.table_block.blocks.TableBlock(
                            group="ostatní",
                            label="tabulka",
                            template="uniweb/blocks/table.html",
                        ),
                    ),
                    (
                        "articles",
                        wagtail.blocks.StructBlock(
                            [
                                (
                                    "page",
                                    wagtail.blocks.PageChooserBlock(
                                        label="sekce článků",
                                        page_type=["uniweb.UniwebArticlesIndexPage"],
                                    ),
                                ),
                                (
                                    "lines",
                                    wagtail.blocks.IntegerBlock(
                                        default=1,
                                        help_text="zobrazí se tři články na řádek",
                                        label="počet řádků",
                                    ),
                                ),
                            ]
                        ),
                    ),
                    (
                        "calendar_agenda",
                        wagtail.blocks.StructBlock(
                            [
                                (
                                    "info",
                                    wagtail.blocks.static_block.StaticBlock(
                                        admin_text="adresa kalendáře se zadává v nastavení hlavní stránky webu",
                                        label="volba kalendáře",
                                    ),
                                ),
                                (
                                    "count",
                                    wagtail.blocks.IntegerBlock(
                                        default=10, label="maximum událostí k zobrazení"
                                    ),
                                ),
                                (
                                    "event_type",
                                    wagtail.blocks.ChoiceBlock(
                                        choices=[
                                            ("future", "budoucí"),
                                            ("past", "proběhlé"),
                                        ],
                                        label="druh událostí",
                                    ),
                                ),
                            ]
                        ),
                    ),
                    (
                        "chart",
                        wagtail.blocks.StructBlock(
                            [
                                (
                                    "title",
                                    wagtail.blocks.CharBlock(
                                        label="Název", max_length=120
                                    ),
                                ),
                                (
                                    "chart_type",
                                    wagtail.blocks.ChoiceBlock(
                                        choices=[
                                            ("bar", "Graf se sloupci"),
                                            (
                                                "horizontalBar",
                                                "Graf s vodorovnými sloupci",
                                            ),
                                            ("pie", "Koláčový graf"),
                                            ("doughnut", "Donutový graf"),
                                            ("polarArea", "Graf polární oblasti"),
                                            ("radar", "Radarový graf"),
                                            ("line", "Graf s liniemi"),
                                        ],
                                        label="Typ",
                                    ),
                                ),
                                (
                                    "hide_points",
                                    wagtail.blocks.BooleanBlock(
                                        help_text="Mění vzhled pouze u linových grafů.",
                                        label="Schovat body",
                                        required=False,
                                    ),
                                ),
                                (
                                    "local_labels",
                                    wagtail.blocks.ListBlock(
                                        wagtail.blocks.CharBlock(
                                            label="Skupina", max_length=40
                                        ),
                                        blank=True,
                                        collapsed=True,
                                        default=[],
                                        label="Místně definované skupiny",
                                        required=False,
                                    ),
                                ),
                                (
                                    "local_datasets",
                                    wagtail.blocks.ListBlock(
                                        wagtail.blocks.StructBlock(
                                            [
                                                (
                                                    "label",
                                                    wagtail.blocks.CharBlock(
                                                        label="Označení zdroje dat",
                                                        max_length=120,
                                                    ),
                                                ),
                                                (
                                                    "data",
                                                    wagtail.blocks.ListBlock(
                                                        wagtail.blocks.IntegerBlock(),
                                                        default=[0],
                                                        label="Data",
                                                    ),
                                                ),
                                            ]
                                        ),
                                        blank=True,
                                        collapsed=True,
                                        default=[],
                                        label="Místní zdroje dat",
                                        required=False,
                                    ),
                                ),
                                (
                                    "redmine_issue_datasets",
                                    wagtail.blocks.ListBlock(
                                        wagtail.blocks.StructBlock(
                                            [
                                                (
                                                    "projects",
                                                    wagtail.blocks.MultipleChoiceBlock(
                                                        choices=shared.blocks.get_redmine_projects,
                                                        label="Projekty",
                                                    ),
                                                ),
                                                (
                                                    "is_open",
                                                    wagtail.blocks.BooleanBlock(
                                                        label="Jen otevřené",
                                                        required=False,
                                                    ),
                                                ),
                                                (
                                                    "is_closed",
                                                    wagtail.blocks.BooleanBlock(
                                                        label="Jen uzavřené",
                                                        required=False,
                                                    ),
                                                ),
                                                (
                                                    "created_on_min_date",
                                                    wagtail.blocks.DateBlock(
                                                        label="Min. datum vytvoření",
                                                        required=True,
                                                    ),
                                                ),
                                                (
                                                    "created_on_max_date",
                                                    wagtail.blocks.DateBlock(
                                                        label="Max. datum vytvoření",
                                                        required=True,
                                                    ),
                                                ),
                                                (
                                                    "updated_on",
                                                    wagtail.blocks.CharBlock(
                                                        help_text="Např. <=2023-01-01. Více informací na pi2.cz/redmine-api",
                                                        label="Filtr pro datum aktualizace",
                                                        max_length=128,
                                                        required=False,
                                                    ),
                                                ),
                                                (
                                                    "issue_label",
                                                    wagtail.blocks.CharBlock(
                                                        label="Označení úkolů uvnitř grafu",
                                                        max_length=128,
                                                        required=True,
                                                    ),
                                                ),
                                                (
                                                    "split_per_project",
                                                    wagtail.blocks.BooleanBlock(
                                                        label="Rozdělit podle projektu",
                                                        required=False,
                                                    ),
                                                ),
                                                (
                                                    "only_grow",
                                                    wagtail.blocks.BooleanBlock(
                                                        label="Pouze růst nahoru",
                                                        required=False,
                                                    ),
                                                ),
                                            ],
                                            label="Redmine úkoly",
                                        ),
                                        blank=True,
                                        default=[],
                                        help_text="Úkoly, podle doby vytvoření. Pokud definuješ více zdrojů, datumy v nich musí být stejné.",
                                        label="Zdroje dat z Redmine (úkoly)",
                                        required=False,
                                    ),
                                ),
                            ],
                            template="uniweb/blocks/chart.html",
                        ),
                    ),
                    (
                        "newsletter",
                        wagtail.blocks.StructBlock(
                            [
                                (
                                    "list_id",
                                    wagtail.blocks.CharBlock(
                                        label="ID newsletteru", required=True
                                    ),
                                ),
                                (
                                    "description",
                                    wagtail.blocks.CharBlock(
                                        default="Fake news tam nenajdeš, ale dozvíš se, co chystáme doopravdy!",
                                        label="Popis newsletteru",
                                        required=True,
                                    ),
                                ),
                            ]
                        ),
                    ),
                ],
                blank=True,
                use_json_field=True,
                verbose_name="obsah stránky",
            ),
        ),
    ]