From fb66c064cd06774d0e67ea90d8bb6baec1fcb789 Mon Sep 17 00:00:00 2001 From: Elias Coppens Date: Thu, 19 Dec 2024 14:07:35 +0100 Subject: [PATCH] chore: Partial version bump --- gestioasso/urls.py | 7 +- gestioncof/cms/migrations/0001_initial.py | 120 +++++------ .../0003_directory_entry_optional_links.py | 46 ++-- .../cms/migrations/0004_auto_20200829_2314.py | 64 +++--- ...er_cofdirectoryentrypage_links_and_more.py | 203 ++++++++++++++++++ gestioncof/cms/models.py | 21 +- .../migrations/0020_merge_20241218_2240.py | 13 ++ kfet/cms/hooks.py | 2 +- .../management/commands/kfet_loadwagtail.py | 2 +- kfet/cms/migrations/0001_initial.py | 24 +-- .../migrations/0003_alter_kfetpage_content.py | 90 ++++++++ kfet/cms/models.py | 22 +- requirements.txt | 34 +-- 13 files changed, 470 insertions(+), 178 deletions(-) create mode 100644 gestioncof/cms/migrations/0005_alter_cofdirectoryentrypage_links_and_more.py create mode 100644 gestioncof/migrations/0020_merge_20241218_2240.py create mode 100644 kfet/cms/migrations/0003_alter_kfetpage_content.py diff --git a/gestioasso/urls.py b/gestioasso/urls.py index 10173fbb..cd1ccc47 100644 --- a/gestioasso/urls.py +++ b/gestioasso/urls.py @@ -1,6 +1,7 @@ """ Fichier principal de configuration des urls du projet GestioCOF """ + from django.conf import settings from django.conf.urls.i18n import i18n_patterns from django.conf.urls.static import static @@ -58,10 +59,10 @@ if settings.DEBUG: urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) -# Wagtail URLs (wagtail.core urls must be last, as catch-all) -if "wagtail.core" in settings.INSTALLED_APPS: +# Wagtail URLs (wagtail urls must be last, as catch-all) +if "wagtail" in settings.INSTALLED_APPS: + from wagtail import urls as wagtail_urls from wagtail.admin import urls as wagtailadmin_urls - from wagtail.core import urls as wagtail_urls from wagtail.documents import urls as wagtaildocs_urls urlpatterns += [ diff --git a/gestioncof/cms/migrations/0001_initial.py b/gestioncof/cms/migrations/0001_initial.py index 36a3ff1f..ef024c74 100644 --- a/gestioncof/cms/migrations/0001_initial.py +++ b/gestioncof/cms/migrations/0001_initial.py @@ -3,9 +3,9 @@ from __future__ import unicode_literals import django.db.models.deletion +import wagtail.blocks import wagtail.contrib.routable_page.models -import wagtail.core.blocks -import wagtail.core.fields +import wagtail.fields import wagtail.images.blocks from django.db import migrations, models @@ -72,18 +72,14 @@ class Migration(migrations.Migration): blank=True, null=True, verbose_name="Description rapide" ), ), - ("body", wagtail.core.fields.RichTextField(verbose_name="Contenu")), + ("body", wagtail.fields.RichTextField(verbose_name="Contenu")), ( "body_fr", - wagtail.core.fields.RichTextField( - null=True, verbose_name="Contenu" - ), + wagtail.fields.RichTextField(null=True, verbose_name="Contenu"), ), ( "body_en", - wagtail.core.fields.RichTextField( - null=True, verbose_name="Contenu" - ), + wagtail.fields.RichTextField(null=True, verbose_name="Contenu"), ), ( "is_event", @@ -138,46 +134,40 @@ class Migration(migrations.Migration): to="wagtailcore.Page", ), ), - ("body", wagtail.core.fields.RichTextField(verbose_name="Description")), + ("body", wagtail.fields.RichTextField(verbose_name="Description")), ( "body_fr", - wagtail.core.fields.RichTextField( - null=True, verbose_name="Description" - ), + wagtail.fields.RichTextField(null=True, verbose_name="Description"), ), ( "body_en", - wagtail.core.fields.RichTextField( - null=True, verbose_name="Description" - ), + wagtail.fields.RichTextField(null=True, verbose_name="Description"), ), ( "links", - wagtail.core.fields.StreamField( + wagtail.fields.StreamField( [ ( "lien", - wagtail.core.blocks.StructBlock( + wagtail.blocks.StructBlock( [ ( "url", - wagtail.core.blocks.URLBlock(required=True), + wagtail.blocks.URLBlock(required=True), ), - ("texte", wagtail.core.blocks.CharBlock()), + ("texte", wagtail.blocks.CharBlock()), ] ), ), ( "contact", - wagtail.core.blocks.StructBlock( + wagtail.blocks.StructBlock( [ ( "email", - wagtail.core.blocks.EmailBlock( - required=True - ), + wagtail.blocks.EmailBlock(required=True), ), - ("texte", wagtail.core.blocks.CharBlock()), + ("texte", wagtail.blocks.CharBlock()), ] ), ), @@ -186,31 +176,29 @@ class Migration(migrations.Migration): ), ( "links_fr", - wagtail.core.fields.StreamField( + wagtail.fields.StreamField( [ ( "lien", - wagtail.core.blocks.StructBlock( + wagtail.blocks.StructBlock( [ ( "url", - wagtail.core.blocks.URLBlock(required=True), + wagtail.blocks.URLBlock(required=True), ), - ("texte", wagtail.core.blocks.CharBlock()), + ("texte", wagtail.blocks.CharBlock()), ] ), ), ( "contact", - wagtail.core.blocks.StructBlock( + wagtail.blocks.StructBlock( [ ( "email", - wagtail.core.blocks.EmailBlock( - required=True - ), + wagtail.blocks.EmailBlock(required=True), ), - ("texte", wagtail.core.blocks.CharBlock()), + ("texte", wagtail.blocks.CharBlock()), ] ), ), @@ -220,31 +208,29 @@ class Migration(migrations.Migration): ), ( "links_en", - wagtail.core.fields.StreamField( + wagtail.fields.StreamField( [ ( "lien", - wagtail.core.blocks.StructBlock( + wagtail.blocks.StructBlock( [ ( "url", - wagtail.core.blocks.URLBlock(required=True), + wagtail.blocks.URLBlock(required=True), ), - ("texte", wagtail.core.blocks.CharBlock()), + ("texte", wagtail.blocks.CharBlock()), ] ), ), ( "contact", - wagtail.core.blocks.StructBlock( + wagtail.blocks.StructBlock( [ ( "email", - wagtail.core.blocks.EmailBlock( - required=True - ), + wagtail.blocks.EmailBlock(required=True), ), - ("texte", wagtail.core.blocks.CharBlock()), + ("texte", wagtail.blocks.CharBlock()), ] ), ), @@ -286,17 +272,17 @@ class Migration(migrations.Migration): ), ( "introduction", - wagtail.core.fields.RichTextField(verbose_name="Introduction"), + wagtail.fields.RichTextField(verbose_name="Introduction"), ), ( "introduction_fr", - wagtail.core.fields.RichTextField( + wagtail.fields.RichTextField( null=True, verbose_name="Introduction" ), ), ( "introduction_en", - wagtail.core.fields.RichTextField( + wagtail.fields.RichTextField( null=True, verbose_name="Introduction" ), ), @@ -329,27 +315,27 @@ class Migration(migrations.Migration): ), ( "body", - wagtail.core.fields.StreamField( + wagtail.fields.StreamField( [ ( "heading", - wagtail.core.blocks.CharBlock(classname="full title"), + wagtail.blocks.CharBlock(classname="full title"), ), - ("paragraph", wagtail.core.blocks.RichTextBlock()), + ("paragraph", wagtail.blocks.RichTextBlock()), ("image", wagtail.images.blocks.ImageChooserBlock()), ( "iframe", - wagtail.core.blocks.StructBlock( + wagtail.blocks.StructBlock( [ ( "url", - wagtail.core.blocks.URLBlock( + wagtail.blocks.URLBlock( "Adresse de la page" ), ), ( "height", - wagtail.core.blocks.CharBlock( + wagtail.blocks.CharBlock( "Hauteur (en pixels)" ), ), @@ -361,27 +347,27 @@ class Migration(migrations.Migration): ), ( "body_fr", - wagtail.core.fields.StreamField( + wagtail.fields.StreamField( [ ( "heading", - wagtail.core.blocks.CharBlock(classname="full title"), + wagtail.blocks.CharBlock(classname="full title"), ), - ("paragraph", wagtail.core.blocks.RichTextBlock()), + ("paragraph", wagtail.blocks.RichTextBlock()), ("image", wagtail.images.blocks.ImageChooserBlock()), ( "iframe", - wagtail.core.blocks.StructBlock( + wagtail.blocks.StructBlock( [ ( "url", - wagtail.core.blocks.URLBlock( + wagtail.blocks.URLBlock( "Adresse de la page" ), ), ( "height", - wagtail.core.blocks.CharBlock( + wagtail.blocks.CharBlock( "Hauteur (en pixels)" ), ), @@ -394,27 +380,27 @@ class Migration(migrations.Migration): ), ( "body_en", - wagtail.core.fields.StreamField( + wagtail.fields.StreamField( [ ( "heading", - wagtail.core.blocks.CharBlock(classname="full title"), + wagtail.blocks.CharBlock(classname="full title"), ), - ("paragraph", wagtail.core.blocks.RichTextBlock()), + ("paragraph", wagtail.blocks.RichTextBlock()), ("image", wagtail.images.blocks.ImageChooserBlock()), ( "iframe", - wagtail.core.blocks.StructBlock( + wagtail.blocks.StructBlock( [ ( "url", - wagtail.core.blocks.URLBlock( + wagtail.blocks.URLBlock( "Adresse de la page" ), ), ( "height", - wagtail.core.blocks.CharBlock( + wagtail.blocks.CharBlock( "Hauteur (en pixels)" ), ), @@ -448,17 +434,17 @@ class Migration(migrations.Migration): ), ( "introduction", - wagtail.core.fields.RichTextField(verbose_name="Introduction"), + wagtail.fields.RichTextField(verbose_name="Introduction"), ), ( "introduction_fr", - wagtail.core.fields.RichTextField( + wagtail.fields.RichTextField( null=True, verbose_name="Introduction" ), ), ( "introduction_en", - wagtail.core.fields.RichTextField( + wagtail.fields.RichTextField( null=True, verbose_name="Introduction" ), ), diff --git a/gestioncof/cms/migrations/0003_directory_entry_optional_links.py b/gestioncof/cms/migrations/0003_directory_entry_optional_links.py index 6555236b..22533193 100644 --- a/gestioncof/cms/migrations/0003_directory_entry_optional_links.py +++ b/gestioncof/cms/migrations/0003_directory_entry_optional_links.py @@ -1,7 +1,7 @@ # Generated by Django 2.2.8 on 2019-12-20 16:22 -import wagtail.core.blocks -import wagtail.core.fields +import wagtail.blocks +import wagtail.fields from django.db import migrations @@ -14,26 +14,26 @@ class Migration(migrations.Migration): migrations.AlterField( model_name="cofdirectoryentrypage", name="links", - field=wagtail.core.fields.StreamField( + field=wagtail.fields.StreamField( [ ( "lien", - wagtail.core.blocks.StructBlock( + wagtail.blocks.StructBlock( [ - ("url", wagtail.core.blocks.URLBlock(required=True)), - ("texte", wagtail.core.blocks.CharBlock()), + ("url", wagtail.blocks.URLBlock(required=True)), + ("texte", wagtail.blocks.CharBlock()), ] ), ), ( "contact", - wagtail.core.blocks.StructBlock( + wagtail.blocks.StructBlock( [ ( "email", - wagtail.core.blocks.EmailBlock(required=True), + wagtail.blocks.EmailBlock(required=True), ), - ("texte", wagtail.core.blocks.CharBlock()), + ("texte", wagtail.blocks.CharBlock()), ] ), ), @@ -44,26 +44,26 @@ class Migration(migrations.Migration): migrations.AlterField( model_name="cofdirectoryentrypage", name="links_en", - field=wagtail.core.fields.StreamField( + field=wagtail.fields.StreamField( [ ( "lien", - wagtail.core.blocks.StructBlock( + wagtail.blocks.StructBlock( [ - ("url", wagtail.core.blocks.URLBlock(required=True)), - ("texte", wagtail.core.blocks.CharBlock()), + ("url", wagtail.blocks.URLBlock(required=True)), + ("texte", wagtail.blocks.CharBlock()), ] ), ), ( "contact", - wagtail.core.blocks.StructBlock( + wagtail.blocks.StructBlock( [ ( "email", - wagtail.core.blocks.EmailBlock(required=True), + wagtail.blocks.EmailBlock(required=True), ), - ("texte", wagtail.core.blocks.CharBlock()), + ("texte", wagtail.blocks.CharBlock()), ] ), ), @@ -75,26 +75,26 @@ class Migration(migrations.Migration): migrations.AlterField( model_name="cofdirectoryentrypage", name="links_fr", - field=wagtail.core.fields.StreamField( + field=wagtail.fields.StreamField( [ ( "lien", - wagtail.core.blocks.StructBlock( + wagtail.blocks.StructBlock( [ - ("url", wagtail.core.blocks.URLBlock(required=True)), - ("texte", wagtail.core.blocks.CharBlock()), + ("url", wagtail.blocks.URLBlock(required=True)), + ("texte", wagtail.blocks.CharBlock()), ] ), ), ( "contact", - wagtail.core.blocks.StructBlock( + wagtail.blocks.StructBlock( [ ( "email", - wagtail.core.blocks.EmailBlock(required=True), + wagtail.blocks.EmailBlock(required=True), ), - ("texte", wagtail.core.blocks.CharBlock()), + ("texte", wagtail.blocks.CharBlock()), ] ), ), diff --git a/gestioncof/cms/migrations/0004_auto_20200829_2314.py b/gestioncof/cms/migrations/0004_auto_20200829_2314.py index dd525a2c..eb660ad9 100644 --- a/gestioncof/cms/migrations/0004_auto_20200829_2314.py +++ b/gestioncof/cms/migrations/0004_auto_20200829_2314.py @@ -1,7 +1,7 @@ # Generated by Django 2.2.15 on 2020-08-29 21:14 -import wagtail.core.blocks -import wagtail.core.fields +import wagtail.blocks +import wagtail.fields from django.db import migrations @@ -14,35 +14,35 @@ class Migration(migrations.Migration): migrations.AlterField( model_name="cofdirectoryentrypage", name="links", - field=wagtail.core.fields.StreamField( + field=wagtail.fields.StreamField( [ ( "lien", - wagtail.core.blocks.StructBlock( + wagtail.blocks.StructBlock( [ - ("url", wagtail.core.blocks.URLBlock(required=True)), - ("texte", wagtail.core.blocks.CharBlock()), + ("url", wagtail.blocks.URLBlock(required=True)), + ("texte", wagtail.blocks.CharBlock()), ] ), ), ( "contact", - wagtail.core.blocks.StructBlock( + wagtail.blocks.StructBlock( [ ( "email", - wagtail.core.blocks.EmailBlock(required=True), + wagtail.blocks.EmailBlock(required=True), ), - ("texte", wagtail.core.blocks.CharBlock()), + ("texte", wagtail.blocks.CharBlock()), ] ), ), ( "info", - wagtail.core.blocks.StructBlock( + wagtail.blocks.StructBlock( [ - ("nom", wagtail.core.blocks.CharBlock(required=False)), - ("texte", wagtail.core.blocks.CharBlock(required=True)), + ("nom", wagtail.blocks.CharBlock(required=False)), + ("texte", wagtail.blocks.CharBlock(required=True)), ] ), ), @@ -53,35 +53,35 @@ class Migration(migrations.Migration): migrations.AlterField( model_name="cofdirectoryentrypage", name="links_en", - field=wagtail.core.fields.StreamField( + field=wagtail.fields.StreamField( [ ( "lien", - wagtail.core.blocks.StructBlock( + wagtail.blocks.StructBlock( [ - ("url", wagtail.core.blocks.URLBlock(required=True)), - ("texte", wagtail.core.blocks.CharBlock()), + ("url", wagtail.blocks.URLBlock(required=True)), + ("texte", wagtail.blocks.CharBlock()), ] ), ), ( "contact", - wagtail.core.blocks.StructBlock( + wagtail.blocks.StructBlock( [ ( "email", - wagtail.core.blocks.EmailBlock(required=True), + wagtail.blocks.EmailBlock(required=True), ), - ("texte", wagtail.core.blocks.CharBlock()), + ("texte", wagtail.blocks.CharBlock()), ] ), ), ( "info", - wagtail.core.blocks.StructBlock( + wagtail.blocks.StructBlock( [ - ("nom", wagtail.core.blocks.CharBlock(required=False)), - ("texte", wagtail.core.blocks.CharBlock(required=True)), + ("nom", wagtail.blocks.CharBlock(required=False)), + ("texte", wagtail.blocks.CharBlock(required=True)), ] ), ), @@ -93,35 +93,35 @@ class Migration(migrations.Migration): migrations.AlterField( model_name="cofdirectoryentrypage", name="links_fr", - field=wagtail.core.fields.StreamField( + field=wagtail.fields.StreamField( [ ( "lien", - wagtail.core.blocks.StructBlock( + wagtail.blocks.StructBlock( [ - ("url", wagtail.core.blocks.URLBlock(required=True)), - ("texte", wagtail.core.blocks.CharBlock()), + ("url", wagtail.blocks.URLBlock(required=True)), + ("texte", wagtail.blocks.CharBlock()), ] ), ), ( "contact", - wagtail.core.blocks.StructBlock( + wagtail.blocks.StructBlock( [ ( "email", - wagtail.core.blocks.EmailBlock(required=True), + wagtail.blocks.EmailBlock(required=True), ), - ("texte", wagtail.core.blocks.CharBlock()), + ("texte", wagtail.blocks.CharBlock()), ] ), ), ( "info", - wagtail.core.blocks.StructBlock( + wagtail.blocks.StructBlock( [ - ("nom", wagtail.core.blocks.CharBlock(required=False)), - ("texte", wagtail.core.blocks.CharBlock(required=True)), + ("nom", wagtail.blocks.CharBlock(required=False)), + ("texte", wagtail.blocks.CharBlock(required=True)), ] ), ), diff --git a/gestioncof/cms/migrations/0005_alter_cofdirectoryentrypage_links_and_more.py b/gestioncof/cms/migrations/0005_alter_cofdirectoryentrypage_links_and_more.py new file mode 100644 index 00000000..5b563942 --- /dev/null +++ b/gestioncof/cms/migrations/0005_alter_cofdirectoryentrypage_links_and_more.py @@ -0,0 +1,203 @@ +# Generated by Django 4.2.17 on 2024-12-19 12:27 + +import wagtail.blocks +import wagtail.fields +import wagtail.images.blocks +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ("cofcms", "0004_auto_20200829_2314"), + ] + + operations = [ + migrations.AlterField( + model_name="cofdirectoryentrypage", + name="links", + field=wagtail.fields.StreamField( + [ + ( + "lien", + wagtail.blocks.StructBlock( + [ + ("url", wagtail.blocks.URLBlock(required=True)), + ("texte", wagtail.blocks.CharBlock()), + ] + ), + ), + ( + "contact", + wagtail.blocks.StructBlock( + [ + ("email", wagtail.blocks.EmailBlock(required=True)), + ("texte", wagtail.blocks.CharBlock()), + ] + ), + ), + ( + "info", + wagtail.blocks.StructBlock( + [ + ("nom", wagtail.blocks.CharBlock(required=False)), + ("texte", wagtail.blocks.CharBlock(required=True)), + ] + ), + ), + ], + blank=True, + use_json_field=True, + ), + ), + migrations.AlterField( + model_name="cofdirectoryentrypage", + name="links_en", + field=wagtail.fields.StreamField( + [ + ( + "lien", + wagtail.blocks.StructBlock( + [ + ("url", wagtail.blocks.URLBlock(required=True)), + ("texte", wagtail.blocks.CharBlock()), + ] + ), + ), + ( + "contact", + wagtail.blocks.StructBlock( + [ + ("email", wagtail.blocks.EmailBlock(required=True)), + ("texte", wagtail.blocks.CharBlock()), + ] + ), + ), + ( + "info", + wagtail.blocks.StructBlock( + [ + ("nom", wagtail.blocks.CharBlock(required=False)), + ("texte", wagtail.blocks.CharBlock(required=True)), + ] + ), + ), + ], + blank=True, + null=True, + use_json_field=True, + ), + ), + migrations.AlterField( + model_name="cofdirectoryentrypage", + name="links_fr", + field=wagtail.fields.StreamField( + [ + ( + "lien", + wagtail.blocks.StructBlock( + [ + ("url", wagtail.blocks.URLBlock(required=True)), + ("texte", wagtail.blocks.CharBlock()), + ] + ), + ), + ( + "contact", + wagtail.blocks.StructBlock( + [ + ("email", wagtail.blocks.EmailBlock(required=True)), + ("texte", wagtail.blocks.CharBlock()), + ] + ), + ), + ( + "info", + wagtail.blocks.StructBlock( + [ + ("nom", wagtail.blocks.CharBlock(required=False)), + ("texte", wagtail.blocks.CharBlock(required=True)), + ] + ), + ), + ], + blank=True, + null=True, + use_json_field=True, + ), + ), + migrations.AlterField( + model_name="cofpage", + name="body", + field=wagtail.fields.StreamField( + [ + ("heading", wagtail.blocks.CharBlock(form_classname="full title")), + ("paragraph", wagtail.blocks.RichTextBlock()), + ("image", wagtail.images.blocks.ImageChooserBlock()), + ( + "iframe", + wagtail.blocks.StructBlock( + [ + ("url", wagtail.blocks.URLBlock("Adresse de la page")), + ( + "height", + wagtail.blocks.CharBlock("Hauteur (en pixels)"), + ), + ] + ), + ), + ], + use_json_field=True, + ), + ), + migrations.AlterField( + model_name="cofpage", + name="body_en", + field=wagtail.fields.StreamField( + [ + ("heading", wagtail.blocks.CharBlock(form_classname="full title")), + ("paragraph", wagtail.blocks.RichTextBlock()), + ("image", wagtail.images.blocks.ImageChooserBlock()), + ( + "iframe", + wagtail.blocks.StructBlock( + [ + ("url", wagtail.blocks.URLBlock("Adresse de la page")), + ( + "height", + wagtail.blocks.CharBlock("Hauteur (en pixels)"), + ), + ] + ), + ), + ], + null=True, + use_json_field=True, + ), + ), + migrations.AlterField( + model_name="cofpage", + name="body_fr", + field=wagtail.fields.StreamField( + [ + ("heading", wagtail.blocks.CharBlock(form_classname="full title")), + ("paragraph", wagtail.blocks.RichTextBlock()), + ("image", wagtail.images.blocks.ImageChooserBlock()), + ( + "iframe", + wagtail.blocks.StructBlock( + [ + ("url", wagtail.blocks.URLBlock("Adresse de la page")), + ( + "height", + wagtail.blocks.CharBlock("Hauteur (en pixels)"), + ), + ] + ), + ), + ], + null=True, + use_json_field=True, + ), + ), + ] diff --git a/gestioncof/cms/models.py b/gestioncof/cms/models.py index 57881084..6e9e8715 100644 --- a/gestioncof/cms/models.py +++ b/gestioncof/cms/models.py @@ -1,12 +1,11 @@ from django.core.paginator import EmptyPage, PageNotAnInteger, Paginator from django.db import models -from wagtail.admin.edit_handlers import FieldPanel, StreamFieldPanel +from wagtail import blocks +from wagtail.admin.panels import FieldPanel from wagtail.contrib.routable_page.models import RoutablePageMixin, route -from wagtail.core import blocks -from wagtail.core.fields import RichTextField, StreamField -from wagtail.core.models import Page +from wagtail.fields import RichTextField, StreamField from wagtail.images.blocks import ImageChooserBlock -from wagtail.images.edit_handlers import ImageChooserPanel +from wagtail.models import Page # Page pouvant afficher des actualités @@ -69,10 +68,11 @@ class COFPage(Page): ("paragraph", blocks.RichTextBlock()), ("image", ImageChooserBlock()), ("iframe", IFrameBlock()), - ] + ], + use_json_field=True, ) - content_panels = Page.content_panels + [StreamFieldPanel("body")] + content_panels = Page.content_panels + [FieldPanel("body")] subpage_types = ["COFDirectoryPage", "COFPage"] parent_page_types = ["COFPage", "COFRootPage"] @@ -127,7 +127,7 @@ class COFActuPage(RoutablePageMixin, Page): all_day = models.BooleanField("Toute la journée", default=False, blank=True) content_panels = Page.content_panels + [ - ImageChooserPanel("image"), + FieldPanel("image"), FieldPanel("chapo"), FieldPanel("body", classname="full"), FieldPanel("is_event"), @@ -204,6 +204,7 @@ class COFDirectoryEntryPage(Page): ), ], blank=True, + use_json_field=True, ) image = models.ForeignKey( @@ -216,9 +217,9 @@ class COFDirectoryEntryPage(Page): ) content_panels = Page.content_panels + [ - ImageChooserPanel("image"), + FieldPanel("image"), FieldPanel("body", classname="full"), - StreamFieldPanel("links"), + FieldPanel("links"), ] subpage_types = [] diff --git a/gestioncof/migrations/0020_merge_20241218_2240.py b/gestioncof/migrations/0020_merge_20241218_2240.py new file mode 100644 index 00000000..af017d4c --- /dev/null +++ b/gestioncof/migrations/0020_merge_20241218_2240.py @@ -0,0 +1,13 @@ +# Generated by Django 3.2.25 on 2024-12-18 21:40 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ("gestioncof", "0019_auto_20220630_1241"), + ("gestioncof", "0019_cofprofile_date_adhesion"), + ] + + operations = [] diff --git a/kfet/cms/hooks.py b/kfet/cms/hooks.py index 67261c74..df400e0f 100644 --- a/kfet/cms/hooks.py +++ b/kfet/cms/hooks.py @@ -1,6 +1,6 @@ from django.templatetags.static import static from django.utils.html import format_html -from wagtail.core import hooks +from wagtail import hooks @hooks.register("insert_editor_css") diff --git a/kfet/cms/management/commands/kfet_loadwagtail.py b/kfet/cms/management/commands/kfet_loadwagtail.py index 17ed842a..fd04e8e3 100644 --- a/kfet/cms/management/commands/kfet_loadwagtail.py +++ b/kfet/cms/management/commands/kfet_loadwagtail.py @@ -1,7 +1,7 @@ from django.contrib.auth.models import Group from django.core.management import call_command from django.core.management.base import BaseCommand -from wagtail.core.models import Page, Site +from wagtail.models import Page, Site class Command(BaseCommand): diff --git a/kfet/cms/migrations/0001_initial.py b/kfet/cms/migrations/0001_initial.py index af3a1f09..b19f0db5 100644 --- a/kfet/cms/migrations/0001_initial.py +++ b/kfet/cms/migrations/0001_initial.py @@ -2,8 +2,8 @@ from __future__ import unicode_literals import django.db.models.deletion -import wagtail.core.blocks -import wagtail.core.fields +import wagtail.blocks +import wagtail.fields import wagtail.snippets.blocks from django.db import migrations, models @@ -41,20 +41,20 @@ class Migration(migrations.Migration): ), ( "content", - wagtail.core.fields.StreamField( + wagtail.fields.StreamField( ( ( "rich", - wagtail.core.blocks.RichTextBlock(label="Éditeur"), + wagtail.blocks.RichTextBlock(label="Éditeur"), ), ("carte", kfet.cms.models.MenuBlock()), ( "group_team", - wagtail.core.blocks.StructBlock( + wagtail.blocks.StructBlock( ( ( "show_only", - wagtail.core.blocks.IntegerBlock( + wagtail.blocks.IntegerBlock( help_text="Nombre initial de membres affichés. Laisser vide pour tou-te-s les afficher.", # noqa required=False, label="Montrer seulement", @@ -62,7 +62,7 @@ class Migration(migrations.Migration): ), ( "members", - wagtail.core.blocks.ListBlock( + wagtail.blocks.ListBlock( wagtail.snippets.blocks.SnippetChooserBlock( # noqa kfet.cms.models.MemberTeam ), @@ -75,22 +75,22 @@ class Migration(migrations.Migration): ), ( "group", - wagtail.core.blocks.StreamBlock( + wagtail.blocks.StreamBlock( ( ( "rich", - wagtail.core.blocks.RichTextBlock( + wagtail.blocks.RichTextBlock( label="Éditeur" ), ), ("carte", kfet.cms.models.MenuBlock()), ( "group_team", - wagtail.core.blocks.StructBlock( + wagtail.blocks.StructBlock( ( ( "show_only", - wagtail.core.blocks.IntegerBlock( # noqa + wagtail.blocks.IntegerBlock( # noqa help_text="Nombre initial de membres affichés. Laisser vide pour tou-te-s les afficher.", # noqa required=False, label="Montrer seulement", @@ -98,7 +98,7 @@ class Migration(migrations.Migration): ), ( "members", - wagtail.core.blocks.ListBlock( + wagtail.blocks.ListBlock( wagtail.snippets.blocks.SnippetChooserBlock( # noqa kfet.cms.models.MemberTeam # noqa ), diff --git a/kfet/cms/migrations/0003_alter_kfetpage_content.py b/kfet/cms/migrations/0003_alter_kfetpage_content.py new file mode 100644 index 00000000..7e41eab4 --- /dev/null +++ b/kfet/cms/migrations/0003_alter_kfetpage_content.py @@ -0,0 +1,90 @@ +# Generated by Django 4.2.17 on 2024-12-19 12:27 + +import wagtail.blocks +import wagtail.fields +import wagtail.snippets.blocks +from django.db import migrations + +import kfet.cms.models + + +class Migration(migrations.Migration): + + dependencies = [ + ("kfetcms", "0002_alter_kfetpage_colcount"), + ] + + operations = [ + migrations.AlterField( + model_name="kfetpage", + name="content", + field=wagtail.fields.StreamField( + [ + ("rich", wagtail.blocks.RichTextBlock(label="Éditeur")), + ("carte", kfet.cms.models.MenuBlock()), + ( + "group_team", + wagtail.blocks.StructBlock( + [ + ( + "show_only", + wagtail.blocks.IntegerBlock( + help_text="Nombre initial de membres affichés. Laisser vide pour tou-te-s les afficher.", + label="Montrer seulement", + required=False, + ), + ), + ( + "members", + wagtail.blocks.ListBlock( + wagtail.snippets.blocks.SnippetChooserBlock( + kfet.cms.models.MemberTeam + ), + form_classname="team-group", + label="K-Fêt-eux-ses", + ), + ), + ] + ), + ), + ( + "group", + wagtail.blocks.StreamBlock( + [ + ("rich", wagtail.blocks.RichTextBlock(label="Éditeur")), + ("carte", kfet.cms.models.MenuBlock()), + ( + "group_team", + wagtail.blocks.StructBlock( + [ + ( + "show_only", + wagtail.blocks.IntegerBlock( + help_text="Nombre initial de membres affichés. Laisser vide pour tou-te-s les afficher.", + label="Montrer seulement", + required=False, + ), + ), + ( + "members", + wagtail.blocks.ListBlock( + wagtail.snippets.blocks.SnippetChooserBlock( + kfet.cms.models.MemberTeam + ), + form_classname="team-group", + label="K-Fêt-eux-ses", + ), + ), + ] + ), + ), + ], + label="Contenu groupé", + ), + ), + ], + use_json_field=True, + verbose_name="Contenu", + ), + ), + ] diff --git a/kfet/cms/models.py b/kfet/cms/models.py index 8747c280..6ba36940 100644 --- a/kfet/cms/models.py +++ b/kfet/cms/models.py @@ -1,15 +1,9 @@ from django.db import models from django.utils.translation import gettext_lazy as _ -from wagtail.admin.edit_handlers import ( - FieldPanel, - FieldRowPanel, - MultiFieldPanel, - StreamFieldPanel, -) -from wagtail.core import blocks -from wagtail.core.fields import StreamField -from wagtail.core.models import Page -from wagtail.images.edit_handlers import ImageChooserPanel +from wagtail import blocks +from wagtail.admin.panels import FieldPanel, FieldRowPanel, MultiFieldPanel +from wagtail.fields import StreamField +from wagtail.models import Page from wagtail.snippets.blocks import SnippetChooserBlock from wagtail.snippets.models import register_snippet @@ -43,7 +37,7 @@ class MemberTeam(models.Model): FieldPanel("first_name"), FieldPanel("last_name"), FieldPanel("nick_name"), - ImageChooserPanel("photo"), + FieldPanel("photo"), ] def __str__(self): @@ -97,7 +91,9 @@ class KFetStreamBlock(ChoicesStreamBlock): class KFetPage(Page): - content = StreamField(KFetStreamBlock, verbose_name=_("Contenu")) + content = StreamField( + KFetStreamBlock, verbose_name=_("Contenu"), use_json_field=True + ) # Layout fields @@ -135,7 +131,7 @@ class KFetPage(Page): # Panels - content_panels = Page.content_panels + [StreamFieldPanel("content")] + content_panels = Page.content_panels + [FieldPanel("content")] layout_panel = [ FieldPanel("no_header"), diff --git a/requirements.txt b/requirements.txt index 2016b576..42ce4704 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,19 +1,21 @@ -Django==3.2.* -Pillow==7.2.0 +Django==4.2.17 +Pillow==9.5.0 authens==0.1b4 -channels==3.0.* -configparser==3.5.0 -django-autocomplete-light==3.9.4 -django-bootstrap-form==3.3 -django-cas-ng==4.3.* -django-cors-headers==3.13.0 -django-djconfig==0.10.0 +channels==3.0.5 +configparser==5.3.0 +django-autocomplete-light==3.11.0 +django-bootstrap-form==3.4 +django-cas-ng==5.0.1 +django-cors-headers==3.14.0 +django-djconfig==0.11.0 django-hCaptcha==0.2.0 -django-js-reverse==0.9.1 -django-widget-tweaks==1.4.1 -icalendar==4.0.7 -python-dateutil==2.8.1 +django-js-reverse==0.10.2 +django-widget-tweaks==1.4.12 +icalendar==5.0.13 +python-dateutil==2.9.0.post0 statistics==1.0.3.5 -wagtail-modeltranslation==0.11.* -wagtail==2.13.* -wagtailmenus==3.0.* +wagtail-modeltranslation==0.14.2 +django-modeltranslation==0.18.9 +wagtail==5.2.7 +wagtailmenus==3.1.9 +django-debug-toolbar==4.3.0