From fc2b93d789b7ebecc31f4f39df2bdef54534cade Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Bedna=C5=99=C3=ADk?= <jan.bednarik@gmail.com> Date: Sat, 9 Apr 2022 08:01:36 +0200 Subject: [PATCH] shared: Fix article mixin meta usage --- district/models.py | 5 ++++- elections2021/models.py | 10 ---------- region/models.py | 5 ++++- shared/models.py | 14 +++++++++++++- uniweb/models.py | 5 ++++- 5 files changed, 25 insertions(+), 14 deletions(-) diff --git a/district/models.py b/district/models.py index 9c910866..4c946bd7 100644 --- a/district/models.py +++ b/district/models.py @@ -344,7 +344,10 @@ class DistrictArticlePage(ArticleMixin, SubpageMixin, MetadataPageMixin, Page): FieldPanel("tags"), ] - promote_panels = make_promote_panels() + promote_panels = make_promote_panels( + admin_help.build(admin_help.NO_SEO_TITLE, admin_help.NO_DESCRIPTION_USE_PEREX), + search_image=False, + ) ### RELATIONS diff --git a/elections2021/models.py b/elections2021/models.py index 70a887db..85614327 100644 --- a/elections2021/models.py +++ b/elections2021/models.py @@ -586,16 +586,6 @@ class Elections2021ArticlePage(ArticleMixin, SubpageMixin, MetadataPageMixin, Pa class Meta: verbose_name = "Aktualita" - def get_meta_image(self): - return self.image - - def get_meta_description(self): - if self.search_description: - return self.search_description - if len(self.perex) > 150: - return str(self.perex)[:150] + "..." - return self.perex - def card_css_class(self): return STYLE_CSS[self.card_style] diff --git a/region/models.py b/region/models.py index 02a3d8a7..d1f6072b 100644 --- a/region/models.py +++ b/region/models.py @@ -334,7 +334,10 @@ class RegionArticlePage(ArticleMixin, SubpageMixin, MetadataPageMixin, Page): FieldPanel("tags"), ] - promote_panels = make_promote_panels() + promote_panels = make_promote_panels( + admin_help.build(admin_help.NO_SEO_TITLE, admin_help.NO_DESCRIPTION_USE_PEREX), + search_image=False, + ) ### RELATIONS diff --git a/shared/models.py b/shared/models.py index a145e548..09c39f31 100644 --- a/shared/models.py +++ b/shared/models.py @@ -31,7 +31,9 @@ class SubpageMixin: class ArticleMixin(models.Model): """ - Common fields for articles + Common fields for articles. + + Must be used in class definition before MetadataPageMixin! If you want to tag articles, add tags as `tags` field in article page model. """ @@ -101,6 +103,16 @@ class ArticleMixin(models.Model): """Page used for filtering by tags in url like `?tag=foo`.""" return self.get_parent() + def get_meta_image(self): + return self.image + + def get_meta_description(self): + if self.search_description: + return self.search_description + if len(self.perex) > 150: + return str(self.perex)[:150] + "..." + return self.perex + class MenuMixin(Page): menu = StreamField( diff --git a/uniweb/models.py b/uniweb/models.py index f4dc030c..d279eb02 100644 --- a/uniweb/models.py +++ b/uniweb/models.py @@ -459,7 +459,10 @@ class UniwebArticlePage(ArticleMixin, SubpageMixin, MetadataPageMixin, Page): content_panels = ArticleMixin.content_panels + [FieldPanel("tags")] - promote_panels = make_promote_panels() + promote_panels = make_promote_panels( + admin_help.build(admin_help.NO_SEO_TITLE, admin_help.NO_DESCRIPTION_USE_PEREX), + search_image=False, + ) ### RELATIONS -- GitLab