From a4ff4df7b377a40217236ea2bc894335399052ae Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jan=20Bedna=C5=99=C3=ADk?= <jan.bednarik@gmail.com>
Date: Wed, 12 May 2021 23:48:07 +0200
Subject: [PATCH] majak: Upgrade to Wagtail 2.13 and Django 3.2

---
 calendar_utils/apps.py        |  2 +-
 czech_inspirational/models.py | 14 ++++--
 district/models.py            | 14 ++++--
 districts/models.py           | 11 ++--
 donate/models.py              | 14 ++++--
 elections2021/models.py       | 16 ++++--
 green_deal/models.py          |  4 ++
 majak/settings/base.py        |  1 +
 regulace_konopi/models.py     |  4 +-
 requirements/base.txt         | 31 ++++++------
 requirements/dev.txt          | 95 +++++++++++++++++++++++++----------
 requirements/production.txt   |  3 +-
 senat_campaign/models.py      | 10 ++--
 senate/models.py              |  5 +-
 uniweb/models.py              | 10 ++--
 15 files changed, 158 insertions(+), 76 deletions(-)

diff --git a/calendar_utils/apps.py b/calendar_utils/apps.py
index bf508d1a..d2f3a81a 100644
--- a/calendar_utils/apps.py
+++ b/calendar_utils/apps.py
@@ -2,4 +2,4 @@ from django.apps import AppConfig
 
 
 class CalendarUtilsConfig(AppConfig):
-    name = "calendar utils"
+    name = "calendar_utils"
diff --git a/czech_inspirational/models.py b/czech_inspirational/models.py
index bc19a2ca..68f90f0a 100644
--- a/czech_inspirational/models.py
+++ b/czech_inspirational/models.py
@@ -7,7 +7,12 @@ from django.core.exceptions import ValidationError
 from django.core.validators import validate_email
 from django.db import models
 from django.utils.translation import gettext_lazy
-from wagtail.admin.edit_handlers import FieldPanel, HelpPanel, MultiFieldPanel
+from wagtail.admin.edit_handlers import (
+    CommentPanel,
+    FieldPanel,
+    HelpPanel,
+    MultiFieldPanel,
+)
 from wagtail.core.fields import RichTextField
 from wagtail.core.models import Page
 from wagtail.documents.edit_handlers import DocumentChooserPanel
@@ -56,6 +61,7 @@ class CzechInspirationalHomePage(Page, MetadataPageMixin):
             ],
             "nastavení webu",
         ),
+        CommentPanel(),
     ]
 
     ### RELATIONS
@@ -130,7 +136,7 @@ class CzechInspirationalChaptersPage(Page, SubpageMixin, MetadataPageMixin):
         ),
     ]
 
-    settings_panels = []
+    settings_panels = [CommentPanel()]
 
     ### RELATIONS
 
@@ -193,7 +199,7 @@ class CzechInspirationalChapterPage(Page, SubpageMixin, MetadataPageMixin):
         ),
     ]
 
-    settings_panels = []
+    settings_panels = [CommentPanel()]
 
     ### RELATIONS
 
@@ -247,7 +253,7 @@ class CzechInspirationalDownloadPage(Page, SubpageMixin, MetadataPageMixin):
         ),
     ]
 
-    settings_panels = []
+    settings_panels = [CommentPanel()]
 
     ### RELATIONS
 
diff --git a/district/models.py b/district/models.py
index e364c429..4f33f986 100644
--- a/district/models.py
+++ b/district/models.py
@@ -6,7 +6,12 @@ from django.utils.translation import gettext_lazy
 from modelcluster.contrib.taggit import ClusterTaggableManager
 from modelcluster.fields import ParentalKey
 from taggit.models import TaggedItemBase
-from wagtail.admin.edit_handlers import FieldPanel, MultiFieldPanel, StreamFieldPanel
+from wagtail.admin.edit_handlers import (
+    CommentPanel,
+    FieldPanel,
+    MultiFieldPanel,
+    StreamFieldPanel,
+)
 from wagtail.core import blocks
 from wagtail.core.fields import StreamField
 from wagtail.core.models import Page
@@ -103,6 +108,7 @@ class DistrictHomePage(MetadataPageMixin, Page):
             ],
             gettext_lazy("Lidé v zápatí stránky"),
         ),
+        CommentPanel(),
     ]
 
     ### RELATIONS
@@ -184,7 +190,7 @@ class DistrictArticlesPage(SubpageMixin, MetadataPageMixin, Page):
         FieldPanel("max_items"),
     ]
 
-    settings_panels = []
+    settings_panels = [CommentPanel()]
 
     ### RELATIONS
 
@@ -244,7 +250,7 @@ class DistrictContactPage(SubpageMixin, MetadataPageMixin, Page):
 class DistrictTagsPage(SubpageMixin, MetadataPageMixin, Page):
     ### PANELS
 
-    settings_panels = []
+    settings_panels = [CommentPanel()]
 
     ### RELATIONS
 
@@ -314,7 +320,7 @@ class DistrictPersonPage(SubpageMixin, MetadataPageMixin, Page):
 
 
 class DistrictPeoplePage(SubpageMixin, MetadataPageMixin, Page):
-    settings_panels = []
+    settings_panels = [CommentPanel()]
 
     ### RELATIONS
 
diff --git a/districts/models.py b/districts/models.py
index 1be7afec..761e64c1 100644
--- a/districts/models.py
+++ b/districts/models.py
@@ -1,6 +1,11 @@
 from django.db import models
 from django.utils.translation import gettext_lazy
-from wagtail.admin.edit_handlers import FieldPanel, HelpPanel, MultiFieldPanel
+from wagtail.admin.edit_handlers import (
+    CommentPanel,
+    FieldPanel,
+    HelpPanel,
+    MultiFieldPanel,
+)
 from wagtail.core.models import Page
 from wagtail.images.edit_handlers import ImageChooserPanel
 from wagtailmetadata.models import MetadataPageMixin
@@ -29,9 +34,7 @@ class DistrictsHomePage(MetadataPageMixin, Page):
         ),
     ]
 
-    settings_panels = [
-        FieldPanel("matomo_id"),
-    ]
+    settings_panels = [FieldPanel("matomo_id"), CommentPanel()]
 
     ### RELATIONS
 
diff --git a/donate/models.py b/donate/models.py
index 39b1f83a..c1f75bf2 100644
--- a/donate/models.py
+++ b/donate/models.py
@@ -8,6 +8,7 @@ from django.shortcuts import redirect
 from django.utils.translation import gettext_lazy
 from modelcluster.fields import ParentalKey
 from wagtail.admin.edit_handlers import (
+    CommentPanel,
     FieldPanel,
     HelpPanel,
     InlinePanel,
@@ -169,6 +170,7 @@ class DonateHomePage(DonateFormMixin, DonateFormAmountsMixin, Page, MetadataPage
             ],
             "nastavení darů",
         ),
+        CommentPanel(),
     ]
 
     ### RELATIONS
@@ -242,7 +244,7 @@ class DonateRegionIndexPage(Page, SubpageMixin, MetadataPageMixin):
         ),
     ]
 
-    settings_panels = []
+    settings_panels = [CommentPanel()]
 
     ### RELATIONS
 
@@ -308,6 +310,7 @@ class DonateRegionPage(
             ],
             "nastavení darů",
         ),
+        CommentPanel(),
     ]
 
     ### RELATIONS
@@ -351,7 +354,7 @@ class DonateProjectIndexPage(Page, SubpageMixin, MetadataPageMixin):
         ),
     ]
 
-    settings_panels = []
+    settings_panels = [CommentPanel()]
 
     ### RELATIONS
 
@@ -459,6 +462,7 @@ class DonateProjectPage(
             ],
             "nastavení darů",
         ),
+        CommentPanel(),
     ]
 
     ### RELATIONS
@@ -548,7 +552,7 @@ class DonateTextPage(Page, SubpageMixin, MetadataPageMixin):
         ),
     ]
 
-    settings_panels = []
+    settings_panels = [CommentPanel()]
 
     ### RELATIONS
 
@@ -588,7 +592,7 @@ class DonateInfoPage(DonateFormMixin, Page, SubpageMixin, MetadataPageMixin):
         ),
     ]
 
-    settings_panels = []
+    settings_panels = [CommentPanel()]
 
     ### RELATIONS
 
@@ -663,7 +667,7 @@ class DonateTargetedDonationsPage(
         ),
     ]
 
-    settings_panels = []
+    settings_panels = [CommentPanel()]
 
     ### RELATIONS
 
diff --git a/elections2021/models.py b/elections2021/models.py
index 92f1af68..45c4529f 100644
--- a/elections2021/models.py
+++ b/elections2021/models.py
@@ -9,10 +9,12 @@ from modelcluster.contrib.taggit import ClusterTaggableManager
 from modelcluster.fields import ParentalKey
 from taggit.models import TaggedItemBase
 from wagtail.admin.edit_handlers import (
+    CommentPanel,
     FieldPanel,
     HelpPanel,
     MultiFieldPanel,
     ObjectList,
+    PublishingPanel,
     StreamFieldPanel,
     TabbedInterface,
 )
@@ -93,6 +95,7 @@ class Elections2021HomePage(Page, MetadataPageMixin):
         FieldPanel("matomo_id"),
         StreamFieldPanel("header_links"),
         StreamFieldPanel("footer_links"),
+        CommentPanel(),
     ]
 
     ### RELATIONS
@@ -160,6 +163,8 @@ class Elections2021ArticlePage(ArticleMixin, SubpageMixin, MetadataPageMixin, Pa
         ),
     ]
 
+    settings_panels = [PublishingPanel(), CommentPanel()]
+
     ### RELATIONS
 
     parent_page_types = ["elections2021.Elections2021ArticlesPage"]
@@ -222,7 +227,7 @@ class Elections2021ArticlesPage(SubpageMixin, MetadataPageMixin, Page):
         ),
     ]
 
-    settings_panels = []
+    settings_panels = [CommentPanel()]
 
     ### RELATIONS
 
@@ -274,7 +279,7 @@ class Elections2021CandidatesListPage(SubpageMixin, MetadataPageMixin, Page):
         ),
     ]
 
-    settings_panels = []
+    settings_panels = [CommentPanel()]
 
     ### RELATIONS
 
@@ -350,7 +355,7 @@ class Elections2021CandidatesMapPage(SubpageMixin, MetadataPageMixin, Page):
         ),
     ]
 
-    settings_panels = []
+    settings_panels = [CommentPanel()]
 
     ### RELATIONS
 
@@ -435,7 +440,7 @@ class Elections2021CandidatePage(SubpageMixin, MetadataPageMixin, Page):
         ),
     ]
 
-    settings_panels = []
+    settings_panels = [CommentPanel()]
 
     ### RELATIONS
 
@@ -491,7 +496,7 @@ class Elections2021ProgramPage(SubpageMixin, MetadataPageMixin, Page):
         ),
     ]
 
-    settings_panels = []
+    settings_panels = [CommentPanel()]
 
     ### RELATIONS
 
@@ -703,6 +708,7 @@ class Elections2021ProgramPointPage(SubpageMixin, MetadataPageMixin, Page):
             ],
             gettext_lazy("Common page configuration"),
         ),
+        CommentPanel(),
     ]
 
     faq_panels = [StreamFieldPanel("faq")]
diff --git a/green_deal/models.py b/green_deal/models.py
index a6072cca..03e9cc96 100644
--- a/green_deal/models.py
+++ b/green_deal/models.py
@@ -2,6 +2,7 @@ from django.db import models
 from django.utils import timezone
 from django.utils.translation import gettext_lazy
 from wagtail.admin.edit_handlers import (
+    CommentPanel,
     FieldPanel,
     HelpPanel,
     MultiFieldPanel,
@@ -124,6 +125,7 @@ class GreenDealHomePage(MetadataPageMixin, Page):
     settings_panels = [
         FieldPanel("matomo_id"),
         StreamFieldPanel("top_menu"),
+        CommentPanel(),
     ]
 
     ### RELATIONS
@@ -173,6 +175,8 @@ class GreenDealSubPage(Page, MetadataPageMixin):
         ),
     ]
 
+    settings_panels = [CommentPanel()]
+
     ### RELATIONS
 
     parent_page_types = [
diff --git a/majak/settings/base.py b/majak/settings/base.py
index 10d08998..e8b1ab97 100644
--- a/majak/settings/base.py
+++ b/majak/settings/base.py
@@ -29,6 +29,7 @@ USE_TZ = True
 # ------------------------------------------------------------------------------
 DATABASES = {"default": env.db("DATABASE_URL")}
 DATABASES["default"]["ATOMIC_REQUESTS"] = True
+DEFAULT_AUTO_FIELD = "django.db.models.AutoField"
 
 # APPS
 # ------------------------------------------------------------------------------
diff --git a/regulace_konopi/models.py b/regulace_konopi/models.py
index b7ec50b9..7c1f01ec 100644
--- a/regulace_konopi/models.py
+++ b/regulace_konopi/models.py
@@ -1,6 +1,7 @@
 from django.db import models
 from django.utils.translation import gettext_lazy
 from wagtail.admin.edit_handlers import (
+    CommentPanel,
     FieldPanel,
     HelpPanel,
     MultiFieldPanel,
@@ -137,6 +138,7 @@ class RegkonHomePage(MetadataPageMixin, Page):
     settings_panels = [
         FieldPanel("matomo_id"),
         StreamFieldPanel("top_menu"),
+        CommentPanel(),
     ]
 
     ### RELATIONS
@@ -230,7 +232,7 @@ class RegkonSubPage(Page, MetadataPageMixin):
         StreamFieldPanel("content"),
     ]
 
-    settings_panels = []
+    settings_panels = [CommentPanel()]
 
     ### RELATIONS
 
diff --git a/requirements/base.txt b/requirements/base.txt
index 6e42c7c8..d517b603 100644
--- a/requirements/base.txt
+++ b/requirements/base.txt
@@ -4,15 +4,15 @@
 #
 #    pip-compile base.in
 #
-anyascii==0.1.7
+anyascii==0.2.0
     # via wagtail
 arrow==0.14.7
     # via
     #   -r base.in
     #   ics
-asgiref==3.3.1
+asgiref==3.3.4
     # via django
-beautifulsoup4==4.8.2
+beautifulsoup4==4.9.3
     # via
     #   -r base.in
     #   wagtail
@@ -33,7 +33,7 @@ cryptography==3.4.7
     #   pyopenssl
 django-environ==0.4.5
     # via -r base.in
-django-extensions==3.1.1
+django-extensions==3.1.3
     # via -r base.in
 django-filter==2.4.0
     # via wagtail
@@ -47,14 +47,15 @@ django-settings-export==1.2.1
     # via -r base.in
 django-simple-captcha==0.5.14
     # via -r base.in
-django-taggit==1.3.0
+django-taggit==1.4.0
     # via wagtail
 django-treebeard==4.5.1
     # via wagtail
 django-widget-tweaks==1.4.8
     # via -r base.in
-django==3.1.7
+django==3.2.2
     # via
+    #   django-extensions
     #   django-filter
     #   django-ranged-response
     #   django-redis
@@ -69,7 +70,7 @@ djangorestframework==3.12.4
     # via wagtail
 draftjs-exporter==2.1.7
     # via wagtail
-et-xmlfile==1.0.1
+et-xmlfile==1.1.0
     # via openpyxl
 html5lib==1.1
     # via wagtail
@@ -85,15 +86,15 @@ markdown==3.3.4
     # via -r base.in
 mozilla-django-oidc==1.2.4
     # via pirates
-numpy==1.20.2
+numpy==1.20.3
     # via opencv-python
-opencv-python==4.5.1.48
+opencv-python==4.5.2.52
     # via -r base.in
 openpyxl==3.0.7
     # via tablib
 packaging==20.9
     # via bleach
-pillow==8.1.2
+pillow==8.2.0
     # via
     #   django-simple-captcha
     #   wagtail
@@ -123,9 +124,9 @@ requests==2.25.1
     #   -r base.in
     #   mozilla-django-oidc
     #   wagtail
-sentry-sdk==1.0.0
+sentry-sdk==1.1.0
     # via -r base.in
-six==1.15.0
+six==1.16.0
     # via
     #   bleach
     #   django-simple-captcha
@@ -143,13 +144,15 @@ tablib[xls,xlsx]==3.0.0
     # via wagtail
 tatsu==5.6.1
     # via ics
+telepath==0.1.1
+    # via wagtail
 urllib3==1.26.4
     # via
     #   requests
     #   sentry-sdk
 wagtail-metadata==3.4.0
     # via -r base.in
-wagtail==2.12.3
+wagtail==2.13
     # via
     #   -r base.in
     #   wagtail-metadata
@@ -163,7 +166,7 @@ willow==1.4
     # via wagtail
 xlrd==2.0.1
     # via tablib
-xlsxwriter==1.3.7
+xlsxwriter==1.4.3
     # via wagtail
 xlwt==1.3.0
     # via tablib
diff --git a/requirements/dev.txt b/requirements/dev.txt
index 528dd20f..13587dc0 100644
--- a/requirements/dev.txt
+++ b/requirements/dev.txt
@@ -4,29 +4,72 @@
 #
 #    pip-compile dev.in
 #
-attrs==20.3.0             # via pytest
-coverage==5.5             # via pytest-cov
-factory-boy==3.2.0        # via pytest-factoryboy
-faker==6.6.3              # via factory-boy
-fastdiff==0.2.0           # via snapshottest
-freezegun==1.1.0          # via pytest-freezegun
-inflection==0.5.1         # via pytest-factoryboy
-iniconfig==1.1.1          # via pytest
-packaging==20.9           # via pytest, pytest-sugar
-pluggy==0.13.1            # via pytest
-py==1.10.0                # via pytest
-pyparsing==2.4.7          # via packaging
-pytest-cov==2.11.1        # via -r dev.in
-pytest-django==4.1.0      # via -r dev.in
-pytest-factoryboy==2.1.0  # via -r dev.in
-pytest-freezegun==0.4.2   # via -r dev.in
-pytest-mock==3.5.1        # via -r dev.in
-pytest-sugar==0.9.4       # via -r dev.in
-pytest==6.2.2             # via -r dev.in, pytest-cov, pytest-django, pytest-factoryboy, pytest-freezegun, pytest-mock, pytest-sugar
-python-dateutil==2.8.1    # via faker, freezegun
-six==1.15.0               # via python-dateutil, snapshottest
-snapshottest==0.6.0       # via -r dev.in
-termcolor==1.1.0          # via pytest-sugar, snapshottest
-text-unidecode==1.3       # via faker
-toml==0.10.2              # via pytest
-wasmer==1.0.0             # via fastdiff
+attrs==21.2.0
+    # via pytest
+coverage==5.5
+    # via pytest-cov
+factory-boy==3.2.0
+    # via pytest-factoryboy
+faker==8.1.3
+    # via factory-boy
+fastdiff==0.3.0
+    # via snapshottest
+freezegun==1.1.0
+    # via pytest-freezegun
+inflection==0.5.1
+    # via pytest-factoryboy
+iniconfig==1.1.1
+    # via pytest
+packaging==20.9
+    # via
+    #   pytest
+    #   pytest-sugar
+pluggy==0.13.1
+    # via pytest
+py==1.10.0
+    # via pytest
+pyparsing==2.4.7
+    # via packaging
+pytest-cov==2.11.1
+    # via -r dev.in
+pytest-django==4.2.0
+    # via -r dev.in
+pytest-factoryboy==2.1.0
+    # via -r dev.in
+pytest-freezegun==0.4.2
+    # via -r dev.in
+pytest-mock==3.6.1
+    # via -r dev.in
+pytest-sugar==0.9.4
+    # via -r dev.in
+pytest==6.2.4
+    # via
+    #   -r dev.in
+    #   pytest-cov
+    #   pytest-django
+    #   pytest-factoryboy
+    #   pytest-freezegun
+    #   pytest-mock
+    #   pytest-sugar
+python-dateutil==2.8.1
+    # via
+    #   faker
+    #   freezegun
+six==1.16.0
+    # via
+    #   python-dateutil
+    #   snapshottest
+snapshottest==0.6.0
+    # via -r dev.in
+termcolor==1.1.0
+    # via
+    #   pytest-sugar
+    #   snapshottest
+text-unidecode==1.3
+    # via faker
+toml==0.10.2
+    # via pytest
+wasmer-compiler-cranelift==1.0.0
+    # via fastdiff
+wasmer==1.0.0
+    # via fastdiff
diff --git a/requirements/production.txt b/requirements/production.txt
index 91e5ae5e..d4cb8340 100644
--- a/requirements/production.txt
+++ b/requirements/production.txt
@@ -4,7 +4,8 @@
 #
 #    pip-compile production.in
 #
-gunicorn==20.1.0          # via -r production.in
+gunicorn==20.1.0
+    # via -r production.in
 
 # The following packages are considered to be unsafe in a requirements file:
 # setuptools
diff --git a/senat_campaign/models.py b/senat_campaign/models.py
index e84ef74d..f670187b 100644
--- a/senat_campaign/models.py
+++ b/senat_campaign/models.py
@@ -2,6 +2,7 @@ from django.core.paginator import EmptyPage, PageNotAnInteger, Paginator
 from django.db import models
 from django.utils.translation import gettext_lazy
 from wagtail.admin.edit_handlers import (
+    CommentPanel,
     FieldPanel,
     HelpPanel,
     MultiFieldPanel,
@@ -182,6 +183,7 @@ class SenatCampaignHomePage(Page, MetadataPageMixin, CalendarMixin):
         FieldPanel("calendar_url"),
         FieldPanel("matomo_id"),
         StreamFieldPanel("contacts"),
+        CommentPanel(),
     ]
 
     ### RELATIONS
@@ -296,7 +298,7 @@ class SenatCampaignNewsIndexPage(Page, SubpageMixin, MetaMixin, MetadataPageMixi
         ),
     ]
 
-    settings_panels = []
+    settings_panels = [CommentPanel()]
 
     ### RELATIONS
 
@@ -372,7 +374,7 @@ class SenatCampaignNewsPage(Page, SubpageMixin, MetaMixin, MetadataPageMixin):
         ),
     ]
 
-    settings_panels = [PublishingPanel()]
+    settings_panels = [PublishingPanel(), CommentPanel()]
 
     ### RELATIONS
 
@@ -458,7 +460,7 @@ class SenatCampaignProgramPage(Page, SubpageMixin, MetaMixin, MetadataPageMixin)
         ),
     ]
 
-    settings_panels = []
+    settings_panels = [CommentPanel()]
 
     ### RELATIONS
 
@@ -498,7 +500,7 @@ class SenatCampaignCookiesPage(Page, SubpageMixin, MetaMixin, MetadataPageMixin)
         ),
     ]
 
-    settings_panels = []
+    settings_panels = [CommentPanel()]
 
     ### RELATIONS
 
diff --git a/senate/models.py b/senate/models.py
index 7dea69db..7aaad81f 100644
--- a/senate/models.py
+++ b/senate/models.py
@@ -1,6 +1,7 @@
 from django.db import models
 from django.utils.translation import gettext_lazy
 from wagtail.admin.edit_handlers import (
+    CommentPanel,
     FieldPanel,
     HelpPanel,
     MultiFieldPanel,
@@ -66,9 +67,7 @@ class SenateHomePage(MetadataPageMixin, Page):
         ),
     ]
 
-    settings_panels = [
-        FieldPanel("matomo_id"),
-    ]
+    settings_panels = [FieldPanel("matomo_id"), CommentPanel()]
 
     ### RELATIONS
 
diff --git a/uniweb/models.py b/uniweb/models.py
index c3cd4f88..4389a55b 100644
--- a/uniweb/models.py
+++ b/uniweb/models.py
@@ -7,6 +7,7 @@ from modelcluster.contrib.taggit import ClusterTaggableManager
 from modelcluster.fields import ParentalKey
 from taggit.models import TaggedItemBase
 from wagtail.admin.edit_handlers import (
+    CommentPanel,
     FieldPanel,
     HelpPanel,
     InlinePanel,
@@ -295,7 +296,8 @@ class UniwebHomePage(Page, MetadataPageMixin):
                 FieldPanel("narrow_layout"),
             ],
             "nastavení webu",
-        )
+        ),
+        CommentPanel(),
     ]
 
     menu_panels = [StreamFieldPanel("top_menu")]
@@ -355,7 +357,7 @@ class UniwebFlexiblePage(Page, SubpageMixin, MetadataPageMixin):
         StreamFieldPanel("content"),
     ]
 
-    settings_panels = []
+    settings_panels = [CommentPanel()]
 
     ### RELATIONS
 
@@ -390,7 +392,7 @@ class UniwebArticlesIndexPage(Page, SubpageMixin, MetadataPageMixin):
         ),
     ]
 
-    settings_panels = []
+    settings_panels = [CommentPanel()]
 
     ### RELATIONS
 
@@ -443,7 +445,7 @@ class UniwebArticlePage(Page, ArticleMixin, SubpageMixin, MetadataPageMixin):
         ),
     ]
 
-    settings_panels = [PublishingPanel()]
+    settings_panels = [PublishingPanel(), CommentPanel()]
 
     ### RELATIONS
 
-- 
GitLab