Skip to content
Snippets Groups Projects
Commit 455a5982 authored by Tomáš Valenta's avatar Tomáš Valenta Committed by josef.bouse
Browse files

finish homepage without eu section

parent 8a79a444
No related branches found
No related tags found
2 merge requests!861Release: New homepage design,!841Feat/new homepage
Showing
with 500 additions and 20 deletions
......@@ -51,7 +51,6 @@ class CardLinkBlock(CardLinkBlockMixin):
)
class Meta:
template = "main/blocks/card_link_block.html"
icon = "link"
label = "Karta s odkazem"
......@@ -68,16 +67,6 @@ class CTAMixin(StructBlock):
class ProgramGroupBlockMixin(StructBlock):
title = CharBlock(label="Titulek části programu")
slug = CharBlock(
label="Slug části programu",
required=False,
help_text="Není třeba vyplňovat, bude automaticky vyplněno",
)
perex = RichTextBlock(
label="Perex části programu",
required=False,
features=PROGRAM_RICH_TEXT_FEATURES,
)
# point_list = ListBlock(ProgramBlock(), label="Jednotlivé články programu")
class Meta:
......@@ -133,6 +122,13 @@ class NewsBlock(StructBlock):
label = "Novinky"
class EuroparlNewsBlock(StructBlock):
class Meta:
template = "main/includes/organisms/articles/europarl_articles_section.html"
icon = "doc-full-inverse"
label = "Novinky z Eurovoleb"
class PeopleGroupBlock(StructBlock):
title = CharBlock(label="Titulek")
slug = CharBlock(
......@@ -261,7 +257,7 @@ class PersonContactBlock(StructBlock):
label = "Osoba s volitelnou pozicí"
class PersonContactBoxBlock(CTAMixin, StructBlock):
class PersonContactBoxBlock(StructBlock):
title = CharBlock(label="Titulek")
image = ImageChooserBlock(label="Ikona")
subtitle = CharBlock(label="Podtitulek")
......@@ -287,7 +283,7 @@ class OtherLinksBlock(StructBlock):
class Meta:
icon = "link"
label = "Ostatní odkazy"
label = "Odkazy"
template = "main/blocks/article_quote_block.html"
......@@ -311,18 +307,32 @@ class ArticleQuoteBlock(StructBlock):
class Meta:
icon = "user"
label = "Blok citace"
template = "main/blocks/article_quote_block.html"
template = "main/includes/legacy/article_quote_block.html"
class ArticleImageBlock(StructBlock):
class ArticleImageMixin(StructBlock):
image = ImageChooserBlock(label="Obrázek")
href = URLBlock(label="Odkaz k textu")
text = CharBlock(label="Text")
image_source = CharBlock(
label="Zdroj obrázku",
help_text="Např. 'europoslankyně Markéta Gregorová'",
required=False
)
text = RichTextBlock(label="Text")
class ArticleLeftImageBlock(ArticleImageMixin):
class Meta:
icon = "image"
label = "Text s obrázkem vlevo"
template = "main/includes/molecules/articles/article_richtext_content_with_left_image.html"
class ArticleRightImageBlock(ArticleImageMixin):
class Meta:
icon = "image"
label = "Obrázek s textem a odkazem"
template = "main/blocks/article_image_block.html"
label = "Text s obrázkem vpravo"
template = "main/includes/molecules/articles/article_richtext_content_with_right_image.html"
class ArticleDownloadBlock(StructBlock):
......@@ -331,7 +341,7 @@ class ArticleDownloadBlock(StructBlock):
class Meta:
icon = "user"
label = "Blok stáhnutelného dokumentu"
template = "main/blocks/article_download_block.html"
template = "main/includes/molecules/blocks/article_download_block.html"
class TwoTextColumnBlock(StructBlock):
......
# Generated by Django 4.1.10 on 2023-12-12 11:35
from django.db import migrations
import wagtail.blocks
import wagtail.fields
class Migration(migrations.Migration):
dependencies = [
('main', '0066_alter_mainhomepage_menu'),
]
operations = [
migrations.AlterField(
model_name='mainhomepage',
name='menu',
field=wagtail.fields.StreamField([('menu_item', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock(help_text='Pokud není odkazovaná stránka na Majáku, použij možnost zadání samotné adresy níže.', label='Titulek', required=True)), ('page', wagtail.blocks.PageChooserBlock(label='Stránka', required=False)), ('link', wagtail.blocks.URLBlock(label='Odkaz', required=False))]))], blank=True, use_json_field=True, verbose_name='Položky'),
),
migrations.AlterField(
model_name='mainhomepage',
name='social_links',
field=wagtail.fields.StreamField([('social_links', wagtail.blocks.StructBlock([('text', wagtail.blocks.CharBlock(label='Název')), ('link', wagtail.blocks.URLBlock(label='Odkaz')), ('icon', wagtail.blocks.CharBlock(help_text='Seznam ikon - https://styleguide.pirati.cz/latest/?p=viewall-atoms-icons <br/>Název ikony zadejte bez tečky na začátku', label='Ikona'))]))], blank=True, use_json_field=True, verbose_name='Odkazy na sociální sítě'),
),
migrations.AlterField(
model_name='mainpersonpage',
name='social_links',
field=wagtail.fields.StreamField([('social_links', wagtail.blocks.StructBlock([('text', wagtail.blocks.CharBlock(label='Název')), ('link', wagtail.blocks.URLBlock(label='Odkaz')), ('icon', wagtail.blocks.CharBlock(help_text='Seznam ikon - https://styleguide.pirati.cz/latest/?p=viewall-atoms-icons <br/>Název ikony zadejte bez tečky na začátku', label='Ikona'))]))], blank=True, use_json_field=True, verbose_name='Odkazy na sociální sítě'),
),
]
# Generated by Django 4.1.10 on 2023-12-12 19:02
from django.db import migrations
import main.blocks
import wagtail.blocks
import wagtail.fields
class Migration(migrations.Migration):
dependencies = [
('main', '0067_alter_mainhomepage_menu_and_more'),
]
operations = [
migrations.AlterField(
model_name='mainhomepage',
name='footer_other_links',
field=wagtail.fields.StreamField([('other_links', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock(label='Titulek')), ('list', wagtail.blocks.ListBlock(main.blocks.LinkBlock, label='Seznam odkazů s titulkem'))]))], blank=True, use_json_field=True, verbose_name='Odkazy v zápatí webu'),
),
]
# Generated by Django 4.1.10 on 2023-12-12 20:23
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
('main', '0068_alter_mainhomepage_footer_other_links'),
]
operations = [
migrations.RemoveField(
model_name='mainarticlepage',
name='article_type',
),
]
# Generated by Django 4.1.10 on 2023-12-12 20:25
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
('main', '0069_remove_mainarticlepage_article_type'),
]
operations = [
migrations.RemoveField(
model_name='mainarticlespage',
name='perex',
),
]
# Generated by Django 4.1.10 on 2023-12-12 22:44
from django.db import migrations
import wagtail.fields
class Migration(migrations.Migration):
dependencies = [
('main', '0070_remove_mainarticlespage_perex'),
]
operations = [
migrations.RemoveField(
model_name='mainpeoplepage',
name='perex',
),
migrations.AddField(
model_name='mainpeoplepage',
name='perex_col_1',
field=wagtail.fields.RichTextField(default='', verbose_name='Perex - první sloupec'),
preserve_default=False,
),
migrations.AddField(
model_name='mainpeoplepage',
name='perex_col_2',
field=wagtail.fields.RichTextField(default='', verbose_name='Perex - druhý sloupec'),
preserve_default=False,
),
]
# Generated by Django 4.1.10 on 2023-12-13 20:05
from django.db import migrations
import wagtail.blocks
import wagtail.documents.blocks
import wagtail.fields
import wagtail.images.blocks
class Migration(migrations.Migration):
dependencies = [
('main', '0071_remove_mainpeoplepage_perex_and_more'),
]
operations = [
migrations.AlterField(
model_name='mainarticlepage',
name='content',
field=wagtail.fields.StreamField([('text', wagtail.blocks.RichTextBlock(template='main/includes/atoms/text/prose_richtext.html')), ('quote', wagtail.blocks.StructBlock([('quote', wagtail.blocks.CharBlock(label='Citace')), ('autor_name', wagtail.blocks.CharBlock(label='Jméno autora'))])), ('download', wagtail.blocks.StructBlock([('file', wagtail.documents.blocks.DocumentChooserBlock(label='Stáhnutelný soubor'))])), ('image_left', wagtail.blocks.StructBlock([('image', wagtail.images.blocks.ImageChooserBlock(label='Obrázek')), ('image_source', wagtail.blocks.CharBlock(help_text="Např. 'europoslankyně Markéta Gregorová'", label='Zdroj obrázku')), ('href', wagtail.blocks.URLBlock(label='Odkaz k textu')), ('text', wagtail.blocks.RichTextBlock(label='Text'))])), ('image_right', wagtail.blocks.StructBlock([('image', wagtail.images.blocks.ImageChooserBlock(label='Obrázek')), ('image_source', wagtail.blocks.CharBlock(help_text="Např. 'europoslankyně Markéta Gregorová'", label='Zdroj obrázku')), ('href', wagtail.blocks.URLBlock(label='Odkaz k textu')), ('text', wagtail.blocks.RichTextBlock(label='Text'))]))], blank=True, use_json_field=True, verbose_name='Článek'),
),
]
# Generated by Django 4.1.10 on 2023-12-13 22:27
from django.db import migrations, models
import wagtail.blocks
import wagtail.documents.blocks
import wagtail.fields
class Migration(migrations.Migration):
dependencies = [
('main', '0072_alter_mainarticlepage_content'),
]
operations = [
migrations.AlterField(
model_name='mainarticlepage',
name='content',
field=wagtail.fields.StreamField([('text', wagtail.blocks.RichTextBlock(template='main/includes/atoms/text/prose_richtext.html')), ('quote', wagtail.blocks.StructBlock([('quote', wagtail.blocks.CharBlock(label='Citace')), ('autor_name', wagtail.blocks.CharBlock(label='Jméno autora'))])), ('download', wagtail.blocks.StructBlock([('file', wagtail.documents.blocks.DocumentChooserBlock(label='Stáhnutelný soubor'))]))], blank=True, use_json_field=True, verbose_name='Článek'),
),
migrations.AlterField(
model_name='mainpeoplepage',
name='perex_col_1',
field=models.TextField(verbose_name='Perex - první sloupec'),
),
migrations.AlterField(
model_name='mainpeoplepage',
name='perex_col_2',
field=models.TextField(verbose_name='Perex - druhý sloupec'),
),
]
# Generated by Django 4.1.10 on 2023-12-14 16:42
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('main', '0073_alter_mainarticlepage_content_and_more'),
]
operations = [
migrations.AddField(
model_name='mainpersonpage',
name='primary_group',
field=models.CharField(blank=True, help_text="např. 'Europarlament' nebo 'Sněmovna'", max_length=32, null=True, verbose_name='Kategorie'),
),
]
# Generated by Django 4.1.10 on 2023-12-14 17:55
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
('main', '0074_mainpersonpage_primary_group'),
]
operations = [
migrations.RenameField(
model_name='mainpersonpage',
old_name='people',
new_name='related_people',
),
]
# Generated by Django 4.1.10 on 2023-12-14 17:59
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
('main', '0075_rename_people_mainpersonpage_related_people'),
]
operations = [
migrations.RemoveField(
model_name='mainarticlepage',
name='is_black',
),
]
# Generated by Django 4.1.10 on 2023-12-14 18:08
from django.db import migrations, models
import django.db.models.deletion
class Migration(migrations.Migration):
dependencies = [
('wagtailimages', '0025_alter_image_file_alter_rendition_file'),
('main', '0076_remove_mainarticlepage_is_black'),
]
operations = [
migrations.AlterField(
model_name='mainarticlepage',
name='image',
field=models.ForeignKey(blank=True, help_text='Ukazuje se v kartách, které na článek odkazují. Např. na hlavní stránce a stránkách osob.', null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='wagtailimages.image', verbose_name='Obrázek'),
),
]
# Generated by Django 4.1.10 on 2023-12-14 18:16
from django.db import migrations, models
import django.db.models.deletion
class Migration(migrations.Migration):
dependencies = [
('wagtailimages', '0025_alter_image_file_alter_rendition_file'),
('main', '0077_alter_mainarticlepage_image'),
]
operations = [
migrations.AlterField(
model_name='mainarticlepage',
name='image',
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='wagtailimages.image', verbose_name='obrázek'),
),
]
# Generated by Django 4.1.10 on 2023-12-14 19:36
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('main', '0078_alter_mainarticlepage_image'),
]
operations = [
migrations.RemoveField(
model_name='mainpersonpage',
name='related_people',
),
migrations.AddField(
model_name='mainpersonpage',
name='related_people',
field=models.ManyToManyField(to='main.mainpersonpage', verbose_name='Další lidé'),
),
]
# Generated by Django 4.1.10 on 2023-12-14 20:25
from django.db import migrations
import wagtail.blocks
import wagtail.fields
class Migration(migrations.Migration):
dependencies = [
('main', '0079_remove_mainpersonpage_related_people_and_more'),
]
operations = [
migrations.RemoveField(
model_name='mainpersonpage',
name='related_people',
),
migrations.AddField(
model_name='mainpersonpage',
name='related_people',
field=wagtail.fields.StreamField([('person', wagtail.blocks.PageChooserBlock(label='Detail osoby', page_type=['main.MainPersonPage']))], blank=True, use_json_field=True, verbose_name='Další lidé'),
),
]
# Generated by Django 4.1.10 on 2023-12-14 20:54
from django.db import migrations
import main.blocks
import wagtail.blocks
import wagtail.fields
import wagtail.images.blocks
class Migration(migrations.Migration):
dependencies = [
('main', '0080_remove_mainpersonpage_related_people_and_more'),
]
operations = [
migrations.RemoveField(
model_name='mainarticlepage',
name='region',
),
migrations.AlterField(
model_name='mainhomepage',
name='content',
field=wagtail.fields.StreamField([('carousel', wagtail.blocks.StructBlock([('line_1', wagtail.blocks.TextBlock(label='První řádek')), ('line_2', wagtail.blocks.TextBlock(label='Druhý řádek'))])), ('news', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock(help_text='Nejnovější články se načtou automaticky', label='Titulek')), ('description', wagtail.blocks.TextBlock(label='Popis'))])), ('europarl_news', wagtail.blocks.StructBlock([])), ('people', wagtail.blocks.StructBlock([('title_line_1', wagtail.blocks.CharBlock(label='První řádek titulku')), ('title_line_2', wagtail.blocks.CharBlock(label='Druhý řádek titulku')), ('description', wagtail.blocks.TextBlock(label='Popis')), ('list', wagtail.blocks.ListBlock(main.blocks.BoxBlock, label='Boxíky'))])), ('regions', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock(help_text='Články pro regiony se načtou automaticky', label='Titulek'))])), ('boxes', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock(label='Nadpis')), ('list', wagtail.blocks.ListBlock(main.blocks.BoxBlock, label='Boxíky')), ('image', wagtail.images.blocks.ImageChooserBlock(label='Obrázek pozadí', required=False))]))], blank=True, use_json_field=True, verbose_name='Hlavní obsah'),
),
]
# Generated by Django 4.1.10 on 2023-12-14 21:51
from django.db import migrations, models
import django.db.models.deletion
import modelcluster.contrib.taggit
import modelcluster.fields
class Migration(migrations.Migration):
dependencies = [
('taggit', '0005_auto_20220424_2025'),
('main', '0081_remove_mainarticlepage_region_and_more'),
]
operations = [
migrations.AddField(
model_name='mainhomepage',
name='europarl_section_tag',
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='taggit.tag', verbose_name='Tag pro rozdělení - Eurovolby'),
),
migrations.CreateModel(
name='MainArticleSectionTag',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('content_object', modelcluster.fields.ParentalKey(on_delete=django.db.models.deletion.CASCADE, related_name='section_tagged_items', to='main.mainarticlepage')),
('tag', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='%(app_label)s_%(class)s_items', to='taggit.tag')),
],
options={
'abstract': False,
},
),
migrations.AddField(
model_name='mainarticlepage',
name='section_tags',
field=modelcluster.contrib.taggit.ClusterTaggableManager(blank=True, help_text='Používá se například pro oddělení článků do sekce pro eurovolby. Pokud chceš, aby se články zobrazovaly pouze na hlavní stránce, nepřidávej žádné tagy.', through='main.MainArticleSectionTag', to='taggit.Tag', verbose_name='Tagy pro rozdělení do sekcí'),
),
]
# Generated by Django 4.1.10 on 2023-12-15 12:24
from django.db import migrations
import wagtail.blocks
import wagtail.fields
import wagtail.images.blocks
class Migration(migrations.Migration):
dependencies = [
('main', '0082_mainhomepage_europarl_section_tag_and_more'),
]
operations = [
migrations.RemoveField(
model_name='mainprogrampage',
name='perex',
),
migrations.AlterField(
model_name='maincontactpage',
name='contact_boxes',
field=wagtail.fields.StreamField([('item', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock(label='Titulek')), ('image', wagtail.images.blocks.ImageChooserBlock(label='Ikona')), ('subtitle', wagtail.blocks.CharBlock(label='Podtitulek'))]))], blank=True, use_json_field=True, verbose_name='Kontaktní boxy'),
),
]
# Generated by Django 4.1.10 on 2023-12-15 13:54
from django.db import migrations
import wagtail.blocks
import wagtail.fields
import wagtail.images.blocks
class Migration(migrations.Migration):
dependencies = [
('main', '0083_remove_mainprogrampage_perex_and_more'),
]
operations = [
migrations.AlterField(
model_name='mainprogrampage',
name='program',
field=wagtail.fields.StreamField([('program_group', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock(label='Titulek části programu')), ('point_list', wagtail.blocks.ListBlock(wagtail.blocks.StructBlock([('url', wagtail.blocks.URLBlock(label='Odkaz pokrývající celou tuto část', required=False)), ('icon', wagtail.images.blocks.ImageChooserBlock(label='Ikona', required=False)), ('title', wagtail.blocks.CharBlock(label='Titulek článku programu')), ('text', wagtail.blocks.RichTextBlock(features=['h3', 'h4', 'h5', 'bold', 'italic', 'ol', 'ul', 'hr', 'link', 'document-link', 'image', 'superscript', 'subscript', 'strikethrough', 'blockquote', 'embed'], label='Obsah'))]), label='Jednotlivé články programu'))])), ('program_group_crossroad', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock(label='Titulek části programu')), ('point_list', wagtail.blocks.ListBlock(wagtail.blocks.StructBlock([('image', wagtail.images.blocks.ImageChooserBlock(label='Obrázek')), ('title', wagtail.blocks.CharBlock(label='Titulek', required=True)), ('text', wagtail.blocks.RichTextBlock(label='Krátký text pod nadpisem', required=False)), ('page', wagtail.blocks.PageChooserBlock(label='Stránka', page_type=['main.MainArticlesPage', 'main.MainArticlePage', 'main.MainProgramPage', 'main.MainPeoplePage', 'main.MainPersonPage', 'main.MainSimplePage', 'main.MainContactPage', 'main.MainCrossroadPage'], required=False)), ('link', wagtail.blocks.URLBlock(label='Odkaz', required=False))]), label='Karty programu'))])), ('program_group_popout', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock(label='Titulek části programu')), ('categories', wagtail.blocks.ListBlock(wagtail.blocks.StructBlock([('name', wagtail.blocks.CharBlock(label='Název')), ('icon', wagtail.images.blocks.ImageChooserBlock(label='Ikona', required=False)), ('point_list', wagtail.blocks.ListBlock(wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock(label='Titulek vyskakovacího bloku')), ('content', wagtail.blocks.RichTextBlock(features=['h3', 'h4', 'h5', 'bold', 'italic', 'ol', 'ul', 'hr', 'link', 'document-link', 'image', 'superscript', 'subscript', 'strikethrough', 'blockquote', 'embed'], label='Obsah'))]), label='Jednotlivé bloky programu'))]), label='Kategorie programu'))]))], blank=True, use_json_field=True, verbose_name='Program'),
),
]
# Generated by Django 4.1.10 on 2023-12-15 15:37
from django.db import migrations, models
import django.db.models.deletion
import modelcluster.fields
class Migration(migrations.Migration):
dependencies = [
('main', '0084_alter_mainprogrampage_program'),
]
operations = [
migrations.CreateModel(
name='MainArticleSectionTagged',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
],
options={
'abstract': False,
},
),
migrations.CreateModel(
name='SectionTag',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('name', models.CharField(max_length=100, unique=True, verbose_name='name')),
('slug', models.SlugField(allow_unicode=True, max_length=100, unique=True, verbose_name='slug')),
],
options={
'verbose_name': 'Tag pro rozdělení do sekcí',
'verbose_name_plural': 'Tagy pro rozdělení do sekcí',
},
),
migrations.RemoveField(
model_name='mainarticlepage',
name='section_tags',
),
migrations.DeleteModel(
name='MainArticleSectionTag',
),
migrations.AddField(
model_name='mainarticlesectiontagged',
name='content_object',
field=modelcluster.fields.ParentalKey(on_delete=django.db.models.deletion.CASCADE, related_name='section_tagged_items', to='main.mainarticlepage'),
),
migrations.AddField(
model_name='mainarticlesectiontagged',
name='tag',
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='%(app_label)s_%(class)s_items', to='main.sectiontag'),
),
]
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment