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

run hooks

parent ef98d268
No related branches found
No related tags found
2 merge requests!1268Release,!1267Update makeawish templates
Pipeline #20810 passed
Showing
with 52909 additions and 231 deletions
......@@ -7,15 +7,299 @@ import shared.blocks.children.misc
class Migration(migrations.Migration):
dependencies = [
('district', '0306_remove_districthomepage_menu_button_name_and_more'),
("district", "0306_remove_districthomepage_menu_button_name_and_more"),
]
operations = [
migrations.AlterField(
model_name='districthomepage',
name='content',
field=wagtail.fields.StreamField([('fullscreen_header_block', 11), ('news_block', 14), ('elections_block', 23), ('people_block', 27), ('calendar_block', 30), ('carousel_program', 41), ('newsletter_block', 42)], blank=True, block_lookup={0: ('wagtail.images.blocks.ImageChooserBlock', (), {'help_text': 'Pokud není vybráno video, ukáže se na desktopu.', 'label': 'Obrázek na pozadí (desktop)', 'required': False}), 1: ('wagtail.images.blocks.ImageChooserBlock', (), {'help_text': 'Pokud není vybráno video, ukáže se na mobilu.', 'label': 'Obrázek na pozadí (mobil)', 'required': False}), 2: ('wagtail.blocks.URLBlock', (), {'help_text': 'Pokud je vybráno, ukáže se na desktopech s povoleným autoplayem místo obrázku.', 'label': 'Video (desktop)', 'required': False}), 3: ('wagtail.blocks.URLBlock', (), {'help_text': 'Pokud je vybráno, ukáže se na mobilech s povoleným autoplayem místo obrázku.', 'label': 'Video (mobil)', 'required': False}), 4: ('wagtail.blocks.TextBlock', (), {'label': 'Desktop první řádek', 'required': False}), 5: ('wagtail.blocks.TextBlock', (), {'label': 'Desktop druhý řádek', 'required': False}), 6: ('wagtail.blocks.TextBlock', (), {'label': 'První mobilní řádek', 'required': False}), 7: ('wagtail.blocks.TextBlock', (), {'label': 'Druhý mobilní řádek', 'required': False}), 8: ('wagtail.blocks.TextBlock', (), {'label': 'Třetí mobilní řádek', 'required': False}), 9: ('wagtail.blocks.URLBlock', (), {'help_text': 'Bez odkazu tlačítko nebude viditelné.', 'label': 'Odkaz tlačítka', 'required': False}), 10: ('wagtail.blocks.CharBlock', (), {'help_text': 'Odkaz funguje i bez tlačítka. Pokud chceš tlačítko skrýt, nevyplňuj text.', 'label': 'Text tlačítka', 'required': False}), 11: ('wagtail.blocks.StructBlock', [[('desktop_image', 0), ('mobile_image', 1), ('desktop_video_url', 2), ('mobile_video_url', 3), ('desktop_line_1', 4), ('desktop_line_2', 5), ('mobile_line_1', 6), ('mobile_line_2', 7), ('mobile_line_3', 8), ('button_url', 9), ('button_text', 10)]], {}), 12: ('wagtail.blocks.CharBlock', (), {'help_text': 'Nejnovější články se načtou automaticky', 'label': 'Titulek'}), 13: ('wagtail.blocks.TextBlock', (), {'label': 'Popis', 'required': False}), 14: ('wagtail.blocks.StructBlock', [[('title', 12), ('description', 13)]], {'template': 'styleguide2/includes/organisms/articles/district/articles_section.html'}), 15: ('wagtail.blocks.CharBlock', (), {'label': 'Titulek', 'required': True}), 16: ('wagtail.blocks.CharBlock', (), {'default': 'Aktuálně zbývá', 'label': 'Text před odpočtem', 'required': True}), 17: ('wagtail.blocks.DateTimeBlock', (), {'label': 'Datum & čas voleb', 'required': True}), 18: ('wagtail.blocks.CharBlock', (), {'label': 'Titulek', 'max_length': 128, 'required': True}), 19: ('wagtail.blocks.PageChooserBlock', (), {'label': 'Stránka', 'required': False}), 20: ('wagtail.blocks.URLBlock', (), {'label': 'Odkaz', 'required': False}), 21: ('wagtail.blocks.StructBlock', [[('title', 18), ('page', 19), ('link', 20)]], {}), 22: ('wagtail.blocks.ListBlock', (21,), {'label': 'Tlačítka', 'required': False}), 23: ('wagtail.blocks.StructBlock', [[('title', 15), ('text_before_countdown', 16), ('countdown_timestamp', 17), ('buttons', 22)]], {}), 24: ('wagtail.blocks.CharBlock', (), {'label': 'První řádek titulku'}), 25: ('wagtail.blocks.CharBlock', (), {'label': 'Druhý řádek titulku', 'required': False}), 26: ('wagtail.blocks.ListBlock', (shared.blocks.children.misc.PersonBoxBlock,), {'label': 'Boxíky'}), 27: ('wagtail.blocks.StructBlock', [[('title_line_1', 24), ('title_line_2', 25), ('description', 13), ('list', 26)]], {'template': 'styleguide2/includes/organisms/main_section/district/representatives_section.html'}), 28: ('wagtail.blocks.CharBlock', (), {'label': 'Titulek', 'required': False}), 29: ('wagtail.blocks.static_block.StaticBlock', (), {'admin_text': 'Adresa kalendáře se zadává v nastavení hlavní stránky webu', 'label': 'Volba kalendáře'}), 30: ('wagtail.blocks.StructBlock', [[('title', 28), ('info', 29)]], {}), 31: ('wagtail.blocks.CharBlock', (), {'default': 'Program', 'help_text': "Např. 'Program'", 'label': 'Nadpis'}), 32: ('wagtail.blocks.IntegerBlock', (), {'label': 'Číslo'}), 33: ('wagtail.blocks.CharBlock', (), {'label': 'Název'}), 34: ('wagtail.blocks.TextBlock', (), {'label': 'Obsah'}), 35: ('wagtail.blocks.StructBlock', [[('content', 34)]], {}), 36: ('wagtail.blocks.ListBlock', (35,), {'label': 'Body'}), 37: ('wagtail.blocks.StructBlock', [[('number', 32), ('name', 33), ('points', 36)]], {}), 38: ('wagtail.blocks.ListBlock', (37,), {'label': 'Kategorie'}), 39: ('wagtail.blocks.URLBlock', (), {'help_text': 'Pro zobrazení odkazu na celou verzi programu musí být obě následující pole vyplněná.', 'label': 'Odkaz na celou verzi programu', 'required': False}), 40: ('wagtail.blocks.CharBlock', (), {'label': 'Nadpis odkazu na celou verzi programu', 'required': False}), 41: ('wagtail.blocks.StructBlock', [[('label', 31), ('categories', 38), ('long_version_url', 39), ('long_version_text', 40)]], {}), 42: ('wagtail.blocks.StructBlock', [[]], {})}, verbose_name='Obsah'),
model_name="districthomepage",
name="content",
field=wagtail.fields.StreamField(
[
("fullscreen_header_block", 11),
("news_block", 14),
("elections_block", 23),
("people_block", 27),
("calendar_block", 30),
("carousel_program", 41),
("newsletter_block", 42),
],
blank=True,
block_lookup={
0: (
"wagtail.images.blocks.ImageChooserBlock",
(),
{
"help_text": "Pokud není vybráno video, ukáže se na desktopu.",
"label": "Obrázek na pozadí (desktop)",
"required": False,
},
),
1: (
"wagtail.images.blocks.ImageChooserBlock",
(),
{
"help_text": "Pokud není vybráno video, ukáže se na mobilu.",
"label": "Obrázek na pozadí (mobil)",
"required": False,
},
),
2: (
"wagtail.blocks.URLBlock",
(),
{
"help_text": "Pokud je vybráno, ukáže se na desktopech s povoleným autoplayem místo obrázku.",
"label": "Video (desktop)",
"required": False,
},
),
3: (
"wagtail.blocks.URLBlock",
(),
{
"help_text": "Pokud je vybráno, ukáže se na mobilech s povoleným autoplayem místo obrázku.",
"label": "Video (mobil)",
"required": False,
},
),
4: (
"wagtail.blocks.TextBlock",
(),
{"label": "Desktop první řádek", "required": False},
),
5: (
"wagtail.blocks.TextBlock",
(),
{"label": "Desktop druhý řádek", "required": False},
),
6: (
"wagtail.blocks.TextBlock",
(),
{"label": "První mobilní řádek", "required": False},
),
7: (
"wagtail.blocks.TextBlock",
(),
{"label": "Druhý mobilní řádek", "required": False},
),
8: (
"wagtail.blocks.TextBlock",
(),
{"label": "Třetí mobilní řádek", "required": False},
),
9: (
"wagtail.blocks.URLBlock",
(),
{
"help_text": "Bez odkazu tlačítko nebude viditelné.",
"label": "Odkaz tlačítka",
"required": False,
},
),
10: (
"wagtail.blocks.CharBlock",
(),
{
"help_text": "Odkaz funguje i bez tlačítka. Pokud chceš tlačítko skrýt, nevyplňuj text.",
"label": "Text tlačítka",
"required": False,
},
),
11: (
"wagtail.blocks.StructBlock",
[
[
("desktop_image", 0),
("mobile_image", 1),
("desktop_video_url", 2),
("mobile_video_url", 3),
("desktop_line_1", 4),
("desktop_line_2", 5),
("mobile_line_1", 6),
("mobile_line_2", 7),
("mobile_line_3", 8),
("button_url", 9),
("button_text", 10),
]
],
{},
),
12: (
"wagtail.blocks.CharBlock",
(),
{
"help_text": "Nejnovější články se načtou automaticky",
"label": "Titulek",
},
),
13: (
"wagtail.blocks.TextBlock",
(),
{"label": "Popis", "required": False},
),
14: (
"wagtail.blocks.StructBlock",
[[("title", 12), ("description", 13)]],
{
"template": "styleguide2/includes/organisms/articles/district/articles_section.html"
},
),
15: (
"wagtail.blocks.CharBlock",
(),
{"label": "Titulek", "required": True},
),
16: (
"wagtail.blocks.CharBlock",
(),
{
"default": "Aktuálně zbývá",
"label": "Text před odpočtem",
"required": True,
},
),
17: (
"wagtail.blocks.DateTimeBlock",
(),
{"label": "Datum & čas voleb", "required": True},
),
18: (
"wagtail.blocks.CharBlock",
(),
{"label": "Titulek", "max_length": 128, "required": True},
),
19: (
"wagtail.blocks.PageChooserBlock",
(),
{"label": "Stránka", "required": False},
),
20: (
"wagtail.blocks.URLBlock",
(),
{"label": "Odkaz", "required": False},
),
21: (
"wagtail.blocks.StructBlock",
[[("title", 18), ("page", 19), ("link", 20)]],
{},
),
22: (
"wagtail.blocks.ListBlock",
(21,),
{"label": "Tlačítka", "required": False},
),
23: (
"wagtail.blocks.StructBlock",
[
[
("title", 15),
("text_before_countdown", 16),
("countdown_timestamp", 17),
("buttons", 22),
]
],
{},
),
24: (
"wagtail.blocks.CharBlock",
(),
{"label": "První řádek titulku"},
),
25: (
"wagtail.blocks.CharBlock",
(),
{"label": "Druhý řádek titulku", "required": False},
),
26: (
"wagtail.blocks.ListBlock",
(shared.blocks.children.misc.PersonBoxBlock,),
{"label": "Boxíky"},
),
27: (
"wagtail.blocks.StructBlock",
[
[
("title_line_1", 24),
("title_line_2", 25),
("description", 13),
("list", 26),
]
],
{
"template": "styleguide2/includes/organisms/main_section/district/representatives_section.html"
},
),
28: (
"wagtail.blocks.CharBlock",
(),
{"label": "Titulek", "required": False},
),
29: (
"wagtail.blocks.static_block.StaticBlock",
(),
{
"admin_text": "Adresa kalendáře se zadává v nastavení hlavní stránky webu",
"label": "Volba kalendáře",
},
),
30: (
"wagtail.blocks.StructBlock",
[[("title", 28), ("info", 29)]],
{},
),
31: (
"wagtail.blocks.CharBlock",
(),
{
"default": "Program",
"help_text": "Např. 'Program'",
"label": "Nadpis",
},
),
32: ("wagtail.blocks.IntegerBlock", (), {"label": "Číslo"}),
33: ("wagtail.blocks.CharBlock", (), {"label": "Název"}),
34: ("wagtail.blocks.TextBlock", (), {"label": "Obsah"}),
35: ("wagtail.blocks.StructBlock", [[("content", 34)]], {}),
36: ("wagtail.blocks.ListBlock", (35,), {"label": "Body"}),
37: (
"wagtail.blocks.StructBlock",
[[("number", 32), ("name", 33), ("points", 36)]],
{},
),
38: ("wagtail.blocks.ListBlock", (37,), {"label": "Kategorie"}),
39: (
"wagtail.blocks.URLBlock",
(),
{
"help_text": "Pro zobrazení odkazu na celou verzi programu musí být obě následující pole vyplněná.",
"label": "Odkaz na celou verzi programu",
"required": False,
},
),
40: (
"wagtail.blocks.CharBlock",
(),
{
"label": "Nadpis odkazu na celou verzi programu",
"required": False,
},
),
41: (
"wagtail.blocks.StructBlock",
[
[
("label", 31),
("categories", 38),
("long_version_url", 39),
("long_version_text", 40),
]
],
{},
),
42: ("wagtail.blocks.StructBlock", [[]], {}),
},
verbose_name="Obsah",
),
),
]
......@@ -4,15 +4,18 @@ from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('district', '0307_alter_districthomepage_content'),
("district", "0307_alter_districthomepage_content"),
]
operations = [
migrations.AddField(
model_name='districthomepage',
name='has_expanded_navbar',
field=models.BooleanField(default=True, help_text='Pokud je toto pole zaškrtlé, navigační lišta bude vždy mít rezervované místo na obrazovce.', verbose_name='Má rozšířený navbar?'),
model_name="districthomepage",
name="has_expanded_navbar",
field=models.BooleanField(
default=True,
help_text="Pokud je toto pole zaškrtlé, navigační lišta bude vždy mít rezervované místo na obrazovce.",
verbose_name="Má rozšířený navbar?",
),
),
]
......@@ -4,25 +4,38 @@ from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('district', '0313_alter_districtarticlepage_content_and_more'),
("district", "0313_alter_districtarticlepage_content_and_more"),
]
operations = [
migrations.AddField(
model_name='districthomepage',
name='ecomail_newsletter_list_categories',
field=models.CharField(blank=True, help_text="Oddělte čárkou, například 'Kategorie1,Kategorie2,Kategorie3'.", max_length=128, null=True, verbose_name='Kategorie k přidání novým odběratelům na Ecomailu'),
model_name="districthomepage",
name="ecomail_newsletter_list_categories",
field=models.CharField(
blank=True,
help_text="Oddělte čárkou, například 'Kategorie1,Kategorie2,Kategorie3'.",
max_length=128,
null=True,
verbose_name="Kategorie k přidání novým odběratelům na Ecomailu",
),
),
migrations.AddField(
model_name='districthomepage',
name='ecomail_newsletter_list_id',
field=models.IntegerField(blank=True, null=True, verbose_name='ID Ecomail newsletteru'),
model_name="districthomepage",
name="ecomail_newsletter_list_id",
field=models.IntegerField(
blank=True, null=True, verbose_name="ID Ecomail newsletteru"
),
),
migrations.AlterField(
model_name='districthomepage',
name='newsletter_list_id',
field=models.CharField(blank=True, help_text='ID newsletteru z Mailtrainu. Po vyplnění se formulář pro odběr newsletteru zobrazí na úvodní stránce a na stránce s kontakty.', max_length=20, null=True, verbose_name='ID Mailtrain newsletteru'),
model_name="districthomepage",
name="newsletter_list_id",
field=models.CharField(
blank=True,
help_text="ID newsletteru z Mailtrainu. Po vyplnění se formulář pro odběr newsletteru zobrazí na úvodní stránce a na stránce s kontakty.",
max_length=20,
null=True,
verbose_name="ID Mailtrain newsletteru",
),
),
]
......@@ -4,19 +4,27 @@ from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('district', '0314_districthomepage_ecomail_newsletter_list_categories_and_more'),
(
"district",
"0314_districthomepage_ecomail_newsletter_list_categories_and_more",
),
]
operations = [
migrations.RemoveField(
model_name='districthomepage',
name='ecomail_newsletter_list_categories',
model_name="districthomepage",
name="ecomail_newsletter_list_categories",
),
migrations.AddField(
model_name='districthomepage',
name='ecomail_newsletter_list_tags',
field=models.CharField(blank=True, help_text="Oddělte čárkou, například 'Tag1,Tag2,Tag3'. Bez mezer.", max_length=128, null=True, verbose_name='Tagy k přidání novým odběratelům na Ecomailu'),
model_name="districthomepage",
name="ecomail_newsletter_list_tags",
field=models.CharField(
blank=True,
help_text="Oddělte čárkou, například 'Tag1,Tag2,Tag3'. Bez mezer.",
max_length=128,
null=True,
verbose_name="Tagy k přidání novým odběratelům na Ecomailu",
),
),
]
import json
from functools import cached_property
from django.conf import settings
from django.contrib import messages
from django.core.cache import cache
from django.core.exceptions import ValidationError
from django.db import models
......@@ -21,7 +19,7 @@ from wagtail.admin.panels import (
PageChooserPanel,
TabbedInterface,
)
from wagtail.contrib.routable_page.models import RoutablePageMixin, route
from wagtail.contrib.routable_page.models import RoutablePageMixin
from wagtail.fields import RichTextField, StreamField
from wagtail.models import Orderable, Page
from wagtail.models.media import Collection
......@@ -49,7 +47,6 @@ from shared.blocks import (
SocialLinkBlock,
)
from shared.const import RICH_TEXT_DEFAULT_FEATURES
from shared.forms import SubscribeForm
from shared.models import (
CustomLogoMixin,
ExtendedMetadataPageMixin,
......@@ -71,8 +68,6 @@ from shared.templatetags.shared_filters import markdown
from shared.utils import (
make_promote_panels,
strip_all_html_tags,
subscribe_to_newsletter,
subscribe_to_ecomail_newsletter,
trim_to_length,
)
......@@ -149,7 +144,7 @@ class DistrictHomePage(CustomLogoMixin, CalendarMixin, MainHomePageMixin):
max_length=128,
blank=True,
null=True,
help_text="Oddělte čárkou, například 'Tag1,Tag2,Tag3'. Bez mezer."
help_text="Oddělte čárkou, například 'Tag1,Tag2,Tag3'. Bez mezer.",
)
newsletter_description = models.CharField(
......
......
......@@ -27,5 +27,5 @@ def handle_copy_calendar(request, origin_page, copied_page):
def global_admin_css():
return format_html(
'<link rel="stylesheet" href="{}">',
static("district/css/district_custom_admin.css")
static("district/css/district_custom_admin.css"),
)
......@@ -10,8 +10,9 @@ from wagtail.images.blocks import ImageChooserBlock
from shared.blocks import CandidateBlock as SharedCandidateBlockMixin
from shared.blocks import CandidateListBlock as SharedCandidateListBlockMixin
from shared.blocks import \
CandidateSecondaryListBlock as SharedCandidateSecondaryListBlockMixin
from shared.blocks import (
CandidateSecondaryListBlock as SharedCandidateSecondaryListBlockMixin,
)
from shared.blocks import SecondaryCandidateBlock as SharedSecondaryCandidateBlockMixin
......
......
......@@ -4,15 +4,18 @@ from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('elections', '0064_remove_electionshomepage_menu_button_name_and_more'),
("elections", "0064_remove_electionshomepage_menu_button_name_and_more"),
]
operations = [
migrations.AddField(
model_name='electionshomepage',
name='has_expanded_navbar',
field=models.BooleanField(default=True, help_text='Pokud je toto pole zaškrtlé, navigační lišta bude vždy mít rezervované místo na obrazovce.', verbose_name='Má rozšířený navbar?'),
model_name="electionshomepage",
name="has_expanded_navbar",
field=models.BooleanField(
default=True,
help_text="Pokud je toto pole zaškrtlé, navigační lišta bude vždy mít rezervované místo na obrazovce.",
verbose_name="Má rozšířený navbar?",
),
),
]
File changed. Contains only whitespace changes. Show whitespace changes.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment