Skip to content
Snippets Groups Projects
Commit 5bd792bc authored by OndraRehounek's avatar OndraRehounek
Browse files

main: region field added

parent 31b017f0
No related branches found
No related tags found
2 merge requests!607Pirati.cz,!575Feature/pirati cz
Pipeline #9339 passed
# Generated by Django 4.0.7 on 2022-08-23 10:07
import django.db.models.deletion
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
("main", "0006_mainpersonpage_after_name_mainpersonpage_before_name_and_more"),
]
operations = [
migrations.AddField(
model_name="mainarticlepage",
name="region",
field=models.IntegerField(
blank=True,
choices=[
("PHA", "Hlavní město Praha"),
("JHC", "Jihočeský kraj"),
("JHM", "Jihomoravský kraj"),
("KVK", "Karlovarský kraj"),
("VYS", "Kraj Vysočina"),
("KHK", "Královéhradecký kraj"),
("LBK", "Liberecký kraj"),
("MSK", "Moravskoslezský kraj"),
("OLK", "Olomoucký kraj"),
("PAK", "Pardubický kraj"),
("PLK", "Plzeňský kraj"),
("STC", "Středočeský kraj"),
("ULK", "Ústecký kraj"),
("ZLK", "Zlínský kraj"),
],
help_text="Kraj, ke kterému se článek vztahuje",
null=True,
verbose_name="Kraj",
),
),
migrations.AlterField(
model_name="mainarticlepage",
name="author_page",
field=models.ForeignKey(
blank=True,
null=True,
on_delete=django.db.models.deletion.SET_NULL,
to="main.mainpersonpage",
verbose_name="Stránka autora (osoby)",
),
),
]
...@@ -15,6 +15,7 @@ from wagtail.core.fields import RichTextField, StreamField ...@@ -15,6 +15,7 @@ from wagtail.core.fields import RichTextField, StreamField
from wagtail.core.models import Page from wagtail.core.models import Page
from wagtailmetadata.models import MetadataPageMixin from wagtailmetadata.models import MetadataPageMixin
from elections2021.constants import REGION_CHOICES # pozor, import ze sousedního modulu
from shared.const import RICH_TEXT_DEFAULT_FEATURES from shared.const import RICH_TEXT_DEFAULT_FEATURES
from shared.forms import SubscribeForm from shared.forms import SubscribeForm
from shared.models import ( from shared.models import (
...@@ -26,9 +27,9 @@ from shared.models import ( ...@@ -26,9 +27,9 @@ from shared.models import (
) )
from shared.utils import make_promote_panels, subscribe_to_newsletter from shared.utils import make_promote_panels, subscribe_to_newsletter
from tuning import admin_help from tuning import admin_help
from twitter_utils.models import Tweet
from . import blocks from . import blocks
from twitter_utils.models import Tweet
class MainHomePage(MenuMixin, ExtendedMetadataHomePageMixin, MetadataPageMixin, Page): class MainHomePage(MenuMixin, ExtendedMetadataHomePageMixin, MetadataPageMixin, Page):
...@@ -172,7 +173,14 @@ class MainHomePage(MenuMixin, ExtendedMetadataHomePageMixin, MetadataPageMixin, ...@@ -172,7 +173,14 @@ class MainHomePage(MenuMixin, ExtendedMetadataHomePageMixin, MetadataPageMixin,
class MainWorkPage(ExtendedMetadataPageMixin, SubpageMixin, MetadataPageMixin, Page): class MainWorkPage(ExtendedMetadataPageMixin, SubpageMixin, MetadataPageMixin, Page):
perex = models.TextField() perex = models.TextField()
timeline = StreamField( timeline = StreamField(
[("article_list", PageChooserBlock(page_type="main.MainArticlePage", label="Vybrat aktualitu"))], [
(
"article_list",
PageChooserBlock(
page_type="main.MainArticlePage", label="Vybrat aktualitu"
),
)
],
verbose_name="Timeline", verbose_name="Timeline",
blank=True, blank=True,
) )
...@@ -183,10 +191,7 @@ class MainWorkPage(ExtendedMetadataPageMixin, SubpageMixin, MetadataPageMixin, P ...@@ -183,10 +191,7 @@ class MainWorkPage(ExtendedMetadataPageMixin, SubpageMixin, MetadataPageMixin, P
subpage_types = [] subpage_types = []
### PANELS ### PANELS
content_panels = Page.content_panels + [ content_panels = Page.content_panels + [FieldPanel("perex"), FieldPanel("timeline")]
FieldPanel('perex'),
FieldPanel('timeline')
]
### OTHERS ### OTHERS
...@@ -205,7 +210,18 @@ class MainArticlePage( ...@@ -205,7 +210,18 @@ class MainArticlePage(
### FIELDS ### FIELDS
author_page = models.ForeignKey( author_page = models.ForeignKey(
"main.MainPersonPage", on_delete=models.SET_NULL, null=True, blank=True "main.MainPersonPage",
on_delete=models.SET_NULL,
null=True,
blank=True,
verbose_name="Stránka autora (osoby)",
)
region = models.IntegerField(
choices=REGION_CHOICES,
null=True,
blank=True,
verbose_name="Kraj",
help_text="Kraj, ke kterému se článek vztahuje",
) )
tags = ClusterTaggableManager(through=MainArticleTag, blank=True) tags = ClusterTaggableManager(through=MainArticleTag, blank=True)
...@@ -335,13 +351,24 @@ class MainPeoplePage(ExtendedMetadataPageMixin, SubpageMixin, MetadataPageMixin, ...@@ -335,13 +351,24 @@ class MainPeoplePage(ExtendedMetadataPageMixin, SubpageMixin, MetadataPageMixin,
class MainPersonPage(ExtendedMetadataPageMixin, SubpageMixin, MetadataPageMixin, Page): class MainPersonPage(ExtendedMetadataPageMixin, SubpageMixin, MetadataPageMixin, Page):
### FIELDS ### FIELDS
before_name = models.CharField("Tituly před jménem", max_length=16, blank=True, null=True) before_name = models.CharField(
after_name = models.CharField("Tituly za jménem", max_length=16, blank=True, null=True) "Tituly před jménem", max_length=16, blank=True, null=True
position = models.CharField("Pozice/povolání", max_length=128, blank=True, null=True) )
after_name = models.CharField(
"Tituly za jménem", max_length=16, blank=True, null=True
)
position = models.CharField(
"Pozice/povolání", max_length=128, blank=True, null=True
)
perex = models.TextField() perex = models.TextField()
text = RichTextField() text = RichTextField()
twitter_username = models.CharField("Uživatelské jméno twitter pro získání příspěvků", blank=True, null=True, max_length=32) twitter_username = models.CharField(
"Uživatelské jméno twitter pro získání příspěvků",
blank=True,
null=True,
max_length=32,
)
email = models.CharField("E-mail", max_length=128, blank=True, null=True) email = models.CharField("E-mail", max_length=128, blank=True, null=True)
phone = models.CharField("Telefonní kontakt", max_length=16, blank=True, null=True) phone = models.CharField("Telefonní kontakt", max_length=16, blank=True, null=True)
...@@ -359,23 +386,27 @@ class MainPersonPage(ExtendedMetadataPageMixin, SubpageMixin, MetadataPageMixin, ...@@ -359,23 +386,27 @@ class MainPersonPage(ExtendedMetadataPageMixin, SubpageMixin, MetadataPageMixin,
### PANELS ### PANELS
content_panels = Page.content_panels + [ content_panels = Page.content_panels + [
FieldPanel('before_name'), FieldPanel("before_name"),
FieldPanel('after_name'), FieldPanel("after_name"),
FieldPanel('position'), FieldPanel("position"),
FieldPanel('perex'), FieldPanel("perex"),
FieldPanel('twitter_username'), FieldPanel("twitter_username"),
FieldPanel('text'), FieldPanel("text"),
FieldPanel('email'), FieldPanel("email"),
FieldPanel('phone'), FieldPanel("phone"),
FieldPanel('facebook'), FieldPanel("facebook"),
FieldPanel('twitter'), FieldPanel("twitter"),
FieldPanel('instagram'), FieldPanel("instagram"),
] ]
def get_context(self, request): def get_context(self, request):
context = super(MainPersonPage, self).get_context(request) context = super(MainPersonPage, self).get_context(request)
context['article_page_list'] = MainArticlePage.objects.filter(author_page=self.id) context["article_page_list"] = MainArticlePage.objects.filter(
context['tweet_list'] = Tweet.objects.filter(author_username=self.twitter_username) author_page=self.id
)
context["tweet_list"] = Tweet.objects.filter(
author_username=self.twitter_username
)
return context return context
### OTHERS ### OTHERS
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment