diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index 7b58ef866..1fae8f31e 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -66,7 +66,7 @@ jobs:
run: |
rm -rf tmp/
export DJANGO_SETTINGS_MODULE="config.settings.production"
- pip install -I google-cloud-storage==1.13.2 -t lib/
+ pip install -I google-cloud-storage==1.44.0 -t lib/
- id: 'auth'
name: Authenticate with Google App Engine
uses: google-github-actions/auth@v1
diff --git a/ads/models.py b/ads/models.py
index e90285cee..d48ec9ddf 100644
--- a/ads/models.py
+++ b/ads/models.py
@@ -1,8 +1,8 @@
from django.db import models
from modelcluster.fields import ParentalKey
from modelcluster.models import ClusterableModel
-from wagtail.admin.edit_handlers import TabbedInterface, ObjectList, MultiFieldPanel, HelpPanel, InlinePanel
-from wagtail.core.models import Orderable
+from wagtail.admin.panels import TabbedInterface, ObjectList, MultiFieldPanel, HelpPanel, InlinePanel
+from wagtail.models import Orderable
from wagtail.contrib.settings.models import BaseSetting, register_setting
from wagtailmodelchooser import register_model_chooser
from wagtailmodelchooser.edit_handlers import ModelChooserPanel
diff --git a/app.yaml b/app.yaml
index c8cca4029..52f92d8a0 100644
--- a/app.yaml
+++ b/app.yaml
@@ -1,4 +1,4 @@
-runtime: python37
+runtime: python39
entrypoint: gunicorn -b :$PORT --chdir ubyssey/ wsgi:application
instance_class: F4_1G
diff --git a/archive/models.py b/archive/models.py
index 14db83895..e55ffd37a 100644
--- a/archive/models.py
+++ b/archive/models.py
@@ -9,9 +9,9 @@
from modelcluster.fields import ParentalKey
from section.models import SectionPage
-from wagtail.core.models import Page, Orderable
+from wagtail.models import Page, Orderable
from wagtail.snippets.edit_handlers import SnippetChooserPanel
-from wagtail.admin.edit_handlers import MultiFieldPanel, InlinePanel, HelpPanel, PageChooserPanel
+from wagtail.admin.panels import MultiFieldPanel, InlinePanel, HelpPanel, PageChooserPanel, FieldPanel
from wagtail.contrib.routable_page.models import RoutablePageMixin, route
from videos.models import VideosPage, VideoSnippet
@@ -53,7 +53,7 @@ class MagazineOrderables(Orderable):
panels = [
MultiFieldPanel(
[
- SnippetChooserPanel('magazine_filter'),
+ FieldPanel('magazine_filter'),
],
heading="Magazine",
),
@@ -74,7 +74,7 @@ class SpoofOrderables(Orderable):
panels = [
MultiFieldPanel(
[
- SnippetChooserPanel('spoof_filter'),
+ FieldPanel('spoof_filter'),
],
heading="Spoof",
),
diff --git a/article/blocks.py b/article/blocks.py
index 53400cb63..81d65fc7f 100644
--- a/article/blocks.py
+++ b/article/blocks.py
@@ -1,5 +1,5 @@
-from wagtail.core import blocks
-from wagtail.core.blocks import field_block
+from wagtail import blocks
+from wagtail.blocks import field_block
from images import blocks as image_blocks
from videos import blocks as video_blocks
from wagtail.documents.blocks import DocumentChooserBlock
diff --git a/article/migrations/0001_initial.py b/article/migrations/0001_initial.py
index ce1bf362d..29e1da67b 100644
--- a/article/migrations/0001_initial.py
+++ b/article/migrations/0001_initial.py
@@ -5,8 +5,8 @@
import django.utils.timezone
import images.models
import modelcluster.fields
-import wagtail.core.blocks
-import wagtail.core.fields
+import wagtail.blocks
+import wagtail.fields
import wagtail.embeds.blocks
import wagtail.images.blocks
import wagtail.snippets.blocks
@@ -52,7 +52,7 @@ class Migration(migrations.Migration):
fields=[
('page_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='wagtailcore.page')),
('current_section', models.CharField(blank=True, default='', max_length=255)),
- ('content', wagtail.core.fields.StreamField([('richtext', wagtail.core.blocks.RichTextBlock(help_text='Write your article contents here. See documentation: https://docs.wagtail.io/en/latest/editor_manual/new_pages/creating_body_content.html#rich-text-fields', label='Rich Text Block')), ('plaintext', wagtail.core.blocks.TextBlock(help_text='Warning: Rich Text Blocks preferred! Plain text primarily exists for importing old Dispatch text.', label='Plain Text Block')), ('dropcap', wagtail.core.blocks.TextBlock(help_text='DO NOT USE - Legacy block. Create a block where special dropcap styling with be applied to the first letter and the first letter only.\n\nThe contents of this block will be enclosed in a
...
element, allowing its targetting for styling.\n\nNo RichText allowed.', label='Dropcap Block', template='article/stream_blocks/dropcap.html')), ('video', wagtail.core.blocks.StructBlock([('video_embed', wagtail.embeds.blocks.EmbedBlock(blank=False, null=False)), ('title', wagtail.core.blocks.CharBlock(max_length=255, required=False)), ('caption', wagtail.core.blocks.CharBlock(max_length=255, required=False)), ('credit', wagtail.core.blocks.CharBlock(max_length=255, required=False))], help_text='Use this to credit or caption videos that will only be associated with this current article, rather than entered into our video library. You can also embed videos in a Rich Text Block.', label='Credited/Captioned One-Off Video')), ('image', wagtail.core.blocks.StructBlock([('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('style', wagtail.core.blocks.ChoiceBlock(choices=[('default', 'Default'), ('left', 'Left'), ('right', 'Right')])), ('width', wagtail.core.blocks.ChoiceBlock(choices=[('full', 'Full'), ('small', 'Small'), ('medium', 'Medium'), ('large', 'Large')])), ('caption', wagtail.core.blocks.CharBlock(max_length=255, required=False)), ('credit', wagtail.core.blocks.CharBlock(max_length=255, required=False))])), ('raw_html', wagtail.core.blocks.RawHTMLBlock(help_text="WARNING: DO NOT use this unless you really know what you're doing!", label='Raw HTML Block')), ('quote', wagtail.core.blocks.StructBlock([('content', wagtail.core.blocks.CharBlock(required=False)), ('source', wagtail.core.blocks.CharBlock(required=False))], label='Pull Quote', template='article/stream_blocks/quote.html')), ('gallery', wagtail.snippets.blocks.SnippetChooserBlock(target_model=images.models.GallerySnippet, template='article/stream_blocks/gallery.html'))], blank=True, null=True)),
+ ('content', wagtail.fields.StreamField([('richtext', wagtail.blocks.RichTextBlock(help_text='Write your article contents here. See documentation: https://docs.wagtail.io/en/latest/editor_manual/new_pages/creating_body_content.html#rich-text-fields', label='Rich Text Block')), ('plaintext', wagtail.blocks.TextBlock(help_text='Warning: Rich Text Blocks preferred! Plain text primarily exists for importing old Dispatch text.', label='Plain Text Block')), ('dropcap', wagtail.blocks.TextBlock(help_text='DO NOT USE - Legacy block. Create a block where special dropcap styling with be applied to the first letter and the first letter only.\n\nThe contents of this block will be enclosed in a ...
element, allowing its targetting for styling.\n\nNo RichText allowed.', label='Dropcap Block', template='article/stream_blocks/dropcap.html')), ('video', wagtail.blocks.StructBlock([('video_embed', wagtail.embeds.blocks.EmbedBlock(blank=False, null=False)), ('title', wagtail.blocks.CharBlock(max_length=255, required=False)), ('caption', wagtail.blocks.CharBlock(max_length=255, required=False)), ('credit', wagtail.blocks.CharBlock(max_length=255, required=False))], help_text='Use this to credit or caption videos that will only be associated with this current article, rather than entered into our video library. You can also embed videos in a Rich Text Block.', label='Credited/Captioned One-Off Video')), ('image', wagtail.blocks.StructBlock([('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('style', wagtail.blocks.ChoiceBlock(choices=[('default', 'Default'), ('left', 'Left'), ('right', 'Right')])), ('width', wagtail.blocks.ChoiceBlock(choices=[('full', 'Full'), ('small', 'Small'), ('medium', 'Medium'), ('large', 'Large')])), ('caption', wagtail.blocks.CharBlock(max_length=255, required=False)), ('credit', wagtail.blocks.CharBlock(max_length=255, required=False))])), ('raw_html', wagtail.blocks.RawHTMLBlock(help_text="WARNING: DO NOT use this unless you really know what you're doing!", label='Raw HTML Block')), ('quote', wagtail.blocks.StructBlock([('content', wagtail.blocks.CharBlock(required=False)), ('source', wagtail.blocks.CharBlock(required=False))], label='Pull Quote', template='article/stream_blocks/quote.html')), ('gallery', wagtail.snippets.blocks.SnippetChooserBlock(target_model=images.models.GallerySnippet, template='article/stream_blocks/gallery.html'))], blank=True, null=True)),
('explicit_published_at', models.DateTimeField(blank=True, help_text='Optional. Publication date which is explicitly shown to the reader. Articles are seperately date/timestamped for database use; if this field is blank front page etc. will display the database publication date.', null=True, verbose_name='Published At (Override)')),
('last_modified_at', models.DateTimeField(auto_now=True)),
('show_last_modified', models.BooleanField(default=False, help_text='Check this to alert readers the article has been revised since its publication.')),
diff --git a/article/migrations/0014_specialarticlelikepage_right_column_content.py b/article/migrations/0014_specialarticlelikepage_right_column_content.py
index c54a81a8b..10749bb38 100644
--- a/article/migrations/0014_specialarticlelikepage_right_column_content.py
+++ b/article/migrations/0014_specialarticlelikepage_right_column_content.py
@@ -1,8 +1,8 @@
# Generated by Django 3.2.11 on 2022-06-14 19:36
from django.db import migrations
-import wagtail.core.blocks
-import wagtail.core.fields
+import wagtail.blocks
+import wagtail.fields
class Migration(migrations.Migration):
@@ -16,6 +16,6 @@ class Migration(migrations.Migration):
migrations.AddField(
model_name='specialarticlelikepage',
name='right_column_content',
- field=wagtail.core.fields.StreamField([('richtext', wagtail.core.blocks.RichTextBlock(help_text='Write your article contents here. See documentation: https://docs.wagtail.io/en/latest/editor_manual/new_pages/creating_body_content.html#rich-text-fields', label='Rich Text Block')), ('plaintext', wagtail.core.blocks.TextBlock(help_text='Warning: Rich Text Blocks preferred! Plain text primarily exists for importing old Dispatch text.', label='Plain Text Block'))], blank=True, null=True),
+ field=wagtail.fields.StreamField([('richtext', wagtail.blocks.RichTextBlock(help_text='Write your article contents here. See documentation: https://docs.wagtail.io/en/latest/editor_manual/new_pages/creating_body_content.html#rich-text-fields', label='Rich Text Block')), ('plaintext', wagtail.blocks.TextBlock(help_text='Warning: Rich Text Blocks preferred! Plain text primarily exists for importing old Dispatch text.', label='Plain Text Block'))], blank=True, null=True),
),
]
diff --git a/article/migrations/0019_alter_articlepage_content.py b/article/migrations/0019_alter_articlepage_content.py
index 2f946dab0..013fb3ce2 100644
--- a/article/migrations/0019_alter_articlepage_content.py
+++ b/article/migrations/0019_alter_articlepage_content.py
@@ -2,8 +2,8 @@
from django.db import migrations
import images.models
-import wagtail.core.blocks
-import wagtail.core.fields
+import wagtail.blocks
+import wagtail.fields
import wagtail.embeds.blocks
import wagtail.images.blocks
import wagtail.snippets.blocks
@@ -19,6 +19,6 @@ class Migration(migrations.Migration):
migrations.AlterField(
model_name='articlepage',
name='content',
- field=wagtail.core.fields.StreamField([('richtext', wagtail.core.blocks.RichTextBlock(help_text='Write your article contents here. See documentation: https://docs.wagtail.io/en/latest/editor_manual/new_pages/creating_body_content.html#rich-text-fields', label='Rich Text Block')), ('plaintext', wagtail.core.blocks.TextBlock(help_text='Warning: Rich Text Blocks preferred! Plain text primarily exists for importing old Dispatch text.', label='Plain Text Block')), ('dropcap', wagtail.core.blocks.TextBlock(help_text='DO NOT USE - Legacy block. Create a block where special dropcap styling with be applied to the first letter and the first letter only.\n\nThe contents of this block will be enclosed in a ...
element, allowing its targetting for styling.\n\nNo RichText allowed.', label='Dropcap Block', template='article/stream_blocks/dropcap.html')), ('video', wagtail.core.blocks.StructBlock([('video_embed', wagtail.embeds.blocks.EmbedBlock(blank=False, null=False)), ('title', wagtail.core.blocks.CharBlock(max_length=255, required=False)), ('caption', wagtail.core.blocks.CharBlock(max_length=255, required=False)), ('credit', wagtail.core.blocks.CharBlock(max_length=255, required=False))], help_text='Use this to credit or caption videos that will only be associated with this current article, rather than entered into our video library. You can also embed videos in a Rich Text Block.', label='Credited/Captioned One-Off Video')), ('image', wagtail.core.blocks.StructBlock([('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('style', wagtail.core.blocks.ChoiceBlock(choices=[('default', 'Default'), ('left', 'Left'), ('right', 'Right')])), ('width', wagtail.core.blocks.ChoiceBlock(choices=[('full', 'Full'), ('small', 'Small'), ('medium', 'Medium'), ('large', 'Large')])), ('caption', wagtail.core.blocks.CharBlock(max_length=255, required=False)), ('credit', wagtail.core.blocks.CharBlock(max_length=255, required=False))])), ('raw_html', wagtail.core.blocks.RawHTMLBlock(help_text="WARNING: DO NOT use this unless you really know what you're doing!", label='Raw HTML Block')), ('quote', wagtail.core.blocks.StructBlock([('content', wagtail.core.blocks.CharBlock(required=False)), ('source', wagtail.core.blocks.CharBlock(required=False))], icon='openquote', label='Pull Quote', template='article/stream_blocks/quote.html')), ('gallery', wagtail.snippets.blocks.SnippetChooserBlock(target_model=images.models.GallerySnippet, template='article/stream_blocks/gallery.html'))], blank=True, null=True),
+ field=wagtail.fields.StreamField([('richtext', wagtail.blocks.RichTextBlock(help_text='Write your article contents here. See documentation: https://docs.wagtail.io/en/latest/editor_manual/new_pages/creating_body_content.html#rich-text-fields', label='Rich Text Block')), ('plaintext', wagtail.blocks.TextBlock(help_text='Warning: Rich Text Blocks preferred! Plain text primarily exists for importing old Dispatch text.', label='Plain Text Block')), ('dropcap', wagtail.blocks.TextBlock(help_text='DO NOT USE - Legacy block. Create a block where special dropcap styling with be applied to the first letter and the first letter only.\n\nThe contents of this block will be enclosed in a ...
element, allowing its targetting for styling.\n\nNo RichText allowed.', label='Dropcap Block', template='article/stream_blocks/dropcap.html')), ('video', wagtail.blocks.StructBlock([('video_embed', wagtail.embeds.blocks.EmbedBlock(blank=False, null=False)), ('title', wagtail.blocks.CharBlock(max_length=255, required=False)), ('caption', wagtail.blocks.CharBlock(max_length=255, required=False)), ('credit', wagtail.blocks.CharBlock(max_length=255, required=False))], help_text='Use this to credit or caption videos that will only be associated with this current article, rather than entered into our video library. You can also embed videos in a Rich Text Block.', label='Credited/Captioned One-Off Video')), ('image', wagtail.blocks.StructBlock([('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('style', wagtail.blocks.ChoiceBlock(choices=[('default', 'Default'), ('left', 'Left'), ('right', 'Right')])), ('width', wagtail.blocks.ChoiceBlock(choices=[('full', 'Full'), ('small', 'Small'), ('medium', 'Medium'), ('large', 'Large')])), ('caption', wagtail.blocks.CharBlock(max_length=255, required=False)), ('credit', wagtail.blocks.CharBlock(max_length=255, required=False))])), ('raw_html', wagtail.blocks.RawHTMLBlock(help_text="WARNING: DO NOT use this unless you really know what you're doing!", label='Raw HTML Block')), ('quote', wagtail.blocks.StructBlock([('content', wagtail.blocks.CharBlock(required=False)), ('source', wagtail.blocks.CharBlock(required=False))], icon='openquote', label='Pull Quote', template='article/stream_blocks/quote.html')), ('gallery', wagtail.snippets.blocks.SnippetChooserBlock(target_model=images.models.GallerySnippet, template='article/stream_blocks/gallery.html'))], blank=True, null=True),
),
]
\ No newline at end of file
diff --git a/article/migrations/0020_alter_articlepage_content.py b/article/migrations/0020_alter_articlepage_content.py
index 880f080e2..3b6bf8bdc 100644
--- a/article/migrations/0020_alter_articlepage_content.py
+++ b/article/migrations/0020_alter_articlepage_content.py
@@ -2,8 +2,8 @@
from django.db import migrations
import images.models
-import wagtail.core.blocks
-import wagtail.core.fields
+import wagtail.blocks
+import wagtail.fields
import wagtail.documents.blocks
import wagtail.embeds.blocks
import wagtail.images.blocks
@@ -20,6 +20,6 @@ class Migration(migrations.Migration):
migrations.AlterField(
model_name='articlepage',
name='content',
- field=wagtail.core.fields.StreamField([('richtext', wagtail.core.blocks.RichTextBlock(help_text='Write your article contents here. See documentation: https://docs.wagtail.io/en/latest/editor_manual/new_pages/creating_body_content.html#rich-text-fields', label='Rich Text Block')), ('plaintext', wagtail.core.blocks.TextBlock(help_text='Warning: Rich Text Blocks preferred! Plain text primarily exists for importing old Dispatch text.', label='Plain Text Block')), ('dropcap', wagtail.core.blocks.TextBlock(help_text='DO NOT USE - Legacy block. Create a block where special dropcap styling with be applied to the first letter and the first letter only.\n\nThe contents of this block will be enclosed in a ...
element, allowing its targetting for styling.\n\nNo RichText allowed.', label='Dropcap Block', template='article/stream_blocks/dropcap.html')), ('video', wagtail.core.blocks.StructBlock([('video_embed', wagtail.embeds.blocks.EmbedBlock(blank=False, null=False)), ('title', wagtail.core.blocks.CharBlock(max_length=255, required=False)), ('caption', wagtail.core.blocks.CharBlock(max_length=255, required=False)), ('credit', wagtail.core.blocks.CharBlock(max_length=255, required=False))], help_text='Use this to credit or caption videos that will only be associated with this current article, rather than entered into our video library. You can also embed videos in a Rich Text Block.', label='Credited/Captioned One-Off Video')), ('image', wagtail.core.blocks.StructBlock([('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('style', wagtail.core.blocks.ChoiceBlock(choices=[('default', 'Default'), ('left', 'Left'), ('right', 'Right')])), ('width', wagtail.core.blocks.ChoiceBlock(choices=[('full', 'Full'), ('small', 'Small'), ('medium', 'Medium'), ('large', 'Large')])), ('caption', wagtail.core.blocks.CharBlock(max_length=255, required=False)), ('credit', wagtail.core.blocks.CharBlock(max_length=255, required=False))])), ('raw_html', wagtail.core.blocks.RawHTMLBlock(help_text="WARNING: DO NOT use this unless you really know what you're doing!", label='Raw HTML Block')), ('quote', wagtail.core.blocks.StructBlock([('content', wagtail.core.blocks.CharBlock(required=True)), ('source', wagtail.core.blocks.CharBlock(required=False)), ('audio', wagtail.documents.blocks.DocumentChooserBlock(help_text='optional, must be mp3 format', required=False))])), ('gallery', wagtail.snippets.blocks.SnippetChooserBlock(target_model=images.models.GallerySnippet, template='article/stream_blocks/gallery.html')), ('header_link', wagtail.core.blocks.StructBlock([('title', wagtail.core.blocks.CharBlock()), ('id', wagtail.core.blocks.CharBlock(help_text='Intended to be shared with a page link button so that clicking the button will scroll the user to this header'))])), ('header_menu', wagtail.core.blocks.StructBlock([('list', wagtail.core.blocks.ListBlock(wagtail.core.blocks.StructBlock([('title', wagtail.core.blocks.CharBlock()), ('id', wagtail.core.blocks.CharBlock(help_text='Intended to be shared with a header so that this button will send the user to the section of the page with said header')), ('colour', wagtail.core.blocks.CharBlock(default='0071c9'))], label='Page Link')))])), ('visual_essay', wagtail.core.blocks.StructBlock([('view', wagtail.core.blocks.StructBlock([('view', wagtail.core.blocks.ChoiceBlock(choices=[('vs-side-by-side', 'Side By Side'), ('vs-over-image', 'Text Over Image')]))])), ('content', wagtail.core.blocks.StreamBlock([('rich_text', wagtail.core.blocks.StructBlock([('block', wagtail.core.blocks.RichTextBlock(help_text='Write your article contents here. See documentation: https://docs.wagtail.io/en/latest/editor_manual/new_pages/creating_body_content.html#rich-text-fields', label='Rich Text Block')), ('side', wagtail.core.blocks.ChoiceBlock(choices=[('left', 'Left'), ('right', 'Right')]))], icon='doc-full')), ('image', wagtail.core.blocks.StructBlock([('block', wagtail.core.blocks.StructBlock([('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('style', wagtail.core.blocks.ChoiceBlock(choices=[('default', 'Default'), ('left', 'Left'), ('right', 'Right')])), ('width', wagtail.core.blocks.ChoiceBlock(choices=[('full', 'Full'), ('small', 'Small'), ('medium', 'Medium'), ('large', 'Large')])), ('caption', wagtail.core.blocks.CharBlock(max_length=255, required=False)), ('credit', wagtail.core.blocks.CharBlock(max_length=255, required=False))])), ('side', wagtail.core.blocks.ChoiceBlock(choices=[('left', 'Left'), ('right', 'Right')]))], icon='image')), ('video', wagtail.core.blocks.StructBlock([('block', wagtail.core.blocks.StructBlock([('video_embed', wagtail.embeds.blocks.EmbedBlock(blank=False, null=False)), ('title', wagtail.core.blocks.CharBlock(max_length=255, required=False)), ('caption', wagtail.core.blocks.CharBlock(max_length=255, required=False)), ('credit', wagtail.core.blocks.CharBlock(max_length=255, required=False))], help_text='Use this to credit or caption videos that will only be associated with this current article, rather than entered into our video library. You can also embed videos in a Rich Text Block.', label='Credited/Captioned One-Off Video')), ('side', wagtail.core.blocks.ChoiceBlock(choices=[('left', 'Left'), ('right', 'Right')]))], icon='media')), ('raw_html', wagtail.core.blocks.StructBlock([('block', wagtail.core.blocks.RawHTMLBlock(help_text="WARNING: DO NOT use this unless you really know what you're doing!", label='Raw HTML Block')), ('side', wagtail.core.blocks.ChoiceBlock(choices=[('left', 'Left'), ('right', 'Right')]))], icon='code')), ('quote', wagtail.core.blocks.StructBlock([('block', wagtail.core.blocks.StructBlock([('content', wagtail.core.blocks.CharBlock(required=True)), ('source', wagtail.core.blocks.CharBlock(required=False)), ('audio', wagtail.documents.blocks.DocumentChooserBlock(help_text='optional, must be mp3 format', required=False))])), ('side', wagtail.core.blocks.ChoiceBlock(choices=[('left', 'Left'), ('right', 'Right')]))], icon='openquote')), ('header_link', wagtail.core.blocks.StructBlock([('block', wagtail.core.blocks.StructBlock([('title', wagtail.core.blocks.CharBlock()), ('id', wagtail.core.blocks.CharBlock(help_text='Intended to be shared with a page link button so that clicking the button will scroll the user to this header'))])), ('side', wagtail.core.blocks.ChoiceBlock(choices=[('left', 'Left'), ('right', 'Right')]))], icon='title')), ('gap', wagtail.core.blocks.StructBlock([('id', wagtail.core.blocks.CharBlock(required=False)), ('height', wagtail.core.blocks.IntegerBlock(default=0, min_value=0, required=True))])), ('switch_view', wagtail.core.blocks.StructBlock([('view', wagtail.core.blocks.ChoiceBlock(choices=[('vs-side-by-side', 'Side By Side'), ('vs-over-image', 'Text Over Image')]))]))]))]))], blank=True, null=True),
+ field=wagtail.fields.StreamField([('richtext', wagtail.blocks.RichTextBlock(help_text='Write your article contents here. See documentation: https://docs.wagtail.io/en/latest/editor_manual/new_pages/creating_body_content.html#rich-text-fields', label='Rich Text Block')), ('plaintext', wagtail.blocks.TextBlock(help_text='Warning: Rich Text Blocks preferred! Plain text primarily exists for importing old Dispatch text.', label='Plain Text Block')), ('dropcap', wagtail.blocks.TextBlock(help_text='DO NOT USE - Legacy block. Create a block where special dropcap styling with be applied to the first letter and the first letter only.\n\nThe contents of this block will be enclosed in a ...
element, allowing its targetting for styling.\n\nNo RichText allowed.', label='Dropcap Block', template='article/stream_blocks/dropcap.html')), ('video', wagtail.blocks.StructBlock([('video_embed', wagtail.embeds.blocks.EmbedBlock(blank=False, null=False)), ('title', wagtail.blocks.CharBlock(max_length=255, required=False)), ('caption', wagtail.blocks.CharBlock(max_length=255, required=False)), ('credit', wagtail.blocks.CharBlock(max_length=255, required=False))], help_text='Use this to credit or caption videos that will only be associated with this current article, rather than entered into our video library. You can also embed videos in a Rich Text Block.', label='Credited/Captioned One-Off Video')), ('image', wagtail.blocks.StructBlock([('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('style', wagtail.blocks.ChoiceBlock(choices=[('default', 'Default'), ('left', 'Left'), ('right', 'Right')])), ('width', wagtail.blocks.ChoiceBlock(choices=[('full', 'Full'), ('small', 'Small'), ('medium', 'Medium'), ('large', 'Large')])), ('caption', wagtail.blocks.CharBlock(max_length=255, required=False)), ('credit', wagtail.blocks.CharBlock(max_length=255, required=False))])), ('raw_html', wagtail.blocks.RawHTMLBlock(help_text="WARNING: DO NOT use this unless you really know what you're doing!", label='Raw HTML Block')), ('quote', wagtail.blocks.StructBlock([('content', wagtail.blocks.CharBlock(required=True)), ('source', wagtail.blocks.CharBlock(required=False)), ('audio', wagtail.documents.blocks.DocumentChooserBlock(help_text='optional, must be mp3 format', required=False))])), ('gallery', wagtail.snippets.blocks.SnippetChooserBlock(target_model=images.models.GallerySnippet, template='article/stream_blocks/gallery.html')), ('header_link', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock()), ('id', wagtail.blocks.CharBlock(help_text='Intended to be shared with a page link button so that clicking the button will scroll the user to this header'))])), ('header_menu', wagtail.blocks.StructBlock([('list', wagtail.blocks.ListBlock(wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock()), ('id', wagtail.blocks.CharBlock(help_text='Intended to be shared with a header so that this button will send the user to the section of the page with said header')), ('colour', wagtail.blocks.CharBlock(default='0071c9'))], label='Page Link')))])), ('visual_essay', wagtail.blocks.StructBlock([('view', wagtail.blocks.StructBlock([('view', wagtail.blocks.ChoiceBlock(choices=[('vs-side-by-side', 'Side By Side'), ('vs-over-image', 'Text Over Image')]))])), ('content', wagtail.blocks.StreamBlock([('rich_text', wagtail.blocks.StructBlock([('block', wagtail.blocks.RichTextBlock(help_text='Write your article contents here. See documentation: https://docs.wagtail.io/en/latest/editor_manual/new_pages/creating_body_content.html#rich-text-fields', label='Rich Text Block')), ('side', wagtail.blocks.ChoiceBlock(choices=[('left', 'Left'), ('right', 'Right')]))], icon='doc-full')), ('image', wagtail.blocks.StructBlock([('block', wagtail.blocks.StructBlock([('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('style', wagtail.blocks.ChoiceBlock(choices=[('default', 'Default'), ('left', 'Left'), ('right', 'Right')])), ('width', wagtail.blocks.ChoiceBlock(choices=[('full', 'Full'), ('small', 'Small'), ('medium', 'Medium'), ('large', 'Large')])), ('caption', wagtail.blocks.CharBlock(max_length=255, required=False)), ('credit', wagtail.blocks.CharBlock(max_length=255, required=False))])), ('side', wagtail.blocks.ChoiceBlock(choices=[('left', 'Left'), ('right', 'Right')]))], icon='image')), ('video', wagtail.blocks.StructBlock([('block', wagtail.blocks.StructBlock([('video_embed', wagtail.embeds.blocks.EmbedBlock(blank=False, null=False)), ('title', wagtail.blocks.CharBlock(max_length=255, required=False)), ('caption', wagtail.blocks.CharBlock(max_length=255, required=False)), ('credit', wagtail.blocks.CharBlock(max_length=255, required=False))], help_text='Use this to credit or caption videos that will only be associated with this current article, rather than entered into our video library. You can also embed videos in a Rich Text Block.', label='Credited/Captioned One-Off Video')), ('side', wagtail.blocks.ChoiceBlock(choices=[('left', 'Left'), ('right', 'Right')]))], icon='media')), ('raw_html', wagtail.blocks.StructBlock([('block', wagtail.blocks.RawHTMLBlock(help_text="WARNING: DO NOT use this unless you really know what you're doing!", label='Raw HTML Block')), ('side', wagtail.blocks.ChoiceBlock(choices=[('left', 'Left'), ('right', 'Right')]))], icon='code')), ('quote', wagtail.blocks.StructBlock([('block', wagtail.blocks.StructBlock([('content', wagtail.blocks.CharBlock(required=True)), ('source', wagtail.blocks.CharBlock(required=False)), ('audio', wagtail.documents.blocks.DocumentChooserBlock(help_text='optional, must be mp3 format', required=False))])), ('side', wagtail.blocks.ChoiceBlock(choices=[('left', 'Left'), ('right', 'Right')]))], icon='openquote')), ('header_link', wagtail.blocks.StructBlock([('block', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock()), ('id', wagtail.blocks.CharBlock(help_text='Intended to be shared with a page link button so that clicking the button will scroll the user to this header'))])), ('side', wagtail.blocks.ChoiceBlock(choices=[('left', 'Left'), ('right', 'Right')]))], icon='title')), ('gap', wagtail.blocks.StructBlock([('id', wagtail.blocks.CharBlock(required=False)), ('height', wagtail.blocks.IntegerBlock(default=0, min_value=0, required=True))])), ('switch_view', wagtail.blocks.StructBlock([('view', wagtail.blocks.ChoiceBlock(choices=[('vs-side-by-side', 'Side By Side'), ('vs-over-image', 'Text Over Image')]))]))]))]))], blank=True, null=True),
),
]
diff --git a/article/migrations/0021_auto_20230815_2248.py b/article/migrations/0021_auto_20230815_2248.py
new file mode 100644
index 000000000..aa793a8bb
--- /dev/null
+++ b/article/migrations/0021_auto_20230815_2248.py
@@ -0,0 +1,30 @@
+# Generated by Django 3.2.11 on 2023-08-16 05:48
+
+from django.db import migrations
+import images.models
+import wagtail.blocks
+import wagtail.documents.blocks
+import wagtail.embeds.blocks
+import wagtail.fields
+import wagtail.images.blocks
+import wagtail.snippets.blocks
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('article', '0020_alter_articlepage_content'),
+ ]
+
+ operations = [
+ migrations.AlterField(
+ model_name='articlepage',
+ name='content',
+ field=wagtail.fields.StreamField([('richtext', wagtail.blocks.RichTextBlock(help_text='Write your article contents here. See documentation: https://docs.wagtail.io/en/latest/editor_manual/new_pages/creating_body_content.html#rich-text-fields', label='Rich Text Block')), ('plaintext', wagtail.blocks.TextBlock(help_text='Warning: Rich Text Blocks preferred! Plain text primarily exists for importing old Dispatch text.', label='Plain Text Block')), ('dropcap', wagtail.blocks.TextBlock(help_text='DO NOT USE - Legacy block. Create a block where special dropcap styling with be applied to the first letter and the first letter only.\n\nThe contents of this block will be enclosed in a ...
element, allowing its targetting for styling.\n\nNo RichText allowed.', label='Dropcap Block', template='article/stream_blocks/dropcap.html')), ('video', wagtail.blocks.StructBlock([('video_embed', wagtail.embeds.blocks.EmbedBlock(blank=False, null=False)), ('title', wagtail.blocks.CharBlock(max_length=255, required=False)), ('caption', wagtail.blocks.CharBlock(max_length=255, required=False)), ('credit', wagtail.blocks.CharBlock(max_length=255, required=False))], help_text='Use this to credit or caption videos that will only be associated with this current article, rather than entered into our video library. You can also embed videos in a Rich Text Block.', label='Credited/Captioned One-Off Video')), ('image', wagtail.blocks.StructBlock([('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('style', wagtail.blocks.ChoiceBlock(choices=[('default', 'Default'), ('left', 'Left'), ('right', 'Right')])), ('width', wagtail.blocks.ChoiceBlock(choices=[('full', 'Full'), ('small', 'Small'), ('medium', 'Medium'), ('large', 'Large')])), ('caption', wagtail.blocks.CharBlock(max_length=255, required=False)), ('credit', wagtail.blocks.CharBlock(max_length=255, required=False))])), ('raw_html', wagtail.blocks.RawHTMLBlock(help_text="WARNING: DO NOT use this unless you really know what you're doing!", label='Raw HTML Block')), ('quote', wagtail.blocks.StructBlock([('content', wagtail.blocks.CharBlock(required=True)), ('source', wagtail.blocks.CharBlock(required=False)), ('audio', wagtail.documents.blocks.DocumentChooserBlock(help_text='optional, must be mp3 format', required=False))])), ('gallery', wagtail.snippets.blocks.SnippetChooserBlock(target_model=images.models.GallerySnippet, template='article/stream_blocks/gallery.html')), ('header_link', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock()), ('id', wagtail.blocks.CharBlock(help_text='Intended to be shared with a page link button so that clicking the button will scroll the user to this header'))])), ('header_menu', wagtail.blocks.StructBlock([('list', wagtail.blocks.ListBlock(wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock()), ('id', wagtail.blocks.CharBlock(help_text='Intended to be shared with a header so that this button will send the user to the section of the page with said header')), ('colour', wagtail.blocks.CharBlock(default='0071c9'))], label='Page Link')))])), ('visual_essay', wagtail.blocks.StructBlock([('view', wagtail.blocks.StructBlock([('view', wagtail.blocks.ChoiceBlock(choices=[('vs-side-by-side', 'Side By Side'), ('vs-over-image', 'Text Over Image')]))])), ('content', wagtail.blocks.StreamBlock([('rich_text', wagtail.blocks.StructBlock([('block', wagtail.blocks.RichTextBlock(help_text='Write your article contents here. See documentation: https://docs.wagtail.io/en/latest/editor_manual/new_pages/creating_body_content.html#rich-text-fields', label='Rich Text Block')), ('side', wagtail.blocks.ChoiceBlock(choices=[('left', 'Left'), ('right', 'Right')]))], icon='doc-full')), ('image', wagtail.blocks.StructBlock([('block', wagtail.blocks.StructBlock([('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('style', wagtail.blocks.ChoiceBlock(choices=[('default', 'Default'), ('left', 'Left'), ('right', 'Right')])), ('width', wagtail.blocks.ChoiceBlock(choices=[('full', 'Full'), ('small', 'Small'), ('medium', 'Medium'), ('large', 'Large')])), ('caption', wagtail.blocks.CharBlock(max_length=255, required=False)), ('credit', wagtail.blocks.CharBlock(max_length=255, required=False))])), ('side', wagtail.blocks.ChoiceBlock(choices=[('left', 'Left'), ('right', 'Right')]))], icon='image')), ('video', wagtail.blocks.StructBlock([('block', wagtail.blocks.StructBlock([('video_embed', wagtail.embeds.blocks.EmbedBlock(blank=False, null=False)), ('title', wagtail.blocks.CharBlock(max_length=255, required=False)), ('caption', wagtail.blocks.CharBlock(max_length=255, required=False)), ('credit', wagtail.blocks.CharBlock(max_length=255, required=False))], help_text='Use this to credit or caption videos that will only be associated with this current article, rather than entered into our video library. You can also embed videos in a Rich Text Block.', label='Credited/Captioned One-Off Video')), ('side', wagtail.blocks.ChoiceBlock(choices=[('left', 'Left'), ('right', 'Right')]))], icon='media')), ('raw_html', wagtail.blocks.StructBlock([('block', wagtail.blocks.RawHTMLBlock(help_text="WARNING: DO NOT use this unless you really know what you're doing!", label='Raw HTML Block')), ('side', wagtail.blocks.ChoiceBlock(choices=[('left', 'Left'), ('right', 'Right')]))], icon='code')), ('quote', wagtail.blocks.StructBlock([('block', wagtail.blocks.StructBlock([('content', wagtail.blocks.CharBlock(required=True)), ('source', wagtail.blocks.CharBlock(required=False)), ('audio', wagtail.documents.blocks.DocumentChooserBlock(help_text='optional, must be mp3 format', required=False))])), ('side', wagtail.blocks.ChoiceBlock(choices=[('left', 'Left'), ('right', 'Right')]))], icon='openquote')), ('header_link', wagtail.blocks.StructBlock([('block', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock()), ('id', wagtail.blocks.CharBlock(help_text='Intended to be shared with a page link button so that clicking the button will scroll the user to this header'))])), ('side', wagtail.blocks.ChoiceBlock(choices=[('left', 'Left'), ('right', 'Right')]))], icon='title')), ('gap', wagtail.blocks.StructBlock([('id', wagtail.blocks.CharBlock(required=False)), ('height', wagtail.blocks.IntegerBlock(default=0, min_value=0, required=True))])), ('switch_view', wagtail.blocks.StructBlock([('view', wagtail.blocks.ChoiceBlock(choices=[('vs-side-by-side', 'Side By Side'), ('vs-over-image', 'Text Over Image')]))]))]))]))], blank=True, null=True, use_json_field=True),
+ ),
+ migrations.AlterField(
+ model_name='specialarticlelikepage',
+ name='right_column_content',
+ field=wagtail.fields.StreamField([('richtext', wagtail.blocks.RichTextBlock(help_text='Write your article contents here. See documentation: https://docs.wagtail.io/en/latest/editor_manual/new_pages/creating_body_content.html#rich-text-fields', label='Rich Text Block')), ('plaintext', wagtail.blocks.TextBlock(help_text='Warning: Rich Text Blocks preferred! Plain text primarily exists for importing old Dispatch text.', label='Plain Text Block'))], blank=True, null=True, use_json_field=True),
+ ),
+ ]
diff --git a/article/models.py b/article/models.py
index 913fcf9fc..df7d9d6c0 100644
--- a/article/models.py
+++ b/article/models.py
@@ -32,7 +32,7 @@
from wagtail.contrib.routable_page.models import RoutablePageMixin, route
from article import blocks as article_blocks
-from wagtail.admin.edit_handlers import (
+from wagtail.admin.panels import (
# Panels
FieldPanel,
FieldRowPanel,
@@ -46,9 +46,9 @@
TabbedInterface,
)
-from wagtail.core import blocks
-from wagtail.core.fields import StreamField
-from wagtail.core.models import Page, PageManager, Orderable
+from wagtail import blocks
+from wagtail.fields import StreamField
+from wagtail.models import Page, PageManager, Orderable
from wagtail.documents.models import Document
from wagtail.documents.blocks import DocumentChooserBlock
from wagtail.documents.edit_handlers import DocumentChooserPanel
@@ -96,7 +96,7 @@ class UbysseyMenuMixin(models.Model):
HelpPanel('If the article has a special menu, as when it belongs to a special series of articles, select the relevant menu here
The main contents of the article are organized into \"blocks\". Click the + to add a block. Most article text should be written in Rich Text Blocks, but many other features are available!
Blocks simply represent units of the article you may wish to re-arrange. You do not have to put every individual paragraph in its own block (doing so is probably time consuming!). Many articles that have been imported into our database DO divide every paragraph into its own block, but this is for computer convenience during the import.
'
),
- StreamFieldPanel("content"),
+ FieldPanel("content"),
],
heading="Article Content",
classname="collapsible",
@@ -737,7 +738,7 @@ def get_template(self, request):
MultiFieldPanel(
[
# FieldPanel("section"),
- SnippetChooserPanel("category"),
+ FieldPanel("category"),
FieldPanel("tags"),
],
heading="Categories and Tags",
@@ -846,7 +847,7 @@ def get_template(self, request):
HelpPanel(content='
{% image featured_image_object.image original as original_image %}
- {% image featured_image_object.image width-500 format-webp as featured_image %}
+ {% image featured_image_object.image width-1200 format-webp as featured_image %}
datetime.timedelta(days=365).total_seconds():
diff --git a/authors/migrations/0006_authorpage_links.py b/authors/migrations/0006_authorpage_links.py
index ff825cf57..c4aa71578 100644
--- a/authors/migrations/0006_authorpage_links.py
+++ b/authors/migrations/0006_authorpage_links.py
@@ -1,8 +1,8 @@
# Generated by Django 3.2.11 on 2023-05-17 03:58
from django.db import migrations
-import wagtail.core.blocks
-import wagtail.core.fields
+import wagtail.blocks
+import wagtail.fields
class Migration(migrations.Migration):
@@ -15,6 +15,6 @@ class Migration(migrations.Migration):
migrations.AddField(
model_name='authorpage',
name='links',
- field=wagtail.core.fields.StreamField([('url', wagtail.core.blocks.URLBlock(label='Url'))], blank=True),
+ field=wagtail.fields.StreamField([('url', wagtail.blocks.URLBlock(label='Url'))], blank=True),
),
]
diff --git a/authors/migrations/0007_authorpage_linkicons.py b/authors/migrations/0007_authorpage_linkicons.py
index 12bf54c5e..79af09c30 100644
--- a/authors/migrations/0007_authorpage_linkicons.py
+++ b/authors/migrations/0007_authorpage_linkicons.py
@@ -1,8 +1,8 @@
# Generated by Django 3.2.11 on 2023-05-30 23:47
from django.db import migrations
-import wagtail.core.blocks
-import wagtail.core.fields
+import wagtail.blocks
+import wagtail.fields
class Migration(migrations.Migration):
@@ -15,6 +15,6 @@ class Migration(migrations.Migration):
migrations.AddField(
model_name='authorpage',
name='linkIcons',
- field=wagtail.core.fields.StreamField([('raw_html', wagtail.core.blocks.RawHTMLBlock())], blank=True),
+ field=wagtail.fields.StreamField([('raw_html', wagtail.blocks.RawHTMLBlock())], blank=True),
),
]
diff --git a/authors/migrations/0008_alter_authorpage_linkicons.py b/authors/migrations/0008_alter_authorpage_linkicons.py
index d15921447..dd6b7ee8a 100644
--- a/authors/migrations/0008_alter_authorpage_linkicons.py
+++ b/authors/migrations/0008_alter_authorpage_linkicons.py
@@ -1,8 +1,8 @@
# Generated by Django 3.2.11 on 2023-05-31 00:17
from django.db import migrations
-import wagtail.core.blocks
-import wagtail.core.fields
+import wagtail.blocks
+import wagtail.fields
class Migration(migrations.Migration):
@@ -15,6 +15,6 @@ class Migration(migrations.Migration):
migrations.AlterField(
model_name='authorpage',
name='linkIcons',
- field=wagtail.core.fields.StreamField([('richtext', wagtail.core.blocks.RichTextBlock())], blank=True),
+ field=wagtail.fields.StreamField([('richtext', wagtail.blocks.RichTextBlock())], blank=True),
),
]
diff --git a/authors/migrations/0008_alter_authorpage_short_bio_description.py b/authors/migrations/0008_alter_authorpage_short_bio_description.py
index bb3263fa7..995d6de59 100644
--- a/authors/migrations/0008_alter_authorpage_short_bio_description.py
+++ b/authors/migrations/0008_alter_authorpage_short_bio_description.py
@@ -1,8 +1,8 @@
# Generated by Django 3.2.11 on 2023-06-21 05:05
from django.db import migrations
-import wagtail.core.blocks
-import wagtail.core.fields
+import wagtail.blocks
+import wagtail.fields
class Migration(migrations.Migration):
@@ -15,6 +15,6 @@ class Migration(migrations.Migration):
migrations.AlterField(
model_name='authorpage',
name='short_bio_description',
- field=wagtail.core.fields.StreamField([('richtext', wagtail.core.blocks.RichTextBlock(help_text='Customise your short bio here with links, bolds and italics!', label='Rich Text Block'))], blank=True, default=''),
+ field=wagtail.fields.StreamField([('richtext', wagtail.blocks.RichTextBlock(help_text='Customise your short bio here with links, bolds and italics!', label='Rich Text Block'))], blank=True, default=''),
),
]
diff --git a/authors/migrations/0009_alter_authorpage_bio_description.py b/authors/migrations/0009_alter_authorpage_bio_description.py
index ad36942fc..27f798072 100644
--- a/authors/migrations/0009_alter_authorpage_bio_description.py
+++ b/authors/migrations/0009_alter_authorpage_bio_description.py
@@ -1,8 +1,8 @@
# Generated by Django 3.2.11 on 2023-06-21 10:30
from django.db import migrations
-import wagtail.core.blocks
-import wagtail.core.fields
+import wagtail.blocks
+import wagtail.fields
class Migration(migrations.Migration):
@@ -15,6 +15,6 @@ class Migration(migrations.Migration):
migrations.AlterField(
model_name='authorpage',
name='bio_description',
- field=wagtail.core.fields.StreamField([('richtext', wagtail.core.blocks.RichTextBlock(help_text='Customise your bio here with links, bolds and italics!', label='Rich Text Block'))], blank=True, default=''),
+ field=wagtail.fields.StreamField([('richtext', wagtail.blocks.RichTextBlock(help_text='Customise your bio here with links, bolds and italics!', label='Rich Text Block'))], blank=True, default=''),
),
]
diff --git a/authors/migrations/0009_alter_authorpage_linkicons.py b/authors/migrations/0009_alter_authorpage_linkicons.py
index 65c3da7e6..a8664b98f 100644
--- a/authors/migrations/0009_alter_authorpage_linkicons.py
+++ b/authors/migrations/0009_alter_authorpage_linkicons.py
@@ -1,8 +1,8 @@
# Generated by Django 3.2.11 on 2023-05-31 00:24
from django.db import migrations
-import wagtail.core.blocks
-import wagtail.core.fields
+import wagtail.blocks
+import wagtail.fields
class Migration(migrations.Migration):
@@ -15,6 +15,6 @@ class Migration(migrations.Migration):
migrations.AlterField(
model_name='authorpage',
name='linkIcons',
- field=wagtail.core.fields.StreamField([('raw_html', wagtail.core.blocks.RawHTMLBlock())], blank=True),
+ field=wagtail.fields.StreamField([('raw_html', wagtail.blocks.RawHTMLBlock())], blank=True),
),
]
diff --git a/authors/migrations/0017_auto_20230815_2248.py b/authors/migrations/0017_auto_20230815_2248.py
new file mode 100644
index 000000000..c89cf3074
--- /dev/null
+++ b/authors/migrations/0017_auto_20230815_2248.py
@@ -0,0 +1,25 @@
+# Generated by Django 3.2.11 on 2023-08-16 05:48
+
+from django.db import migrations
+import wagtail.blocks
+import wagtail.fields
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('authors', '0016_alter_authorpage_main_media_type'),
+ ]
+
+ operations = [
+ migrations.AlterField(
+ model_name='authorpage',
+ name='linkIcons',
+ field=wagtail.fields.StreamField([('raw_html', wagtail.blocks.RawHTMLBlock())], blank=True, use_json_field=True),
+ ),
+ migrations.AlterField(
+ model_name='authorpage',
+ name='links',
+ field=wagtail.fields.StreamField([('url', wagtail.blocks.URLBlock(label='Url'))], blank=True, use_json_field=True),
+ ),
+ ]
diff --git a/authors/models.py b/authors/models.py
index b658017e6..2d0e2c104 100644
--- a/authors/models.py
+++ b/authors/models.py
@@ -4,7 +4,7 @@
from django_extensions.db.fields import AutoSlugField
from django.core.paginator import EmptyPage, PageNotAnInteger, Paginator
from article.models import ArticlePage
-from wagtail.admin.edit_handlers import (
+from wagtail.admin.panels import (
# Panels
FieldPanel,
FieldRowPanel,
@@ -19,9 +19,9 @@
)
-from wagtail.core import blocks
-from wagtail.core.fields import StreamField
-from wagtail.core.models import Page, Orderable
+from wagtail import blocks
+from wagtail.fields import StreamField
+from wagtail.models import Page, Orderable
from wagtail.search import index
from wagtail.images.edit_handlers import ImageChooserPanel
from modelcluster.fields import ParentalKey
@@ -57,7 +57,7 @@ class PinnedArticlesOrderable(Orderable):
panels = [
MultiFieldPanel(
[
- PageChooserPanel('article'),
+ FieldPanel('article'),
],
heading="Article"
),
@@ -136,8 +136,8 @@ class AuthorPage(RoutablePageMixin, Page):
blank=False,
null=False,)
- linkIcons = StreamField([('raw_html', blocks.RawHTMLBlock()),], blank=True)
- links = StreamField([('url', blocks.URLBlock(label="Url")),], blank=True)
+ linkIcons = StreamField([('raw_html', blocks.RawHTMLBlock()),], blank=True, use_json_field=True)
+ links = StreamField([('url', blocks.URLBlock(label="Url")),], blank=True, use_json_field=True)
# For editting in wagtail:
content_panels = [
@@ -145,7 +145,7 @@ class AuthorPage(RoutablePageMixin, Page):
FieldPanel("full_name"),
MultiFieldPanel(
[
- ImageChooserPanel("image"),
+ FieldPanel("image"),
FieldPanel("display_image"),
],
heading="Image"
@@ -153,10 +153,10 @@ class AuthorPage(RoutablePageMixin, Page):
MultiFieldPanel(
[
FieldPanel("ubyssey_role"),
- StreamFieldPanel("bio_description"),
- StreamFieldPanel("short_bio_description"),
+ FieldPanel("bio_description"),
+ FieldPanel("short_bio_description"),
FieldPanel("main_media_type"),
- StreamFieldPanel("links"),
+ FieldPanel("links"),
InlinePanel("pinned_articles", label="Pinned articles")
],
heading="Optional Stuff",
diff --git a/config/settings/base.py b/config/settings/base.py
index 01ef65248..850209a3c 100644
--- a/config/settings/base.py
+++ b/config/settings/base.py
@@ -175,7 +175,7 @@
'wagtail.images',
'wagtail.search',
'wagtail.admin',
- 'wagtail.core',
+ 'wagtail',
'wagtail.contrib.routable_page',
'wagtail.contrib.styleguide',
@@ -322,6 +322,13 @@
WAGTAILMENUS_ACTIVE_CLASS = 'current' # used for css in e.g. navigation/header.html
WAGTAILMENUS_ACTIVE_ANCESTOR_CLASS = 'current'
+# wagtail search settings
+WAGTAILSEARCH_BACKENDS = {
+ 'default': {
+ 'BACKEND': 'wagtail.search.backends.database',
+ }
+}
+
# Model defaults
DEFAULT_AUTO_FIELD='django.db.models.AutoField'
diff --git a/config/settings/development.py b/config/settings/development.py
index 8d5e185fe..137aae513 100644
--- a/config/settings/development.py
+++ b/config/settings/development.py
@@ -5,7 +5,7 @@
# Therefore the below "import *" is correct
from .base import *
-BASE_URL = 'http://localhost:8000/'
+WAGTAILADMIN_BASE_URL = 'http://localhost:8000/'
ALLOWED_HOSTS = ['localhost', '*']
diff --git a/config/settings/production.py b/config/settings/production.py
index 237c9fd30..0e2f85141 100644
--- a/config/settings/production.py
+++ b/config/settings/production.py
@@ -8,7 +8,7 @@
env = environ.Env() # Scope issues without this line?
-BASE_URL = 'https://www.ubyssey.ca/'
+WAGTAILADMIN_BASE_URL = 'https://www.ubyssey.ca/'
ALLOWED_HOSTS = ['localhost', '*']
@@ -40,6 +40,8 @@
"LOCATION": "redis://%s:%s" % (REDIS_HOST, REDIS_PORT),
}
}
+# WAGTAIL_CACHE_IGNORE_COOKIES = False
+# WAGTAIL_CACHE_IGNORE_QS = None
MIDDLEWARE += [
'canonical_domain.middleware.CanonicalDomainMiddleware',
diff --git a/dashboard/wagtail_hooks.py b/dashboard/wagtail_hooks.py
index f2872f324..f2144d7b1 100644
--- a/dashboard/wagtail_hooks.py
+++ b/dashboard/wagtail_hooks.py
@@ -1,7 +1,7 @@
from django.utils.html import format_html
from django.templatetags.static import static
-from wagtail.core import hooks
+from wagtail import hooks
import wagtail.admin.rich_text.editors.draftail.features as draftail_features
from wagtail.admin.rich_text.converters.html_to_contentstate import InlineStyleElementHandler
diff --git a/home/blocks.py b/home/blocks.py
index 4aa518ed9..a7ae656a9 100644
--- a/home/blocks.py
+++ b/home/blocks.py
@@ -5,8 +5,8 @@
from django.db.models import Q
-from wagtail.core import blocks
-from wagtail.core.blocks import field_block
+from wagtail import blocks
+from wagtail.blocks import field_block
class HomepageFeaturedSectionBlock(blocks.StructBlock):
diff --git a/home/migrations/0001_initial.py b/home/migrations/0001_initial.py
index fdcc26b24..8c09ad0cb 100644
--- a/home/migrations/0001_initial.py
+++ b/home/migrations/0001_initial.py
@@ -2,8 +2,8 @@
from django.db import migrations, models
import django.db.models.deletion
-import wagtail.core.blocks
-import wagtail.core.fields
+import wagtail.blocks
+import wagtail.fields
class Migration(migrations.Migration):
@@ -19,7 +19,7 @@ class Migration(migrations.Migration):
name='HomePage',
fields=[
('page_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='wagtailcore.page')),
- ('sections_stream', wagtail.core.fields.StreamField([('home_page_section_block', wagtail.core.blocks.StructBlock([('section', wagtail.core.blocks.PageChooserBlock(page_type=['section.SectionPage']))]))], blank=True, null=True)),
+ ('sections_stream', wagtail.fields.StreamField([('home_page_section_block', wagtail.blocks.StructBlock([('section', wagtail.blocks.PageChooserBlock(page_type=['section.SectionPage']))]))], blank=True, null=True)),
],
options={
'abstract': False,
diff --git a/home/migrations/0004_auto_20220518_1747.py b/home/migrations/0004_auto_20220518_1747.py
index 1d543298d..77bc6d7f2 100644
--- a/home/migrations/0004_auto_20220518_1747.py
+++ b/home/migrations/0004_auto_20220518_1747.py
@@ -1,8 +1,8 @@
# Generated by Django 3.2.11 on 2022-05-19 00:47
from django.db import migrations
-import wagtail.core.blocks
-import wagtail.core.fields
+import wagtail.blocks
+import wagtail.fields
class Migration(migrations.Migration):
@@ -15,11 +15,11 @@ class Migration(migrations.Migration):
migrations.AddField(
model_name='homepage',
name='above_cut_stream',
- field=wagtail.core.fields.StreamField([('above_cut_block', wagtail.core.blocks.StructBlock([]))], blank=True, null=True),
+ field=wagtail.fields.StreamField([('above_cut_block', wagtail.blocks.StructBlock([]))], blank=True, null=True),
),
migrations.AlterField(
model_name='homepage',
name='sections_stream',
- field=wagtail.core.fields.StreamField([('home_page_section_block', wagtail.core.blocks.StructBlock([('section', wagtail.core.blocks.PageChooserBlock(page_type=['section.SectionPage'])), ('layout', wagtail.core.blocks.ChoiceBlock(choices=[('news', '"News Section" Style'), ('featured', '"Featured Section" Style')]))]))], blank=True, null=True),
+ field=wagtail.fields.StreamField([('home_page_section_block', wagtail.blocks.StructBlock([('section', wagtail.blocks.PageChooserBlock(page_type=['section.SectionPage'])), ('layout', wagtail.blocks.ChoiceBlock(choices=[('news', '"News Section" Style'), ('featured', '"Featured Section" Style')]))]))], blank=True, null=True),
),
]
diff --git a/home/migrations/0005_homepage_sidebar_stream.py b/home/migrations/0005_homepage_sidebar_stream.py
index b2320e9f7..eb9e85940 100644
--- a/home/migrations/0005_homepage_sidebar_stream.py
+++ b/home/migrations/0005_homepage_sidebar_stream.py
@@ -1,8 +1,8 @@
# Generated by Django 3.2.11 on 2022-05-19 22:43
from django.db import migrations
-import wagtail.core.blocks
-import wagtail.core.fields
+import wagtail.blocks
+import wagtail.fields
import wagtailmodelchooser.blocks
@@ -16,6 +16,6 @@ class Migration(migrations.Migration):
migrations.AddField(
model_name='homepage',
name='sidebar_stream',
- field=wagtail.core.fields.StreamField([('sidebar_advertisement_block', wagtail.core.blocks.StructBlock([('ad_slot', wagtailmodelchooser.blocks.ModelChooserBlock(target_model='ads.adslot'))])), ('sidebar_issuu_block', wagtail.core.blocks.StructBlock([('title', wagtail.core.blocks.CharBlock(max_length=255, required=True))])), ('sidebar_section_block', wagtail.core.blocks.StructBlock([('title', wagtail.core.blocks.CharBlock(max_length=255, required=True)), ('section', wagtail.core.blocks.PageChooserBlock(page_type=['section.SectionPage']))]))], blank=True, null=True),
+ field=wagtail.fields.StreamField([('sidebar_advertisement_block', wagtail.blocks.StructBlock([('ad_slot', wagtailmodelchooser.blocks.ModelChooserBlock(target_model='ads.adslot'))])), ('sidebar_issuu_block', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock(max_length=255, required=True))])), ('sidebar_section_block', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock(max_length=255, required=True)), ('section', wagtail.blocks.PageChooserBlock(page_type=['section.SectionPage']))]))], blank=True, null=True),
),
]
diff --git a/home/migrations/0006_alter_homepage_above_cut_stream.py b/home/migrations/0006_alter_homepage_above_cut_stream.py
index e3e5c80f3..ab956a6df 100644
--- a/home/migrations/0006_alter_homepage_above_cut_stream.py
+++ b/home/migrations/0006_alter_homepage_above_cut_stream.py
@@ -1,8 +1,8 @@
# Generated by Django 3.2.11 on 2022-05-26 02:14
from django.db import migrations
-import wagtail.core.blocks
-import wagtail.core.fields
+import wagtail.blocks
+import wagtail.fields
import wagtailmodelchooser.blocks
@@ -16,6 +16,6 @@ class Migration(migrations.Migration):
migrations.AlterField(
model_name='homepage',
name='above_cut_stream',
- field=wagtail.core.fields.StreamField([('above_cut_block', wagtail.core.blocks.StructBlock([('above_cut_ad_slot', wagtailmodelchooser.blocks.ModelChooserBlock(required=False, target_model='ads.adslot'))]))], blank=True, null=True),
+ field=wagtail.fields.StreamField([('above_cut_block', wagtail.blocks.StructBlock([('above_cut_ad_slot', wagtailmodelchooser.blocks.ModelChooserBlock(required=False, target_model='ads.adslot'))]))], blank=True, null=True),
),
]
diff --git a/home/migrations/0007_auto_20220707_1618.py b/home/migrations/0007_auto_20220707_1618.py
index 176ad4874..d99905d55 100644
--- a/home/migrations/0007_auto_20220707_1618.py
+++ b/home/migrations/0007_auto_20220707_1618.py
@@ -1,8 +1,8 @@
# Generated by Django 3.2.11 on 2022-07-07 23:18
from django.db import migrations
-import wagtail.core.blocks
-import wagtail.core.fields
+import wagtail.blocks
+import wagtail.fields
class Migration(migrations.Migration):
@@ -31,11 +31,11 @@ class Migration(migrations.Migration):
migrations.AlterField(
model_name='homepage',
name='above_cut_stream',
- field=wagtail.core.fields.StreamField([('above_cut_block', wagtail.core.blocks.StructBlock([]))], blank=True, null=True),
+ field=wagtail.fields.StreamField([('above_cut_block', wagtail.blocks.StructBlock([]))], blank=True, null=True),
),
migrations.AlterField(
model_name='homepage',
name='sidebar_stream',
- field=wagtail.core.fields.StreamField([('sidebar_advertisement_block', wagtail.core.blocks.StructBlock([])), ('sidebar_issuu_block', wagtail.core.blocks.StructBlock([('title', wagtail.core.blocks.CharBlock(max_length=255, required=True))])), ('sidebar_section_block', wagtail.core.blocks.StructBlock([('title', wagtail.core.blocks.CharBlock(max_length=255, required=True)), ('section', wagtail.core.blocks.PageChooserBlock(page_type=['section.SectionPage']))]))], blank=True, null=True),
+ field=wagtail.fields.StreamField([('sidebar_advertisement_block', wagtail.blocks.StructBlock([])), ('sidebar_issuu_block', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock(max_length=255, required=True))])), ('sidebar_section_block', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock(max_length=255, required=True)), ('section', wagtail.blocks.PageChooserBlock(page_type=['section.SectionPage']))]))], blank=True, null=True),
),
]
diff --git a/home/migrations/0008_alter_homepage_sidebar_stream.py b/home/migrations/0008_alter_homepage_sidebar_stream.py
index 1b1131129..e8ee16ac5 100644
--- a/home/migrations/0008_alter_homepage_sidebar_stream.py
+++ b/home/migrations/0008_alter_homepage_sidebar_stream.py
@@ -1,8 +1,8 @@
# Generated by Django 3.2.11 on 2022-08-04 01:42
from django.db import migrations
-import wagtail.core.blocks
-import wagtail.core.fields
+import wagtail.blocks
+import wagtail.fields
import wagtail.images.blocks
@@ -16,6 +16,6 @@ class Migration(migrations.Migration):
migrations.AlterField(
model_name='homepage',
name='sidebar_stream',
- field=wagtail.core.fields.StreamField([('sidebar_advertisement_block', wagtail.core.blocks.StructBlock([])), ('sidebar_issues_block', wagtail.core.blocks.StructBlock([('title', wagtail.core.blocks.CharBlock(max_length=255, required=True)), ('issues', wagtail.core.blocks.StreamBlock([('issue', wagtail.core.blocks.StructBlock([('date', wagtail.core.blocks.DateBlock(required=True)), ('image', wagtail.images.blocks.ImageChooserBlock(required=False)), ('show_image', wagtail.core.blocks.BooleanBlock(required=True)), ('link', wagtail.core.blocks.URLBlock(required=True))]))]))])), ('sidebar_section_block', wagtail.core.blocks.StructBlock([('title', wagtail.core.blocks.CharBlock(max_length=255, required=True)), ('section', wagtail.core.blocks.PageChooserBlock(page_type=['section.SectionPage']))]))], blank=True, null=True),
+ field=wagtail.fields.StreamField([('sidebar_advertisement_block', wagtail.blocks.StructBlock([])), ('sidebar_issues_block', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock(max_length=255, required=True)), ('issues', wagtail.blocks.StreamBlock([('issue', wagtail.blocks.StructBlock([('date', wagtail.blocks.DateBlock(required=True)), ('image', wagtail.images.blocks.ImageChooserBlock(required=False)), ('show_image', wagtail.blocks.BooleanBlock(required=True)), ('link', wagtail.blocks.URLBlock(required=True))]))]))])), ('sidebar_section_block', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock(max_length=255, required=True)), ('section', wagtail.blocks.PageChooserBlock(page_type=['section.SectionPage']))]))], blank=True, null=True),
),
]
diff --git a/home/migrations/0009_alter_homepage_sidebar_stream.py b/home/migrations/0009_alter_homepage_sidebar_stream.py
index e413dc51c..ce92d6053 100644
--- a/home/migrations/0009_alter_homepage_sidebar_stream.py
+++ b/home/migrations/0009_alter_homepage_sidebar_stream.py
@@ -1,8 +1,8 @@
# Generated by Django 3.2.11 on 2022-08-04 01:58
from django.db import migrations
-import wagtail.core.blocks
-import wagtail.core.fields
+import wagtail.blocks
+import wagtail.fields
import wagtail.images.blocks
@@ -16,6 +16,6 @@ class Migration(migrations.Migration):
migrations.AlterField(
model_name='homepage',
name='sidebar_stream',
- field=wagtail.core.fields.StreamField([('sidebar_advertisement_block', wagtail.core.blocks.StructBlock([])), ('sidebar_issues_block', wagtail.core.blocks.StructBlock([('title', wagtail.core.blocks.CharBlock(max_length=255, required=True)), ('issues', wagtail.core.blocks.StreamBlock([('issue', wagtail.core.blocks.StructBlock([('date', wagtail.core.blocks.DateBlock(required=True)), ('image', wagtail.images.blocks.ImageChooserBlock(required=False)), ('show_image', wagtail.core.blocks.BooleanBlock(required=False)), ('link', wagtail.core.blocks.URLBlock(required=True))]))]))])), ('sidebar_section_block', wagtail.core.blocks.StructBlock([('title', wagtail.core.blocks.CharBlock(max_length=255, required=True)), ('section', wagtail.core.blocks.PageChooserBlock(page_type=['section.SectionPage']))]))], blank=True, null=True),
+ field=wagtail.fields.StreamField([('sidebar_advertisement_block', wagtail.blocks.StructBlock([])), ('sidebar_issues_block', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock(max_length=255, required=True)), ('issues', wagtail.blocks.StreamBlock([('issue', wagtail.blocks.StructBlock([('date', wagtail.blocks.DateBlock(required=True)), ('image', wagtail.images.blocks.ImageChooserBlock(required=False)), ('show_image', wagtail.blocks.BooleanBlock(required=False)), ('link', wagtail.blocks.URLBlock(required=True))]))]))])), ('sidebar_section_block', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock(max_length=255, required=True)), ('section', wagtail.blocks.PageChooserBlock(page_type=['section.SectionPage']))]))], blank=True, null=True),
),
]
diff --git a/home/migrations/0010_alter_homepage_sidebar_stream.py b/home/migrations/0010_alter_homepage_sidebar_stream.py
index 1b98d2ac3..0938111f1 100644
--- a/home/migrations/0010_alter_homepage_sidebar_stream.py
+++ b/home/migrations/0010_alter_homepage_sidebar_stream.py
@@ -1,8 +1,8 @@
# Generated by Django 3.2.11 on 2023-04-04 00:26
from django.db import migrations
-import wagtail.core.blocks
-import wagtail.core.fields
+import wagtail.blocks
+import wagtail.fields
import wagtail.images.blocks
@@ -16,6 +16,6 @@ class Migration(migrations.Migration):
migrations.AlterField(
model_name='homepage',
name='sidebar_stream',
- field=wagtail.core.fields.StreamField([('sidebar_advertisement_block', wagtail.core.blocks.StructBlock([])), ('sidebar_issues_block', wagtail.core.blocks.StructBlock([('title', wagtail.core.blocks.CharBlock(max_length=255, required=True)), ('issues', wagtail.core.blocks.StreamBlock([('issue', wagtail.core.blocks.StructBlock([('date', wagtail.core.blocks.DateBlock(required=True)), ('image', wagtail.images.blocks.ImageChooserBlock(required=False)), ('show_image', wagtail.core.blocks.BooleanBlock(required=False)), ('link', wagtail.core.blocks.URLBlock(required=True))]))]))])), ('sidebar_section_block', wagtail.core.blocks.StructBlock([('title', wagtail.core.blocks.CharBlock(max_length=255, required=True)), ('section', wagtail.core.blocks.PageChooserBlock(page_type=['section.SectionPage']))])), ('sidebar_image_link_block', wagtail.core.blocks.StructBlock([('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('link', wagtail.core.blocks.URLBlock(required=False))]))], blank=True, null=True),
+ field=wagtail.fields.StreamField([('sidebar_advertisement_block', wagtail.blocks.StructBlock([])), ('sidebar_issues_block', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock(max_length=255, required=True)), ('issues', wagtail.blocks.StreamBlock([('issue', wagtail.blocks.StructBlock([('date', wagtail.blocks.DateBlock(required=True)), ('image', wagtail.images.blocks.ImageChooserBlock(required=False)), ('show_image', wagtail.blocks.BooleanBlock(required=False)), ('link', wagtail.blocks.URLBlock(required=True))]))]))])), ('sidebar_section_block', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock(max_length=255, required=True)), ('section', wagtail.blocks.PageChooserBlock(page_type=['section.SectionPage']))])), ('sidebar_image_link_block', wagtail.blocks.StructBlock([('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('link', wagtail.blocks.URLBlock(required=False))]))], blank=True, null=True),
),
]
diff --git a/home/migrations/0011_alter_homepage_sidebar_stream.py b/home/migrations/0011_alter_homepage_sidebar_stream.py
index 8dba380ac..d90f9c4e7 100644
--- a/home/migrations/0011_alter_homepage_sidebar_stream.py
+++ b/home/migrations/0011_alter_homepage_sidebar_stream.py
@@ -1,8 +1,8 @@
# Generated by Django 3.2.11 on 2023-04-04 01:12
from django.db import migrations
-import wagtail.core.blocks
-import wagtail.core.fields
+import wagtail.blocks
+import wagtail.fields
import wagtail.images.blocks
@@ -16,6 +16,6 @@ class Migration(migrations.Migration):
migrations.AlterField(
model_name='homepage',
name='sidebar_stream',
- field=wagtail.core.fields.StreamField([('sidebar_advertisement_block', wagtail.core.blocks.StructBlock([])), ('sidebar_issues_block', wagtail.core.blocks.StructBlock([('title', wagtail.core.blocks.CharBlock(max_length=255, required=True)), ('issues', wagtail.core.blocks.StreamBlock([('issue', wagtail.core.blocks.StructBlock([('date', wagtail.core.blocks.DateBlock(required=True)), ('image', wagtail.images.blocks.ImageChooserBlock(required=False)), ('show_image', wagtail.core.blocks.BooleanBlock(required=False)), ('link', wagtail.core.blocks.URLBlock(required=True))]))]))])), ('sidebar_section_block', wagtail.core.blocks.StructBlock([('title', wagtail.core.blocks.CharBlock(max_length=255, required=True)), ('section', wagtail.core.blocks.PageChooserBlock(page_type=['section.SectionPage']))])), ('sidebar_flex_stream', wagtail.core.blocks.StreamBlock([('title', wagtail.core.blocks.CharBlock(max_length=255, required=True)), ('image_link', wagtail.core.blocks.StructBlock([('date', wagtail.core.blocks.DateBlock(required=True)), ('image', wagtail.images.blocks.ImageChooserBlock(required=False)), ('show_image', wagtail.core.blocks.BooleanBlock(required=False)), ('link', wagtail.core.blocks.URLBlock(required=True))]))]))], blank=True, null=True),
+ field=wagtail.fields.StreamField([('sidebar_advertisement_block', wagtail.blocks.StructBlock([])), ('sidebar_issues_block', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock(max_length=255, required=True)), ('issues', wagtail.blocks.StreamBlock([('issue', wagtail.blocks.StructBlock([('date', wagtail.blocks.DateBlock(required=True)), ('image', wagtail.images.blocks.ImageChooserBlock(required=False)), ('show_image', wagtail.blocks.BooleanBlock(required=False)), ('link', wagtail.blocks.URLBlock(required=True))]))]))])), ('sidebar_section_block', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock(max_length=255, required=True)), ('section', wagtail.blocks.PageChooserBlock(page_type=['section.SectionPage']))])), ('sidebar_flex_stream', wagtail.blocks.StreamBlock([('title', wagtail.blocks.CharBlock(max_length=255, required=True)), ('image_link', wagtail.blocks.StructBlock([('date', wagtail.blocks.DateBlock(required=True)), ('image', wagtail.images.blocks.ImageChooserBlock(required=False)), ('show_image', wagtail.blocks.BooleanBlock(required=False)), ('link', wagtail.blocks.URLBlock(required=True))]))]))], blank=True, null=True),
),
]
diff --git a/home/migrations/0012_alter_homepage_sidebar_stream.py b/home/migrations/0012_alter_homepage_sidebar_stream.py
index d9555e2c9..0e7ac740f 100644
--- a/home/migrations/0012_alter_homepage_sidebar_stream.py
+++ b/home/migrations/0012_alter_homepage_sidebar_stream.py
@@ -1,8 +1,8 @@
# Generated by Django 3.2.11 on 2023-04-04 03:39
from django.db import migrations
-import wagtail.core.blocks
-import wagtail.core.fields
+import wagtail.blocks
+import wagtail.fields
import wagtail.images.blocks
@@ -16,6 +16,6 @@ class Migration(migrations.Migration):
migrations.AlterField(
model_name='homepage',
name='sidebar_stream',
- field=wagtail.core.fields.StreamField([('sidebar_advertisement_block', wagtail.core.blocks.StructBlock([])), ('sidebar_issues_block', wagtail.core.blocks.StructBlock([('title', wagtail.core.blocks.CharBlock(max_length=255, required=True)), ('issues', wagtail.core.blocks.StreamBlock([('issue', wagtail.core.blocks.StructBlock([('date', wagtail.core.blocks.DateBlock(required=True)), ('image', wagtail.images.blocks.ImageChooserBlock(required=False)), ('show_image', wagtail.core.blocks.BooleanBlock(required=False)), ('link', wagtail.core.blocks.URLBlock(required=True))]))]))])), ('sidebar_section_block', wagtail.core.blocks.StructBlock([('title', wagtail.core.blocks.CharBlock(max_length=255, required=True)), ('section', wagtail.core.blocks.PageChooserBlock(page_type=['section.SectionPage']))])), ('sidebar_flex_stream_block', wagtail.core.blocks.StructBlock([('title', wagtail.core.blocks.CharBlock(max_length=255, required=True)), ('stream', wagtail.core.blocks.StreamBlock([('image_link', wagtail.core.blocks.StructBlock([('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('link', wagtail.core.blocks.URLBlock(required=False))]))]))]))], blank=True, null=True),
+ field=wagtail.fields.StreamField([('sidebar_advertisement_block', wagtail.blocks.StructBlock([])), ('sidebar_issues_block', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock(max_length=255, required=True)), ('issues', wagtail.blocks.StreamBlock([('issue', wagtail.blocks.StructBlock([('date', wagtail.blocks.DateBlock(required=True)), ('image', wagtail.images.blocks.ImageChooserBlock(required=False)), ('show_image', wagtail.blocks.BooleanBlock(required=False)), ('link', wagtail.blocks.URLBlock(required=True))]))]))])), ('sidebar_section_block', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock(max_length=255, required=True)), ('section', wagtail.blocks.PageChooserBlock(page_type=['section.SectionPage']))])), ('sidebar_flex_stream_block', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock(max_length=255, required=True)), ('stream', wagtail.blocks.StreamBlock([('image_link', wagtail.blocks.StructBlock([('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('link', wagtail.blocks.URLBlock(required=False))]))]))]))], blank=True, null=True),
),
]
diff --git a/home/migrations/0015_homepage_links.py b/home/migrations/0015_homepage_links.py
index 93d0f38fe..535282a1b 100644
--- a/home/migrations/0015_homepage_links.py
+++ b/home/migrations/0015_homepage_links.py
@@ -1,8 +1,8 @@
# Generated by Django 3.2.11 on 2023-05-23 20:56
from django.db import migrations
-import wagtail.core.blocks
-import wagtail.core.fields
+import wagtail.blocks
+import wagtail.fields
class Migration(migrations.Migration):
@@ -15,6 +15,6 @@ class Migration(migrations.Migration):
migrations.AddField(
model_name='homepage',
name='links',
- field=wagtail.core.fields.StreamField([('link', wagtail.core.blocks.StructBlock([('title', wagtail.core.blocks.CharBlock(max_length=255, required=True)), ('url', wagtail.core.blocks.URLBlock(required=False)), ('description', wagtail.core.blocks.TextBlock(required=False))]))], blank=True, null=True),
+ field=wagtail.fields.StreamField([('link', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock(max_length=255, required=True)), ('url', wagtail.blocks.URLBlock(required=False)), ('description', wagtail.blocks.TextBlock(required=False))]))], blank=True, null=True),
),
]
diff --git a/home/migrations/0019_homepage_sections_stream.py b/home/migrations/0019_homepage_sections_stream.py
index ab3b6f95b..36b10fc2b 100644
--- a/home/migrations/0019_homepage_sections_stream.py
+++ b/home/migrations/0019_homepage_sections_stream.py
@@ -1,8 +1,8 @@
# Generated by Django 3.2.11 on 2023-07-18 18:39
from django.db import migrations
-import wagtail.core.blocks
-import wagtail.core.fields
+import wagtail.blocks
+import wagtail.fields
class Migration(migrations.Migration):
@@ -15,6 +15,6 @@ class Migration(migrations.Migration):
migrations.AddField(
model_name='homepage',
name='sections_stream',
- field=wagtail.core.fields.StreamField([('home_page_section_block', wagtail.core.blocks.StructBlock([('section', wagtail.core.blocks.PageChooserBlock(page_type=['section.SectionPage'])), ('layout', wagtail.core.blocks.ChoiceBlock(choices=[('news', '"News Section" Style'), ('featured', '"Featured Section" Style')]))]))], blank=True, null=True),
+ field=wagtail.fields.StreamField([('home_page_section_block', wagtail.blocks.StructBlock([('section', wagtail.blocks.PageChooserBlock(page_type=['section.SectionPage'])), ('layout', wagtail.blocks.ChoiceBlock(choices=[('news', '"News Section" Style'), ('featured', '"Featured Section" Style')]))]))], blank=True, null=True),
),
]
diff --git a/home/migrations/0020_alter_homepage_sections_stream.py b/home/migrations/0020_alter_homepage_sections_stream.py
index 7cd3c1faf..a609628b5 100644
--- a/home/migrations/0020_alter_homepage_sections_stream.py
+++ b/home/migrations/0020_alter_homepage_sections_stream.py
@@ -1,8 +1,8 @@
# Generated by Django 3.2.11 on 2023-07-18 20:06
from django.db import migrations
-import wagtail.core.blocks
-import wagtail.core.fields
+import wagtail.blocks
+import wagtail.fields
class Migration(migrations.Migration):
@@ -15,6 +15,6 @@ class Migration(migrations.Migration):
migrations.AlterField(
model_name='homepage',
name='sections_stream',
- field=wagtail.core.fields.StreamField([('home_page_section_block', wagtail.core.blocks.StructBlock([('section', wagtail.core.blocks.PageChooserBlock(page_type=['section.SectionPage'])), ('layout', wagtail.core.blocks.ChoiceBlock(choices=[('bulleted', '"Bulleted Section" Style'), ('featured', '"Featured Section" Style')]))]))], blank=True, null=True),
+ field=wagtail.fields.StreamField([('home_page_section_block', wagtail.blocks.StructBlock([('section', wagtail.blocks.PageChooserBlock(page_type=['section.SectionPage'])), ('layout', wagtail.blocks.ChoiceBlock(choices=[('bulleted', '"Bulleted Section" Style'), ('featured', '"Featured Section" Style')]))]))], blank=True, null=True),
),
]
diff --git a/home/migrations/0021_alter_homepage_sidebar_stream.py b/home/migrations/0021_alter_homepage_sidebar_stream.py
index 29e6b716c..d7dbd5611 100644
--- a/home/migrations/0021_alter_homepage_sidebar_stream.py
+++ b/home/migrations/0021_alter_homepage_sidebar_stream.py
@@ -2,8 +2,8 @@
from django.db import migrations
import section.models
-import wagtail.core.blocks
-import wagtail.core.fields
+import wagtail.blocks
+import wagtail.fields
import wagtail.images.blocks
import wagtail.snippets.blocks
@@ -18,6 +18,6 @@ class Migration(migrations.Migration):
migrations.AlterField(
model_name='homepage',
name='sidebar_stream',
- field=wagtail.core.fields.StreamField([('sidebar_advertisement_block', wagtail.core.blocks.StructBlock([])), ('sidebar_issues_block', wagtail.core.blocks.StructBlock([('title', wagtail.core.blocks.CharBlock(max_length=255, required=True)), ('issues', wagtail.core.blocks.StreamBlock([('issue', wagtail.core.blocks.StructBlock([('date', wagtail.core.blocks.DateBlock(required=True)), ('image', wagtail.images.blocks.ImageChooserBlock(required=False)), ('show_image', wagtail.core.blocks.BooleanBlock(required=False)), ('link', wagtail.core.blocks.URLBlock(required=True))]))]))])), ('sidebar_category_block', wagtail.core.blocks.StructBlock([('title', wagtail.core.blocks.CharBlock(max_length=255, required=True)), ('category', wagtail.snippets.blocks.SnippetChooserBlock(section.models.CategorySnippet))])), ('sidebar_section_block', wagtail.core.blocks.StructBlock([('title', wagtail.core.blocks.CharBlock(max_length=255, required=True)), ('section', wagtail.core.blocks.PageChooserBlock(page_type=['section.SectionPage']))])), ('sidebar_flex_stream_block', wagtail.core.blocks.StructBlock([('title', wagtail.core.blocks.CharBlock(max_length=255, required=True)), ('stream', wagtail.core.blocks.StreamBlock([('image_link', wagtail.core.blocks.StructBlock([('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('link', wagtail.core.blocks.URLBlock(required=False))]))]))]))], blank=True, null=True),
+ field=wagtail.fields.StreamField([('sidebar_advertisement_block', wagtail.blocks.StructBlock([])), ('sidebar_issues_block', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock(max_length=255, required=True)), ('issues', wagtail.blocks.StreamBlock([('issue', wagtail.blocks.StructBlock([('date', wagtail.blocks.DateBlock(required=True)), ('image', wagtail.images.blocks.ImageChooserBlock(required=False)), ('show_image', wagtail.blocks.BooleanBlock(required=False)), ('link', wagtail.blocks.URLBlock(required=True))]))]))])), ('sidebar_category_block', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock(max_length=255, required=True)), ('category', wagtail.snippets.blocks.SnippetChooserBlock(section.models.CategorySnippet))])), ('sidebar_section_block', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock(max_length=255, required=True)), ('section', wagtail.blocks.PageChooserBlock(page_type=['section.SectionPage']))])), ('sidebar_flex_stream_block', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock(max_length=255, required=True)), ('stream', wagtail.blocks.StreamBlock([('image_link', wagtail.blocks.StructBlock([('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('link', wagtail.blocks.URLBlock(required=False))]))]))]))], blank=True, null=True),
),
]
diff --git a/home/migrations/0022_alter_homepage_sidebar_stream.py b/home/migrations/0022_alter_homepage_sidebar_stream.py
index 19383a6ba..e0fc9025b 100644
--- a/home/migrations/0022_alter_homepage_sidebar_stream.py
+++ b/home/migrations/0022_alter_homepage_sidebar_stream.py
@@ -11,7 +11,7 @@
class Migration(migrations.Migration):
dependencies = [
- ('home', '0021_alter_homepage_sidebar_stream'),
+ ('home', '0022_alter_homepage_cover_story'),
]
operations = [
diff --git a/home/migrations/0023_alter_homepage_cover_story.py b/home/migrations/0023_alter_homepage_cover_story.py
index 3c58e6e20..1a540069f 100644
--- a/home/migrations/0023_alter_homepage_cover_story.py
+++ b/home/migrations/0023_alter_homepage_cover_story.py
@@ -9,7 +9,7 @@ class Migration(migrations.Migration):
dependencies = [
('wagtailcore', '0066_collection_management_permissions'),
- ('home', '0022_alter_homepage_cover_story'),
+ ('home', '0022_alter_homepage_sidebar_stream'),
]
operations = [
diff --git a/home/migrations/0023_alter_homepage_sidebar_stream.py b/home/migrations/0023_alter_homepage_sidebar_stream.py
index 1e788790f..750ca9df3 100644
--- a/home/migrations/0023_alter_homepage_sidebar_stream.py
+++ b/home/migrations/0023_alter_homepage_sidebar_stream.py
@@ -11,7 +11,7 @@
class Migration(migrations.Migration):
dependencies = [
- ('home', '0022_alter_homepage_sidebar_stream'),
+ ('home', '0023_alter_homepage_cover_story'),
]
operations = [
diff --git a/home/migrations/0024_auto_20230815_2248.py b/home/migrations/0024_auto_20230815_2248.py
new file mode 100644
index 000000000..c36ebedf1
--- /dev/null
+++ b/home/migrations/0024_auto_20230815_2248.py
@@ -0,0 +1,33 @@
+# Generated by Django 3.2.11 on 2023-08-16 05:48
+
+from django.db import migrations
+import section.models
+import wagtail.blocks
+import wagtail.fields
+import wagtail.images.blocks
+import wagtail.snippets.blocks
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('home', '0023_alter_homepage_sidebar_stream'),
+ ]
+
+ operations = [
+ migrations.AlterField(
+ model_name='homepage',
+ name='links',
+ field=wagtail.fields.StreamField([('link', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock(max_length=255, required=True)), ('url', wagtail.blocks.URLBlock(required=False)), ('description', wagtail.blocks.TextBlock(required=False))]))], blank=True, null=True, use_json_field=True),
+ ),
+ migrations.AlterField(
+ model_name='homepage',
+ name='sections_stream',
+ field=wagtail.fields.StreamField([('home_page_section_block', wagtail.blocks.StructBlock([('section', wagtail.blocks.PageChooserBlock(page_type=['section.SectionPage'])), ('layout', wagtail.blocks.ChoiceBlock(choices=[('bulleted', '"Bulleted Section" Style'), ('featured', '"Featured Section" Style')]))]))], blank=True, null=True, use_json_field=True),
+ ),
+ migrations.AlterField(
+ model_name='homepage',
+ name='sidebar_stream',
+ field=wagtail.fields.StreamField([('sidebar_advertisement_block', wagtail.blocks.StructBlock([])), ('sidebar_issues_block', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock(max_length=255, required=True)), ('issues', wagtail.blocks.StreamBlock([('issue', wagtail.blocks.StructBlock([('date', wagtail.blocks.DateBlock(required=True)), ('image', wagtail.images.blocks.ImageChooserBlock(required=False)), ('show_image', wagtail.blocks.BooleanBlock(required=False)), ('link', wagtail.blocks.URLBlock(required=True))]))]))])), ('sidebar_category_block', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock(max_length=255, required=True)), ('category', wagtail.snippets.blocks.SnippetChooserBlock(section.models.CategorySnippet))])), ('sidebar_section_block', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock(max_length=255, required=True)), ('section', wagtail.blocks.PageChooserBlock(page_type=['section.SectionPage']))])), ('sidebar_flex_stream_block', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock(max_length=255, required=True)), ('stream', wagtail.blocks.StreamBlock([('image_link', wagtail.blocks.StructBlock([('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('link', wagtail.blocks.URLBlock(required=False))]))]))]))], blank=True, null=True, use_json_field=True),
+ ),
+ ]
diff --git a/home/migrations/0024_merge_20230829_1103.py b/home/migrations/0024_merge_20230829_1103.py
deleted file mode 100644
index 6934ee1d5..000000000
--- a/home/migrations/0024_merge_20230829_1103.py
+++ /dev/null
@@ -1,14 +0,0 @@
-# Generated by Django 3.2.11 on 2023-08-29 18:03
-
-from django.db import migrations
-
-
-class Migration(migrations.Migration):
-
- dependencies = [
- ('home', '0023_alter_homepage_cover_story'),
- ('home', '0023_alter_homepage_sidebar_stream'),
- ]
-
- operations = [
- ]
diff --git a/home/models.py b/home/models.py
index 11b39bd08..7060e284d 100644
--- a/home/models.py
+++ b/home/models.py
@@ -6,9 +6,9 @@
from django.utils import timezone
from ads.models import AdSlot
-from wagtail.admin.edit_handlers import FieldPanel, StreamFieldPanel, PageChooserPanel, MultiFieldPanel, InlinePanel
-from wagtail.core.models import Page, Orderable
-from wagtail.core.fields import StreamField
+from wagtail.admin.panels import FieldPanel, StreamFieldPanel, PageChooserPanel, MultiFieldPanel, InlinePanel
+from wagtail.models import Page, Orderable
+from wagtail.fields import StreamField
from wagtailmodelchooser.edit_handlers import ModelChooserPanel
from modelcluster.fields import ParentalKey
from infinitefeed import blocks as infinitefeedblocks
@@ -30,7 +30,7 @@ class TopArticlesOrderable(Orderable):
panels = [
MultiFieldPanel(
[
- PageChooserPanel('article'),
+ FieldPanel('article'),
],
heading="Article"
),
@@ -75,6 +75,7 @@ class HomePage(Page):
],
null=True,
blank=True,
+ use_json_field=True,
)
sections_stream = StreamField(
@@ -83,6 +84,7 @@ class HomePage(Page):
],
null=True,
blank=True,
+ use_json_field=True,
)
sidebar_stream = StreamField(
@@ -97,6 +99,7 @@ class HomePage(Page):
],
null=True,
blank=True,
+ use_json_field=True,
)
# home_leaderboard_ad_slot = models.ForeignKey(
@@ -136,16 +139,16 @@ class HomePage(Page):
],
heading="Tagline"
),
- PageChooserPanel("cover_story"),
+ FieldPanel("cover_story"),
MultiFieldPanel(
[
InlinePanel("top_articles"),
],
heading="Top articles"
),
- StreamFieldPanel("links", heading="Links"),
- StreamFieldPanel("sidebar_stream", heading="Sidebar"),
- StreamFieldPanel("sections_stream", heading="Sections"),
+ FieldPanel("links", heading="Links"),
+ FieldPanel("sidebar_stream", heading="Sidebar"),
+ FieldPanel("sections_stream", heading="Sections"),
# ModelChooserPanel('home_leaderboard_ad_slot'),
# ModelChooserPanel('home_mobile_leaderboard_ad_slot'),
# ModelChooserPanel('home_sidebar_ad_slot1'),
diff --git a/images/blocks.py b/images/blocks.py
index fdd4a47ee..7412c49ec 100644
--- a/images/blocks.py
+++ b/images/blocks.py
@@ -1,4 +1,4 @@
-from wagtail.core import blocks
+from wagtail import blocks
from wagtail.images.blocks import ImageChooserBlock
class ImageBlock(blocks.StructBlock):
diff --git a/images/migrations/0001_initial.py b/images/migrations/0001_initial.py
index a195d2c1d..343d3ea33 100644
--- a/images/migrations/0001_initial.py
+++ b/images/migrations/0001_initial.py
@@ -5,7 +5,7 @@
import django.db.models.deletion
import modelcluster.fields
import taggit.managers
-import wagtail.core.models
+import wagtail.models
import wagtail.images.models
import wagtail.search.index
@@ -56,7 +56,7 @@ class Migration(migrations.Migration):
('legacy_filename', models.TextField(blank=True, default='')),
('legacy_authors', models.TextField(blank=True, default='')),
('author', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='authors.authorpage')),
- ('collection', models.ForeignKey(default=wagtail.core.models.get_root_collection_id, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='wagtailcore.collection', verbose_name='collection')),
+ ('collection', models.ForeignKey(default=wagtail.models.get_root_collection_id, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='wagtailcore.collection', verbose_name='collection')),
('tags', taggit.managers.TaggableManager(blank=True, help_text=None, through='taggit.TaggedItem', to='taggit.Tag', verbose_name='tags')),
('uploaded_by_user', models.ForeignKey(blank=True, editable=False, null=True, on_delete=django.db.models.deletion.SET_NULL, to=settings.AUTH_USER_MODEL, verbose_name='uploaded by user')),
],
diff --git a/images/migrations/0004_alter_ubysseyimage_file_hash.py b/images/migrations/0004_alter_ubysseyimage_file_hash.py
new file mode 100644
index 000000000..d50f5adf0
--- /dev/null
+++ b/images/migrations/0004_alter_ubysseyimage_file_hash.py
@@ -0,0 +1,18 @@
+# Generated by Django 3.2.11 on 2023-08-16 05:19
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('images', '0003_ubysseyimage_legacy_pk'),
+ ]
+
+ operations = [
+ migrations.AlterField(
+ model_name='ubysseyimage',
+ name='file_hash',
+ field=models.CharField(blank=True, db_index=True, editable=False, max_length=40),
+ ),
+ ]
diff --git a/images/models.py b/images/models.py
index 30f909f11..4e2b2a7db 100644
--- a/images/models.py
+++ b/images/models.py
@@ -9,9 +9,9 @@
from django.utils.translation import gettext_lazy as _
from modelcluster.models import ClusterableModel
from modelcluster.fields import ParentalKey
-from wagtail.admin.edit_handlers import FieldPanel, InlinePanel, MultiFieldPanel
-from wagtail.core.models import Orderable
-from wagtail.core.utils import string_to_ascii
+from wagtail.admin.panels import FieldPanel, InlinePanel, MultiFieldPanel
+from wagtail.models import Orderable
+from wagtail.coreutils import string_to_ascii
from wagtail.images.models import Image, AbstractImage, AbstractRendition
from wagtail.images.edit_handlers import ImageChooserPanel
from wagtail.snippets.models import register_snippet
@@ -215,7 +215,7 @@ class GalleryOrderable(Orderable):
panels = [
MultiFieldPanel(
[
- ImageChooserPanel("image"),
+ FieldPanel("image"),
],
heading="Image Chooser",
),
diff --git a/infinitefeed/blocks.py b/infinitefeed/blocks.py
index e6f9b1d76..0af4afa61 100644
--- a/infinitefeed/blocks.py
+++ b/infinitefeed/blocks.py
@@ -1,6 +1,6 @@
-from wagtail.core import blocks
-from wagtail.core.blocks import field_block
-from wagtail.core.fields import StreamField
+from wagtail import blocks
+from wagtail.blocks import field_block
+from wagtail.fields import StreamField
from wagtail.images.blocks import ImageChooserBlock
from article.models import ArticlePage
from django.db.models import Q
diff --git a/infinitefeed/models.py b/infinitefeed/models.py
deleted file mode 100644
index 8b1378917..000000000
--- a/infinitefeed/models.py
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/navigation/models.py b/navigation/models.py
index 2e9a2d3ab..547c964a8 100644
--- a/navigation/models.py
+++ b/navigation/models.py
@@ -6,9 +6,9 @@
from modelcluster.fields import ParentalKey
from modelcluster.models import ClusterableModel
from section.models import SectionPage
-from wagtail.admin.edit_handlers import FieldPanel, InlinePanel, MultiFieldPanel, PageChooserPanel, HelpPanel
+from wagtail.admin.panels import FieldPanel, InlinePanel, MultiFieldPanel, PageChooserPanel, HelpPanel
from wagtail.contrib.settings.models import BaseSetting, register_setting
-from wagtail.core.models import Orderable
+from wagtail.models import Orderable
class NavigationMenuOrderable(Orderable):
@@ -38,7 +38,7 @@ class NavigationMenuOrderable(Orderable):
panels = [
MultiFieldPanel([
- PageChooserPanel("internal_link"),
+ FieldPanel("internal_link"),
FieldPanel("external_link"),
FieldPanel("link_text"),
], heading="Link",
diff --git a/requirements-prd.txt b/requirements-prd.txt
index 5548f0782..104bfdcf1 100644
--- a/requirements-prd.txt
+++ b/requirements-prd.txt
@@ -1,30 +1,31 @@
Django==3.2.11
-wagtail==2.15.3
-django-storages[google]==1.12
+wagtail==3.0.0
+django-storages[google]==1.14.2
django-canonical-domain==0.3.0
-pymemcache==3.5.0
+pymemcache==4.0.0
mysqlclient==2.0.1
django-phonenumber-field==2.0.0
phonenumbers==8.12.9
-beautifulsoup4==4.8.2
+beautifulsoup4==4.9.0
feedparser==6.0.1
pyyaml==6.0.1
ua-parser==0.10.0
user-agents==2.2.0
django-user_agents==0.4.0
-gunicorn==20.0.4
+gunicorn==21.2.0
Pillow==9.3.0
-google-cloud-datastore==1.15.0
-google-cloud-secret-manager==1.0.0
-django-environ==0.4.5
-requests==2.24.0
-whitenoise==5.1.0
+google-cloud-datastore==2.17.0
+google-cloud-storage==1.44.0
+google-cloud-secret-manager==2.11.0
+django-environ==0.10.0
+requests==2.31.0
+whitenoise==6.5.0
brotli==1.0.9
-django-extensions==3.1.3
+django-extensions==3.2.3
git+https://github.com/jazzband/django-dbtemplates.git@233a401#egg=django-dbtemplates
-wagtail-modelchooser==2.13.1
-wagtailmenus==3.0.2
-wagtail-cache==1.0.2
+wagtail-modelchooser==3.0.0
+wagtailmenus==3.1.8
+wagtail-cache==2.1.1
google-crc32c==1.3.0
wagtail-color-panel==1.4.0
django-redis==5.4.0
diff --git a/requirements.txt b/requirements.txt
index 268c20ea8..aa2428089 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1,35 +1,37 @@
Django==3.2.11
-wagtail==2.15.3
-django-storages[google]==1.12
+wagtail==3.0.0
+git+https://github.com/ubyssey/django-google-storage.git@v0.5.4#egg=django-google-storage-updated
+django-storages[google]==1.14.2
django-canonical-domain==0.3.0
-pymemcache==3.5.0
+pymemcache==4.0.0
mysqlclient==2.0.1
django-phonenumber-field==2.0.0
phonenumbers==8.12.9
-beautifulsoup4==4.8.2
-feedparser==6.0.1
+beautifulsoup4==4.9.0
+feedparser==6.0.10
pyyaml==6.0.1
ua-parser==0.10.0
user-agents==2.2.0
django-user_agents==0.4.0
-gunicorn==20.0.4
+gunicorn==21.2.0
Pillow==9.3.0
-google-cloud-datastore==1.15.0
+google-cloud-datastore==2.17.0
+google-cloud-storage==1.44.0
google-cloud-secret-manager==2.11.0
-django-environ==0.4.5
-requests==2.24.0
-whitenoise==5.1.0
+django-environ==0.10.0
+requests==2.31.0
+whitenoise==6.5.0
brotli==1.0.9
-django-extensions==3.1.3
+django-extensions==3.2.3
git+https://github.com/jazzband/django-dbtemplates.git@233a401#egg=django-dbtemplates
-wagtail-modelchooser==2.13.1
-wagtailmenus==3.0.2
-wagtail-cache==1.0.2
+wagtail-modelchooser==3.0.0
+wagtailmenus==3.1.8
+wagtail-cache==2.1.1
google-crc32c==1.3.0
wagtail-color-panel==1.4.0
-django-debug-toolbar==3.2.1
-pylint==2.8.3
-pylint-django==2.4.4
+django-debug-toolbar==4.2.0
+pylint==2.17.5
+pylint-django==2.5.3
ipython
django-redis==5.4.0
redis==5.0.1
diff --git a/section/migrations/0012_sectionpage_sidebar_stream.py b/section/migrations/0012_sectionpage_sidebar_stream.py
index 8bd3969d2..90c892eec 100644
--- a/section/migrations/0012_sectionpage_sidebar_stream.py
+++ b/section/migrations/0012_sectionpage_sidebar_stream.py
@@ -1,8 +1,8 @@
# Generated by Django 3.2.11 on 2023-05-25 04:16
from django.db import migrations
-import wagtail.core.blocks
-import wagtail.core.fields
+import wagtail.blocks
+import wagtail.fields
import wagtail.images.blocks
@@ -16,6 +16,6 @@ class Migration(migrations.Migration):
migrations.AddField(
model_name='sectionpage',
name='sidebar_stream',
- field=wagtail.core.fields.StreamField([('sidebar_advertisement_block', wagtail.core.blocks.StructBlock([])), ('sidebar_issues_block', wagtail.core.blocks.StructBlock([('title', wagtail.core.blocks.CharBlock(max_length=255, required=True)), ('issues', wagtail.core.blocks.StreamBlock([('issue', wagtail.core.blocks.StructBlock([('date', wagtail.core.blocks.DateBlock(required=True)), ('image', wagtail.images.blocks.ImageChooserBlock(required=False)), ('show_image', wagtail.core.blocks.BooleanBlock(required=False)), ('link', wagtail.core.blocks.URLBlock(required=True))]))]))])), ('sidebar_section_block', wagtail.core.blocks.StructBlock([('title', wagtail.core.blocks.CharBlock(max_length=255, required=True)), ('section', wagtail.core.blocks.PageChooserBlock(page_type=['section.SectionPage']))])), ('sidebar_flex_stream_block', wagtail.core.blocks.StructBlock([('title', wagtail.core.blocks.CharBlock(max_length=255, required=True)), ('stream', wagtail.core.blocks.StreamBlock([('image_link', wagtail.core.blocks.StructBlock([('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('link', wagtail.core.blocks.URLBlock(required=False))]))]))]))], blank=True, null=True),
+ field=wagtail.fields.StreamField([('sidebar_advertisement_block', wagtail.blocks.StructBlock([])), ('sidebar_issues_block', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock(max_length=255, required=True)), ('issues', wagtail.blocks.StreamBlock([('issue', wagtail.blocks.StructBlock([('date', wagtail.blocks.DateBlock(required=True)), ('image', wagtail.images.blocks.ImageChooserBlock(required=False)), ('show_image', wagtail.blocks.BooleanBlock(required=False)), ('link', wagtail.blocks.URLBlock(required=True))]))]))])), ('sidebar_section_block', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock(max_length=255, required=True)), ('section', wagtail.blocks.PageChooserBlock(page_type=['section.SectionPage']))])), ('sidebar_flex_stream_block', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock(max_length=255, required=True)), ('stream', wagtail.blocks.StreamBlock([('image_link', wagtail.blocks.StructBlock([('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('link', wagtail.blocks.URLBlock(required=False))]))]))]))], blank=True, null=True),
),
]
diff --git a/section/models.py b/section/models.py
index d89393562..b4b16cf90 100644
--- a/section/models.py
+++ b/section/models.py
@@ -14,10 +14,10 @@
from modelcluster.fields import ParentalKey
from wagtail.images.edit_handlers import ImageChooserPanel
-from wagtail.admin.edit_handlers import FieldPanel, InlinePanel, MultiFieldPanel, PageChooserPanel, StreamFieldPanel
-from wagtail.core.fields import StreamField
-from wagtail.core import models as wagtail_core_models
-from wagtail.core.models import Page
+from wagtail.admin.panels import FieldPanel, InlinePanel, MultiFieldPanel, PageChooserPanel, StreamFieldPanel
+from wagtail.fields import StreamField
+from wagtail import models as wagtail_core_models
+from wagtail.models import Page
from wagtail.contrib.routable_page.models import route, RoutablePageMixin
from wagtail.search import index
from wagtail.snippets.edit_handlers import SnippetChooserPanel
@@ -86,14 +86,14 @@ class CategorySnippet(index.Indexed, ClusterableModel):
[
FieldPanel("title"),
FieldPanel("slug"),
- PageChooserPanel("section_page"),
+ FieldPanel("section_page"),
FieldPanel("description"),
],
heading="Essentials"
),
MultiFieldPanel(
[
- ImageChooserPanel("banner"),
+ FieldPanel("banner"),
],
heading="Banner",
),
@@ -143,7 +143,7 @@ class CategoryAuthor(wagtail_core_models.Orderable):
related_name="category_authors",
)
panels = [
- PageChooserPanel("author"),
+ FieldPanel("author"),
]
class CategoryMenuItem(wagtail_core_models.Orderable):
@@ -160,7 +160,7 @@ class CategoryMenuItem(wagtail_core_models.Orderable):
related_name="category_menu",
)
panels = [
- SnippetChooserPanel("category"),
+ FieldPanel("category"),
]
class SectionPage(RoutablePageMixin, SectionablePage):
@@ -211,12 +211,13 @@ class SectionPage(RoutablePageMixin, SectionablePage):
],
null=True,
blank=True,
+ use_json_field=True,
)
content_panels = wagtail_core_models.Page.content_panels + [
MultiFieldPanel(
[
- ImageChooserPanel("banner"),
+ FieldPanel("banner"),
],
heading="Banner",
),
@@ -228,7 +229,7 @@ class SectionPage(RoutablePageMixin, SectionablePage):
),
MultiFieldPanel(
[
- DocumentChooserPanel('label_svg'),
+ FieldPanel('label_svg'),
],
heading="Label svg"
),
@@ -240,7 +241,7 @@ class SectionPage(RoutablePageMixin, SectionablePage):
),
MultiFieldPanel(
[
- StreamFieldPanel("sidebar_stream"),
+ FieldPanel("sidebar_stream"),
],
heading="Sidebar"
)
diff --git a/section/sectionable/models.py b/section/sectionable/models.py
index eb26a4e9c..a10f3e60c 100644
--- a/section/sectionable/models.py
+++ b/section/sectionable/models.py
@@ -1,7 +1,7 @@
from xmlrpc.client import Boolean
from django.db.models import fields
-from wagtail.core import models
-from wagtail.admin.edit_handlers import (
+from wagtail import models
+from wagtail.admin.panels import (
# Panels
FieldPanel,
HelpPanel,
diff --git a/specialfeaturelanding/blocks.py b/specialfeaturelanding/blocks.py
index ed30003e6..21b2c44b5 100644
--- a/specialfeaturelanding/blocks.py
+++ b/specialfeaturelanding/blocks.py
@@ -1,6 +1,6 @@
from django.template.loader import render_to_string
from django.utils.safestring import mark_safe
-from wagtail.core import blocks
+from wagtail import blocks
from wagtail.images.blocks import ImageChooserBlock
TEMPLATE_DIRECTORY = "specialfeaturelanding/blocks/"
diff --git a/specialfeaturelanding/migrations/0004_speciallandingpage_content.py b/specialfeaturelanding/migrations/0004_speciallandingpage_content.py
index 3d150a4c9..a09340bdf 100644
--- a/specialfeaturelanding/migrations/0004_speciallandingpage_content.py
+++ b/specialfeaturelanding/migrations/0004_speciallandingpage_content.py
@@ -1,8 +1,8 @@
# Generated by Django 3.2.5 on 2021-08-23 23:51
from django.db import migrations
-import wagtail.core.blocks
-import wagtail.core.fields
+import wagtail.blocks
+import wagtail.fields
import wagtail.images.blocks
@@ -16,6 +16,6 @@ class Migration(migrations.Migration):
migrations.AddField(
model_name='speciallandingpage',
name='content',
- field=wagtail.core.fields.StreamField([('quote', wagtail.core.blocks.StructBlock([('quote', wagtail.core.blocks.RichTextBlock(required=False)), ('source', wagtail.core.blocks.CharBlock(max_length=255, required=False)), ('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('template', wagtail.core.blocks.ChoiceBlock(choices=[('guide-2020', '"Guide 2020"-Style Panel Quote')]))], label='Quote Block')), ('stylecta', wagtail.core.blocks.StructBlock([('title', wagtail.core.blocks.CharBlock(max_length=255, required=True)), ('content', wagtail.core.blocks.RichTextBlock(required=True)), ('link', wagtail.core.blocks.PageChooserBlock(required=True)), ('link_text', wagtail.core.blocks.CharBlock(max_length=255, required=True)), ('class_name', wagtail.core.blocks.CharBlock(max_length=255, required=True)), ('template', wagtail.core.blocks.ChoiceBlock(choices=[('guide-2020', '"Guide 2020"-Style CTA')]))], label='Custom Styling CTA'))], blank=True, null=True),
+ field=wagtail.fields.StreamField([('quote', wagtail.blocks.StructBlock([('quote', wagtail.blocks.RichTextBlock(required=False)), ('source', wagtail.blocks.CharBlock(max_length=255, required=False)), ('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('template', wagtail.blocks.ChoiceBlock(choices=[('guide-2020', '"Guide 2020"-Style Panel Quote')]))], label='Quote Block')), ('stylecta', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock(max_length=255, required=True)), ('content', wagtail.blocks.RichTextBlock(required=True)), ('link', wagtail.blocks.PageChooserBlock(required=True)), ('link_text', wagtail.blocks.CharBlock(max_length=255, required=True)), ('class_name', wagtail.blocks.CharBlock(max_length=255, required=True)), ('template', wagtail.blocks.ChoiceBlock(choices=[('guide-2020', '"Guide 2020"-Style CTA')]))], label='Custom Styling CTA'))], blank=True, null=True),
),
]
diff --git a/specialfeaturelanding/migrations/0005_auto_20210824_1800.py b/specialfeaturelanding/migrations/0005_auto_20210824_1800.py
index baff58d4b..e0f6b01be 100644
--- a/specialfeaturelanding/migrations/0005_auto_20210824_1800.py
+++ b/specialfeaturelanding/migrations/0005_auto_20210824_1800.py
@@ -1,8 +1,8 @@
# Generated by Django 3.2.5 on 2021-08-25 01:00
from django.db import migrations, models
-import wagtail.core.blocks
-import wagtail.core.fields
+import wagtail.blocks
+import wagtail.fields
import wagtail.images.blocks
@@ -21,6 +21,6 @@ class Migration(migrations.Migration):
migrations.AlterField(
model_name='speciallandingpage',
name='content',
- field=wagtail.core.fields.StreamField([('quote', wagtail.core.blocks.StructBlock([('quote', wagtail.core.blocks.RichTextBlock(required=False)), ('source', wagtail.core.blocks.CharBlock(max_length=255, required=False)), ('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('template', wagtail.core.blocks.ChoiceBlock(choices=[('guide-2020', '"Guide 2020"-Style Panel Quote')])), ('class_name', wagtail.core.blocks.CharBlock(default='panel-quote __1', max_length=255, required=True))], label='Quote Block')), ('stylecta', wagtail.core.blocks.StructBlock([('title', wagtail.core.blocks.CharBlock(max_length=255, required=True)), ('richcontent', wagtail.core.blocks.RichTextBlock(required=False)), ('htmlcontent', wagtail.core.blocks.RawHTMLBlock(required=False)), ('use_richtext', wagtail.core.blocks.BooleanBlock(default=False, required=False)), ('link', wagtail.core.blocks.PageChooserBlock(required=True)), ('link_text', wagtail.core.blocks.CharBlock(max_length=255, required=True)), ('class_name', wagtail.core.blocks.CharBlock(max_length=255, required=True)), ('template', wagtail.core.blocks.ChoiceBlock(choices=[('guide-2020', '"Guide 2020"-Style CTA')]))], label='Custom Styling CTA'))], blank=True, null=True),
+ field=wagtail.fields.StreamField([('quote', wagtail.blocks.StructBlock([('quote', wagtail.blocks.RichTextBlock(required=False)), ('source', wagtail.blocks.CharBlock(max_length=255, required=False)), ('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('template', wagtail.blocks.ChoiceBlock(choices=[('guide-2020', '"Guide 2020"-Style Panel Quote')])), ('class_name', wagtail.blocks.CharBlock(default='panel-quote __1', max_length=255, required=True))], label='Quote Block')), ('stylecta', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock(max_length=255, required=True)), ('richcontent', wagtail.blocks.RichTextBlock(required=False)), ('htmlcontent', wagtail.blocks.RawHTMLBlock(required=False)), ('use_richtext', wagtail.blocks.BooleanBlock(default=False, required=False)), ('link', wagtail.blocks.PageChooserBlock(required=True)), ('link_text', wagtail.blocks.CharBlock(max_length=255, required=True)), ('class_name', wagtail.blocks.CharBlock(max_length=255, required=True)), ('template', wagtail.blocks.ChoiceBlock(choices=[('guide-2020', '"Guide 2020"-Style CTA')]))], label='Custom Styling CTA'))], blank=True, null=True),
),
]
diff --git a/specialfeaturelanding/migrations/0007_auto_20220802_1754.py b/specialfeaturelanding/migrations/0007_auto_20220802_1754.py
index 0bf84f864..9210ab08b 100644
--- a/specialfeaturelanding/migrations/0007_auto_20220802_1754.py
+++ b/specialfeaturelanding/migrations/0007_auto_20220802_1754.py
@@ -3,8 +3,8 @@
from django.db import migrations, models
import django.db.models.deletion
import modelcluster.fields
-import wagtail.core.blocks
-import wagtail.core.fields
+import wagtail.blocks
+import wagtail.fields
import wagtail.images.blocks
@@ -19,7 +19,7 @@ class Migration(migrations.Migration):
migrations.AddField(
model_name='speciallandingpage',
name='editorial_stream',
- field=wagtail.core.fields.StreamField([('credits', wagtail.core.blocks.StreamBlock([('title', wagtail.core.blocks.CharBlock()), ('rich_text', wagtail.core.blocks.RichTextBlock()), ('editor_credit', wagtail.core.blocks.StructBlock([('role', wagtail.core.blocks.CharBlock()), ('name', wagtail.core.blocks.CharBlock())]))])), ('image', wagtail.images.blocks.ImageChooserBlock())], blank=True, null=True),
+ field=wagtail.fields.StreamField([('credits', wagtail.blocks.StreamBlock([('title', wagtail.blocks.CharBlock()), ('rich_text', wagtail.blocks.RichTextBlock()), ('editor_credit', wagtail.blocks.StructBlock([('role', wagtail.blocks.CharBlock()), ('name', wagtail.blocks.CharBlock())]))])), ('image', wagtail.images.blocks.ImageChooserBlock())], blank=True, null=True),
),
migrations.CreateModel(
name='CreditsOrderable',
diff --git a/specialfeaturelanding/migrations/0008_alter_speciallandingpage_editorial_stream.py b/specialfeaturelanding/migrations/0008_alter_speciallandingpage_editorial_stream.py
index b5944ca66..3acea12d4 100644
--- a/specialfeaturelanding/migrations/0008_alter_speciallandingpage_editorial_stream.py
+++ b/specialfeaturelanding/migrations/0008_alter_speciallandingpage_editorial_stream.py
@@ -1,8 +1,8 @@
# Generated by Django 3.2.11 on 2022-08-03 01:24
from django.db import migrations
-import wagtail.core.blocks
-import wagtail.core.fields
+import wagtail.blocks
+import wagtail.fields
import wagtail.images.blocks
@@ -16,6 +16,6 @@ class Migration(migrations.Migration):
migrations.AlterField(
model_name='speciallandingpage',
name='editorial_stream',
- field=wagtail.core.fields.StreamField([('credits', wagtail.core.blocks.StreamBlock([('title', wagtail.core.blocks.CharBlock()), ('rich_text', wagtail.core.blocks.RichTextBlock()), ('editor_credit', wagtail.core.blocks.StructBlock([('role', wagtail.core.blocks.CharBlock()), ('name', wagtail.core.blocks.CharBlock())]))])), ('image', wagtail.images.blocks.ImageChooserBlock()), ('note_with_header', wagtail.core.blocks.StructBlock([('title', wagtail.core.blocks.CharBlock()), ('rich_text', wagtail.core.blocks.RichTextBlock())]))], blank=True, null=True),
+ field=wagtail.fields.StreamField([('credits', wagtail.blocks.StreamBlock([('title', wagtail.blocks.CharBlock()), ('rich_text', wagtail.blocks.RichTextBlock()), ('editor_credit', wagtail.blocks.StructBlock([('role', wagtail.blocks.CharBlock()), ('name', wagtail.blocks.CharBlock())]))])), ('image', wagtail.images.blocks.ImageChooserBlock()), ('note_with_header', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock()), ('rich_text', wagtail.blocks.RichTextBlock())]))], blank=True, null=True),
),
]
diff --git a/specialfeaturelanding/migrations/0009_speciallandingpage_graphical_menu.py b/specialfeaturelanding/migrations/0009_speciallandingpage_graphical_menu.py
index bedcc1ff2..b33d0a42b 100644
--- a/specialfeaturelanding/migrations/0009_speciallandingpage_graphical_menu.py
+++ b/specialfeaturelanding/migrations/0009_speciallandingpage_graphical_menu.py
@@ -1,8 +1,8 @@
# Generated by Django 3.2.11 on 2022-08-18 00:39
from django.db import migrations
-import wagtail.core.blocks
-import wagtail.core.fields
+import wagtail.blocks
+import wagtail.fields
class Migration(migrations.Migration):
@@ -15,6 +15,6 @@ class Migration(migrations.Migration):
migrations.AddField(
model_name='speciallandingpage',
name='graphical_menu',
- field=wagtail.core.fields.StreamField([('menu_item', wagtail.core.blocks.StructBlock([('class_name', wagtail.core.blocks.CharBlock(default='class', max_length=255, required=True)), ('text', wagtail.core.blocks.CharBlock(default='text', max_length=255, required=True))], label='Text'))], blank=True, null=True),
+ field=wagtail.fields.StreamField([('menu_item', wagtail.blocks.StructBlock([('class_name', wagtail.blocks.CharBlock(default='class', max_length=255, required=True)), ('text', wagtail.blocks.CharBlock(default='text', max_length=255, required=True))], label='Text'))], blank=True, null=True),
),
]
diff --git a/specialfeaturelanding/migrations/0011_alter_speciallandingpage_editorial_stream.py b/specialfeaturelanding/migrations/0011_alter_speciallandingpage_editorial_stream.py
index 5f07584e7..02cc7d7cd 100644
--- a/specialfeaturelanding/migrations/0011_alter_speciallandingpage_editorial_stream.py
+++ b/specialfeaturelanding/migrations/0011_alter_speciallandingpage_editorial_stream.py
@@ -1,8 +1,8 @@
# Generated by Django 3.2.11 on 2022-09-01 04:26
from django.db import migrations
-import wagtail.core.blocks
-import wagtail.core.fields
+import wagtail.blocks
+import wagtail.fields
import wagtail.images.blocks
@@ -16,6 +16,6 @@ class Migration(migrations.Migration):
migrations.AlterField(
model_name='speciallandingpage',
name='editorial_stream',
- field=wagtail.core.fields.StreamField([('banner', wagtail.core.blocks.StructBlock([('template', wagtail.core.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-banner.html', 'guide-2021-banner.html')], required=False)), ('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('title1', wagtail.core.blocks.CharBlock()), ('title2', wagtail.core.blocks.CharBlock()), ('credit', wagtail.core.blocks.CharBlock())])), ('credits', wagtail.core.blocks.StructBlock([('template', wagtail.core.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-editorial-stream.html', 'guide-2021-editorial-stream.html')], required=False)), ('stream', wagtail.core.blocks.StreamBlock([('raw_html', wagtail.core.blocks.RawHTMLBlock()), ('rich_text', wagtail.core.blocks.RichTextBlock()), ('editor_credit', wagtail.core.blocks.StructBlock([('template', wagtail.core.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-editor-credit.html', 'guide-2021-editor-credit.html')], required=False)), ('role', wagtail.core.blocks.CharBlock()), ('name', wagtail.core.blocks.CharBlock())]))]))])), ('image', wagtail.images.blocks.ImageChooserBlock()), ('note_with_header', wagtail.core.blocks.StructBlock([('template', wagtail.core.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-editors-note.html', 'guide-2021-editors-note.html'), ('guide-2021-land-acknowledgement.html', 'guide-2021-land-acknowledgement.html')], required=False)), ('title', wagtail.core.blocks.CharBlock()), ('rich_text', wagtail.core.blocks.RichTextBlock())]))], blank=True, null=True),
+ field=wagtail.fields.StreamField([('banner', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-banner.html', 'guide-2021-banner.html')], required=False)), ('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('title1', wagtail.blocks.CharBlock()), ('title2', wagtail.blocks.CharBlock()), ('credit', wagtail.blocks.CharBlock())])), ('credits', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-editorial-stream.html', 'guide-2021-editorial-stream.html')], required=False)), ('stream', wagtail.blocks.StreamBlock([('raw_html', wagtail.blocks.RawHTMLBlock()), ('rich_text', wagtail.blocks.RichTextBlock()), ('editor_credit', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-editor-credit.html', 'guide-2021-editor-credit.html')], required=False)), ('role', wagtail.blocks.CharBlock()), ('name', wagtail.blocks.CharBlock())]))]))])), ('image', wagtail.images.blocks.ImageChooserBlock()), ('note_with_header', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-editors-note.html', 'guide-2021-editors-note.html'), ('guide-2021-land-acknowledgement.html', 'guide-2021-land-acknowledgement.html')], required=False)), ('title', wagtail.blocks.CharBlock()), ('rich_text', wagtail.blocks.RichTextBlock())]))], blank=True, null=True),
),
]
diff --git a/specialfeaturelanding/migrations/0012_alter_speciallandingpage_editorial_stream.py b/specialfeaturelanding/migrations/0012_alter_speciallandingpage_editorial_stream.py
index 6c498b083..99f01f236 100644
--- a/specialfeaturelanding/migrations/0012_alter_speciallandingpage_editorial_stream.py
+++ b/specialfeaturelanding/migrations/0012_alter_speciallandingpage_editorial_stream.py
@@ -1,8 +1,8 @@
# Generated by Django 3.2.11 on 2022-09-01 05:07
from django.db import migrations
-import wagtail.core.blocks
-import wagtail.core.fields
+import wagtail.blocks
+import wagtail.fields
import wagtail.images.blocks
@@ -16,6 +16,6 @@ class Migration(migrations.Migration):
migrations.AlterField(
model_name='speciallandingpage',
name='editorial_stream',
- field=wagtail.core.fields.StreamField([('banner', wagtail.core.blocks.StructBlock([('template', wagtail.core.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-banner.html', 'guide-2021-banner.html')], required=False)), ('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('title1', wagtail.core.blocks.CharBlock()), ('title2', wagtail.core.blocks.CharBlock()), ('credit', wagtail.core.blocks.CharBlock())])), ('credits', wagtail.core.blocks.StructBlock([('template', wagtail.core.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-editorial-stream.html', 'guide-2021-editorial-stream.html')], required=False)), ('stream', wagtail.core.blocks.StreamBlock([('raw_html', wagtail.core.blocks.RawHTMLBlock()), ('rich_text', wagtail.core.blocks.RichTextBlock()), ('editor_credit', wagtail.core.blocks.StructBlock([('template', wagtail.core.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-editor-credit.html', 'guide-2021-editor-credit.html')], required=False)), ('role', wagtail.core.blocks.CharBlock()), ('name', wagtail.core.blocks.CharBlock())]))]))])), ('image', wagtail.images.blocks.ImageChooserBlock()), ('note_with_header', wagtail.core.blocks.StructBlock([('template', wagtail.core.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-editors-note.html', 'guide-2021-editors-note.html'), ('guide-2021-land-acknowledgement.html', 'guide-2021-land-acknowledgement.html')], required=False)), ('title', wagtail.core.blocks.CharBlock()), ('rich_text', wagtail.core.blocks.RichTextBlock())])), ('graphical_menu', wagtail.core.blocks.StructBlock([('template', wagtail.core.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-graphical-menu.html', 'guide-2021-graphical-menu.html')], required=False)), ('stream', wagtail.core.blocks.StreamBlock([('raw_html', wagtail.core.blocks.RawHTMLBlock()), ('rich_text', wagtail.core.blocks.RichTextBlock()), ('graphical_menu_item', wagtail.core.blocks.StructBlock([('template', wagtail.core.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-graphical-menu-item.html', 'guide-2021-graphical-menu-item.html')], required=False)), ('div_class_name', wagtail.core.blocks.CharBlock(default='box', max_length=255, required=True)), ('img_class_name', wagtail.core.blocks.CharBlock(default='photo_cover', max_length=255, required=True)), ('link', wagtail.core.blocks.URLBlock(required=True)), ('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('width', wagtail.core.blocks.IntegerBlock(required=False)), ('height', wagtail.core.blocks.IntegerBlock(required=False))]))]))]))], blank=True, null=True),
+ field=wagtail.fields.StreamField([('banner', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-banner.html', 'guide-2021-banner.html')], required=False)), ('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('title1', wagtail.blocks.CharBlock()), ('title2', wagtail.blocks.CharBlock()), ('credit', wagtail.blocks.CharBlock())])), ('credits', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-editorial-stream.html', 'guide-2021-editorial-stream.html')], required=False)), ('stream', wagtail.blocks.StreamBlock([('raw_html', wagtail.blocks.RawHTMLBlock()), ('rich_text', wagtail.blocks.RichTextBlock()), ('editor_credit', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-editor-credit.html', 'guide-2021-editor-credit.html')], required=False)), ('role', wagtail.blocks.CharBlock()), ('name', wagtail.blocks.CharBlock())]))]))])), ('image', wagtail.images.blocks.ImageChooserBlock()), ('note_with_header', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-editors-note.html', 'guide-2021-editors-note.html'), ('guide-2021-land-acknowledgement.html', 'guide-2021-land-acknowledgement.html')], required=False)), ('title', wagtail.blocks.CharBlock()), ('rich_text', wagtail.blocks.RichTextBlock())])), ('graphical_menu', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-graphical-menu.html', 'guide-2021-graphical-menu.html')], required=False)), ('stream', wagtail.blocks.StreamBlock([('raw_html', wagtail.blocks.RawHTMLBlock()), ('rich_text', wagtail.blocks.RichTextBlock()), ('graphical_menu_item', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-graphical-menu-item.html', 'guide-2021-graphical-menu-item.html')], required=False)), ('div_class_name', wagtail.blocks.CharBlock(default='box', max_length=255, required=True)), ('img_class_name', wagtail.blocks.CharBlock(default='photo_cover', max_length=255, required=True)), ('link', wagtail.blocks.URLBlock(required=True)), ('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('width', wagtail.blocks.IntegerBlock(required=False)), ('height', wagtail.blocks.IntegerBlock(required=False))]))]))]))], blank=True, null=True),
),
]
diff --git a/specialfeaturelanding/migrations/0013_alter_speciallandingpage_editorial_stream.py b/specialfeaturelanding/migrations/0013_alter_speciallandingpage_editorial_stream.py
index 331d76099..f80f2391b 100644
--- a/specialfeaturelanding/migrations/0013_alter_speciallandingpage_editorial_stream.py
+++ b/specialfeaturelanding/migrations/0013_alter_speciallandingpage_editorial_stream.py
@@ -1,8 +1,8 @@
# Generated by Django 3.2.11 on 2022-09-01 05:59
from django.db import migrations
-import wagtail.core.blocks
-import wagtail.core.fields
+import wagtail.blocks
+import wagtail.fields
import wagtail.images.blocks
@@ -16,6 +16,6 @@ class Migration(migrations.Migration):
migrations.AlterField(
model_name='speciallandingpage',
name='editorial_stream',
- field=wagtail.core.fields.StreamField([('banner', wagtail.core.blocks.StructBlock([('template', wagtail.core.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-banner.html', 'guide-2021-banner.html')], required=False)), ('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('title1', wagtail.core.blocks.CharBlock()), ('title2', wagtail.core.blocks.CharBlock()), ('credit', wagtail.core.blocks.CharBlock())])), ('credits', wagtail.core.blocks.StructBlock([('template', wagtail.core.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-editorial-stream.html', 'guide-2021-editorial-stream.html')], required=False)), ('stream', wagtail.core.blocks.StreamBlock([('raw_html', wagtail.core.blocks.RawHTMLBlock()), ('rich_text', wagtail.core.blocks.RichTextBlock()), ('editor_credit', wagtail.core.blocks.StructBlock([('template', wagtail.core.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-editor-credit.html', 'guide-2021-editor-credit.html')], required=False)), ('role', wagtail.core.blocks.CharBlock()), ('name', wagtail.core.blocks.CharBlock())]))]))])), ('image', wagtail.images.blocks.ImageChooserBlock()), ('note_with_header', wagtail.core.blocks.StructBlock([('template', wagtail.core.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-editors-note.html', 'guide-2021-editors-note.html'), ('guide-2021-land-acknowledgement.html', 'guide-2021-land-acknowledgement.html')], required=False)), ('title', wagtail.core.blocks.CharBlock()), ('rich_text', wagtail.core.blocks.RichTextBlock())])), ('graphical_menu', wagtail.core.blocks.StructBlock([('template', wagtail.core.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-graphical-menu.html', 'guide-2021-graphical-menu.html')], required=False)), ('stream', wagtail.core.blocks.StreamBlock([('raw_html', wagtail.core.blocks.RawHTMLBlock()), ('rich_text', wagtail.core.blocks.RichTextBlock()), ('graphical_menu_item', wagtail.core.blocks.StructBlock([('template', wagtail.core.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-graphical-menu-item.html', 'guide-2021-graphical-menu-item.html')], required=False)), ('div_class_name', wagtail.core.blocks.CharBlock(default='box', max_length=255, required=True)), ('img_class_name', wagtail.core.blocks.CharBlock(default='photo_cover', max_length=255, required=True)), ('link', wagtail.core.blocks.URLBlock(required=True)), ('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('width', wagtail.core.blocks.IntegerBlock(required=False)), ('height', wagtail.core.blocks.IntegerBlock(required=False))]))]))])), ('child_articles', wagtail.core.blocks.StructBlock([]))], blank=True, null=True),
+ field=wagtail.fields.StreamField([('banner', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-banner.html', 'guide-2021-banner.html')], required=False)), ('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('title1', wagtail.blocks.CharBlock()), ('title2', wagtail.blocks.CharBlock()), ('credit', wagtail.blocks.CharBlock())])), ('credits', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-editorial-stream.html', 'guide-2021-editorial-stream.html')], required=False)), ('stream', wagtail.blocks.StreamBlock([('raw_html', wagtail.blocks.RawHTMLBlock()), ('rich_text', wagtail.blocks.RichTextBlock()), ('editor_credit', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-editor-credit.html', 'guide-2021-editor-credit.html')], required=False)), ('role', wagtail.blocks.CharBlock()), ('name', wagtail.blocks.CharBlock())]))]))])), ('image', wagtail.images.blocks.ImageChooserBlock()), ('note_with_header', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-editors-note.html', 'guide-2021-editors-note.html'), ('guide-2021-land-acknowledgement.html', 'guide-2021-land-acknowledgement.html')], required=False)), ('title', wagtail.blocks.CharBlock()), ('rich_text', wagtail.blocks.RichTextBlock())])), ('graphical_menu', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-graphical-menu.html', 'guide-2021-graphical-menu.html')], required=False)), ('stream', wagtail.blocks.StreamBlock([('raw_html', wagtail.blocks.RawHTMLBlock()), ('rich_text', wagtail.blocks.RichTextBlock()), ('graphical_menu_item', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-graphical-menu-item.html', 'guide-2021-graphical-menu-item.html')], required=False)), ('div_class_name', wagtail.blocks.CharBlock(default='box', max_length=255, required=True)), ('img_class_name', wagtail.blocks.CharBlock(default='photo_cover', max_length=255, required=True)), ('link', wagtail.blocks.URLBlock(required=True)), ('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('width', wagtail.blocks.IntegerBlock(required=False)), ('height', wagtail.blocks.IntegerBlock(required=False))]))]))])), ('child_articles', wagtail.blocks.StructBlock([]))], blank=True, null=True),
),
]
diff --git a/specialfeaturelanding/migrations/0016_alter_speciallandingpage_editorial_stream.py b/specialfeaturelanding/migrations/0016_alter_speciallandingpage_editorial_stream.py
index c435c7984..2b2f2e703 100644
--- a/specialfeaturelanding/migrations/0016_alter_speciallandingpage_editorial_stream.py
+++ b/specialfeaturelanding/migrations/0016_alter_speciallandingpage_editorial_stream.py
@@ -1,8 +1,8 @@
# Generated by Django 3.2.11 on 2022-09-17 05:35
from django.db import migrations
-import wagtail.core.blocks
-import wagtail.core.fields
+import wagtail.blocks
+import wagtail.fields
import wagtail.images.blocks
@@ -16,6 +16,6 @@ class Migration(migrations.Migration):
migrations.AlterField(
model_name='speciallandingpage',
name='editorial_stream',
- field=wagtail.core.fields.StreamField([('banner', wagtail.core.blocks.StructBlock([('template', wagtail.core.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-banner.html', 'guide-2021-banner.html')], required=False)), ('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('title1', wagtail.core.blocks.CharBlock()), ('title2', wagtail.core.blocks.CharBlock()), ('credit', wagtail.core.blocks.CharBlock())])), ('credits', wagtail.core.blocks.StructBlock([('template', wagtail.core.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-editorial-stream.html', 'guide-2021-editorial-stream.html')], required=False)), ('stream', wagtail.core.blocks.StreamBlock([('raw_html', wagtail.core.blocks.RawHTMLBlock()), ('rich_text', wagtail.core.blocks.RichTextBlock()), ('editor_credit', wagtail.core.blocks.StructBlock([('template', wagtail.core.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-editor-credit.html', 'guide-2021-editor-credit.html')], required=False)), ('role', wagtail.core.blocks.CharBlock()), ('name', wagtail.core.blocks.CharBlock())]))]))])), ('image', wagtail.images.blocks.ImageChooserBlock()), ('note_with_header', wagtail.core.blocks.StructBlock([('template', wagtail.core.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-editors-note.html', 'guide-2021-editors-note.html'), ('guide-2021-land-acknowledgement.html', 'guide-2021-land-acknowledgement.html')], required=False)), ('title', wagtail.core.blocks.CharBlock()), ('rich_text', wagtail.core.blocks.RichTextBlock())])), ('graphical_menu', wagtail.core.blocks.StructBlock([('template', wagtail.core.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-graphical-menu.html', 'guide-2021-graphical-menu.html')], required=False)), ('stream', wagtail.core.blocks.StreamBlock([('raw_html', wagtail.core.blocks.RawHTMLBlock()), ('rich_text', wagtail.core.blocks.RichTextBlock()), ('graphical_menu_item', wagtail.core.blocks.StructBlock([('template', wagtail.core.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-graphical-menu-item.html', 'guide-2021-graphical-menu-item.html')], required=False)), ('div_class_name', wagtail.core.blocks.CharBlock(default='box', max_length=255, required=True)), ('img_class_name', wagtail.core.blocks.CharBlock(default='photo_cover', max_length=255, required=True)), ('link', wagtail.core.blocks.URLBlock(required=True)), ('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('width', wagtail.core.blocks.IntegerBlock(required=False)), ('height', wagtail.core.blocks.IntegerBlock(required=False))]))]))])), ('child_articles', wagtail.core.blocks.StructBlock([])), ('flex_stream', wagtail.core.blocks.StructBlock([('template', wagtail.core.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('2022-div-stream-block.html', '2022-div-stream-block.html')], required=False)), ('class_selector', wagtail.core.blocks.CharBlock()), ('stream', wagtail.core.blocks.StreamBlock([('raw_html', wagtail.core.blocks.RawHTMLBlock()), ('rich_text', wagtail.core.blocks.RichTextBlock()), ('image', wagtail.images.blocks.ImageChooserBlock())]))]))], blank=True, null=True),
+ field=wagtail.fields.StreamField([('banner', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-banner.html', 'guide-2021-banner.html')], required=False)), ('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('title1', wagtail.blocks.CharBlock()), ('title2', wagtail.blocks.CharBlock()), ('credit', wagtail.blocks.CharBlock())])), ('credits', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-editorial-stream.html', 'guide-2021-editorial-stream.html')], required=False)), ('stream', wagtail.blocks.StreamBlock([('raw_html', wagtail.blocks.RawHTMLBlock()), ('rich_text', wagtail.blocks.RichTextBlock()), ('editor_credit', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-editor-credit.html', 'guide-2021-editor-credit.html')], required=False)), ('role', wagtail.blocks.CharBlock()), ('name', wagtail.blocks.CharBlock())]))]))])), ('image', wagtail.images.blocks.ImageChooserBlock()), ('note_with_header', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-editors-note.html', 'guide-2021-editors-note.html'), ('guide-2021-land-acknowledgement.html', 'guide-2021-land-acknowledgement.html')], required=False)), ('title', wagtail.blocks.CharBlock()), ('rich_text', wagtail.blocks.RichTextBlock())])), ('graphical_menu', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-graphical-menu.html', 'guide-2021-graphical-menu.html')], required=False)), ('stream', wagtail.blocks.StreamBlock([('raw_html', wagtail.blocks.RawHTMLBlock()), ('rich_text', wagtail.blocks.RichTextBlock()), ('graphical_menu_item', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-graphical-menu-item.html', 'guide-2021-graphical-menu-item.html')], required=False)), ('div_class_name', wagtail.blocks.CharBlock(default='box', max_length=255, required=True)), ('img_class_name', wagtail.blocks.CharBlock(default='photo_cover', max_length=255, required=True)), ('link', wagtail.blocks.URLBlock(required=True)), ('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('width', wagtail.blocks.IntegerBlock(required=False)), ('height', wagtail.blocks.IntegerBlock(required=False))]))]))])), ('child_articles', wagtail.blocks.StructBlock([])), ('flex_stream', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('2022-div-stream-block.html', '2022-div-stream-block.html')], required=False)), ('class_selector', wagtail.blocks.CharBlock()), ('stream', wagtail.blocks.StreamBlock([('raw_html', wagtail.blocks.RawHTMLBlock()), ('rich_text', wagtail.blocks.RichTextBlock()), ('image', wagtail.images.blocks.ImageChooserBlock())]))]))], blank=True, null=True),
),
]
diff --git a/specialfeaturelanding/migrations/0017_alter_speciallandingpage_editorial_stream.py b/specialfeaturelanding/migrations/0017_alter_speciallandingpage_editorial_stream.py
index 611332c5d..e8b0253b6 100644
--- a/specialfeaturelanding/migrations/0017_alter_speciallandingpage_editorial_stream.py
+++ b/specialfeaturelanding/migrations/0017_alter_speciallandingpage_editorial_stream.py
@@ -1,8 +1,8 @@
# Generated by Django 3.2.11 on 2022-09-17 09:21
from django.db import migrations
-import wagtail.core.blocks
-import wagtail.core.fields
+import wagtail.blocks
+import wagtail.fields
import wagtail.images.blocks
@@ -16,6 +16,6 @@ class Migration(migrations.Migration):
migrations.AlterField(
model_name='speciallandingpage',
name='editorial_stream',
- field=wagtail.core.fields.StreamField([('banner', wagtail.core.blocks.StructBlock([('template', wagtail.core.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-banner.html', 'guide-2021-banner.html')], required=False)), ('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('title1', wagtail.core.blocks.CharBlock()), ('title2', wagtail.core.blocks.CharBlock()), ('credit', wagtail.core.blocks.CharBlock())])), ('credits', wagtail.core.blocks.StructBlock([('template', wagtail.core.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-editorial-stream.html', 'guide-2021-editorial-stream.html')], required=False)), ('stream', wagtail.core.blocks.StreamBlock([('raw_html', wagtail.core.blocks.RawHTMLBlock()), ('rich_text', wagtail.core.blocks.RichTextBlock()), ('editor_credit', wagtail.core.blocks.StructBlock([('template', wagtail.core.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-editor-credit.html', 'guide-2021-editor-credit.html')], required=False)), ('role', wagtail.core.blocks.CharBlock()), ('name', wagtail.core.blocks.CharBlock())]))]))])), ('image', wagtail.images.blocks.ImageChooserBlock()), ('note_with_header', wagtail.core.blocks.StructBlock([('template', wagtail.core.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-editors-note.html', 'guide-2021-editors-note.html'), ('guide-2021-land-acknowledgement.html', 'guide-2021-land-acknowledgement.html')], required=False)), ('title', wagtail.core.blocks.CharBlock()), ('rich_text', wagtail.core.blocks.RichTextBlock())])), ('graphical_menu', wagtail.core.blocks.StructBlock([('template', wagtail.core.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-graphical-menu.html', 'guide-2021-graphical-menu.html')], required=False)), ('stream', wagtail.core.blocks.StreamBlock([('raw_html', wagtail.core.blocks.RawHTMLBlock()), ('rich_text', wagtail.core.blocks.RichTextBlock()), ('graphical_menu_item', wagtail.core.blocks.StructBlock([('template', wagtail.core.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-graphical-menu-item.html', 'guide-2021-graphical-menu-item.html')], required=False)), ('div_class_name', wagtail.core.blocks.CharBlock(default='box', max_length=255, required=True)), ('img_class_name', wagtail.core.blocks.CharBlock(default='photo_cover', max_length=255, required=True)), ('link', wagtail.core.blocks.URLBlock(required=True)), ('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('width', wagtail.core.blocks.IntegerBlock(required=False)), ('height', wagtail.core.blocks.IntegerBlock(required=False))]))]))])), ('child_articles', wagtail.core.blocks.StructBlock([])), ('flex_stream', wagtail.core.blocks.StructBlock([('template', wagtail.core.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('2022-div-stream-block.html', '2022-div-stream-block.html')], required=False)), ('class_selector', wagtail.core.blocks.CharBlock()), ('stream', wagtail.core.blocks.StreamBlock([('raw_html', wagtail.core.blocks.RawHTMLBlock()), ('rich_text', wagtail.core.blocks.RichTextBlock()), ('image', wagtail.images.blocks.ImageChooserBlock()), ('rendition', wagtail.core.blocks.StructBlock([('template', wagtail.core.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('rendition-fill-1200x1000.html', 'rendition-fill-1200x1000.html')], required=False)), ('image', wagtail.images.blocks.ImageChooserBlock())]))]))]))], blank=True, null=True),
+ field=wagtail.fields.StreamField([('banner', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-banner.html', 'guide-2021-banner.html')], required=False)), ('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('title1', wagtail.blocks.CharBlock()), ('title2', wagtail.blocks.CharBlock()), ('credit', wagtail.blocks.CharBlock())])), ('credits', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-editorial-stream.html', 'guide-2021-editorial-stream.html')], required=False)), ('stream', wagtail.blocks.StreamBlock([('raw_html', wagtail.blocks.RawHTMLBlock()), ('rich_text', wagtail.blocks.RichTextBlock()), ('editor_credit', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-editor-credit.html', 'guide-2021-editor-credit.html')], required=False)), ('role', wagtail.blocks.CharBlock()), ('name', wagtail.blocks.CharBlock())]))]))])), ('image', wagtail.images.blocks.ImageChooserBlock()), ('note_with_header', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-editors-note.html', 'guide-2021-editors-note.html'), ('guide-2021-land-acknowledgement.html', 'guide-2021-land-acknowledgement.html')], required=False)), ('title', wagtail.blocks.CharBlock()), ('rich_text', wagtail.blocks.RichTextBlock())])), ('graphical_menu', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-graphical-menu.html', 'guide-2021-graphical-menu.html')], required=False)), ('stream', wagtail.blocks.StreamBlock([('raw_html', wagtail.blocks.RawHTMLBlock()), ('rich_text', wagtail.blocks.RichTextBlock()), ('graphical_menu_item', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-graphical-menu-item.html', 'guide-2021-graphical-menu-item.html')], required=False)), ('div_class_name', wagtail.blocks.CharBlock(default='box', max_length=255, required=True)), ('img_class_name', wagtail.blocks.CharBlock(default='photo_cover', max_length=255, required=True)), ('link', wagtail.blocks.URLBlock(required=True)), ('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('width', wagtail.blocks.IntegerBlock(required=False)), ('height', wagtail.blocks.IntegerBlock(required=False))]))]))])), ('child_articles', wagtail.blocks.StructBlock([])), ('flex_stream', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('2022-div-stream-block.html', '2022-div-stream-block.html')], required=False)), ('class_selector', wagtail.blocks.CharBlock()), ('stream', wagtail.blocks.StreamBlock([('raw_html', wagtail.blocks.RawHTMLBlock()), ('rich_text', wagtail.blocks.RichTextBlock()), ('image', wagtail.images.blocks.ImageChooserBlock()), ('rendition', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('rendition-fill-1200x1000.html', 'rendition-fill-1200x1000.html')], required=False)), ('image', wagtail.images.blocks.ImageChooserBlock())]))]))]))], blank=True, null=True),
),
]
diff --git a/specialfeaturelanding/migrations/0019_alter_speciallandingpage_editorial_stream.py b/specialfeaturelanding/migrations/0019_alter_speciallandingpage_editorial_stream.py
index e78cabe1b..9d198e568 100644
--- a/specialfeaturelanding/migrations/0019_alter_speciallandingpage_editorial_stream.py
+++ b/specialfeaturelanding/migrations/0019_alter_speciallandingpage_editorial_stream.py
@@ -1,8 +1,8 @@
# Generated by Django 3.2.11 on 2023-03-03 08:41
from django.db import migrations
-import wagtail.core.blocks
-import wagtail.core.fields
+import wagtail.blocks
+import wagtail.fields
import wagtail.images.blocks
@@ -16,6 +16,6 @@ class Migration(migrations.Migration):
migrations.AlterField(
model_name='speciallandingpage',
name='editorial_stream',
- field=wagtail.core.fields.StreamField([('banner', wagtail.core.blocks.StructBlock([('template', wagtail.core.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-banner.html', 'guide-2021-banner.html'), ('textless_banner_block.html', 'textless_banner_block.html')], required=False)), ('class_selector', wagtail.core.blocks.CharBlock(required=False)), ('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('title1', wagtail.core.blocks.CharBlock(required=False)), ('title2', wagtail.core.blocks.CharBlock(required=False)), ('credit', wagtail.core.blocks.CharBlock(required=False))])), ('credits', wagtail.core.blocks.StructBlock([('template', wagtail.core.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-editorial-stream.html', 'guide-2021-editorial-stream.html')], required=False)), ('stream', wagtail.core.blocks.StreamBlock([('raw_html', wagtail.core.blocks.RawHTMLBlock()), ('rich_text', wagtail.core.blocks.RichTextBlock()), ('editor_credit', wagtail.core.blocks.StructBlock([('template', wagtail.core.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-editor-credit.html', 'guide-2021-editor-credit.html')], required=False)), ('role', wagtail.core.blocks.CharBlock()), ('name', wagtail.core.blocks.CharBlock())]))]))])), ('image', wagtail.images.blocks.ImageChooserBlock()), ('note_with_header', wagtail.core.blocks.StructBlock([('template', wagtail.core.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-editors-note.html', 'guide-2021-editors-note.html'), ('guide-2021-land-acknowledgement.html', 'guide-2021-land-acknowledgement.html')], required=False)), ('title', wagtail.core.blocks.CharBlock()), ('rich_text', wagtail.core.blocks.RichTextBlock())])), ('graphical_menu', wagtail.core.blocks.StructBlock([('template', wagtail.core.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-graphical-menu.html', 'guide-2021-graphical-menu.html')], required=False)), ('stream', wagtail.core.blocks.StreamBlock([('raw_html', wagtail.core.blocks.RawHTMLBlock()), ('rich_text', wagtail.core.blocks.RichTextBlock()), ('graphical_menu_item', wagtail.core.blocks.StructBlock([('template', wagtail.core.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-graphical-menu-item.html', 'guide-2021-graphical-menu-item.html')], required=False)), ('div_class_name', wagtail.core.blocks.CharBlock(default='box', max_length=255, required=True)), ('img_class_name', wagtail.core.blocks.CharBlock(default='photo_cover', max_length=255, required=True)), ('link', wagtail.core.blocks.URLBlock(required=True)), ('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('width', wagtail.core.blocks.IntegerBlock(required=False)), ('height', wagtail.core.blocks.IntegerBlock(required=False))]))]))])), ('child_articles', wagtail.core.blocks.StructBlock([])), ('flex_stream', wagtail.core.blocks.StructBlock([('template', wagtail.core.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('2022-div-stream-block.html', '2022-div-stream-block.html')], required=False)), ('class_selector', wagtail.core.blocks.CharBlock()), ('stream', wagtail.core.blocks.StreamBlock([('raw_html', wagtail.core.blocks.RawHTMLBlock()), ('rich_text', wagtail.core.blocks.RichTextBlock()), ('image', wagtail.images.blocks.ImageChooserBlock()), ('rendition', wagtail.core.blocks.StructBlock([('template', wagtail.core.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('rendition-fill-1200x1000.html', 'rendition-fill-1200x1000.html')], required=False)), ('image', wagtail.images.blocks.ImageChooserBlock())])), ('card', wagtail.core.blocks.StructBlock([('template', wagtail.core.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('mag_2023_card.html', 'mag_2023_card.html')], required=False)), ('class_name', wagtail.core.blocks.CharBlock(required=True)), ('card_title', wagtail.core.blocks.CharBlock(help_text='Add your title', required=True)), ('card_credit', wagtail.core.blocks.CharBlock(help_text='Credit Author', required=True)), ('card_image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('card_page', wagtail.core.blocks.PageChooserBlock(required=True))]))]))]))], blank=True, null=True),
+ field=wagtail.fields.StreamField([('banner', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-banner.html', 'guide-2021-banner.html'), ('textless_banner_block.html', 'textless_banner_block.html')], required=False)), ('class_selector', wagtail.blocks.CharBlock(required=False)), ('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('title1', wagtail.blocks.CharBlock(required=False)), ('title2', wagtail.blocks.CharBlock(required=False)), ('credit', wagtail.blocks.CharBlock(required=False))])), ('credits', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-editorial-stream.html', 'guide-2021-editorial-stream.html')], required=False)), ('stream', wagtail.blocks.StreamBlock([('raw_html', wagtail.blocks.RawHTMLBlock()), ('rich_text', wagtail.blocks.RichTextBlock()), ('editor_credit', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-editor-credit.html', 'guide-2021-editor-credit.html')], required=False)), ('role', wagtail.blocks.CharBlock()), ('name', wagtail.blocks.CharBlock())]))]))])), ('image', wagtail.images.blocks.ImageChooserBlock()), ('note_with_header', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-editors-note.html', 'guide-2021-editors-note.html'), ('guide-2021-land-acknowledgement.html', 'guide-2021-land-acknowledgement.html')], required=False)), ('title', wagtail.blocks.CharBlock()), ('rich_text', wagtail.blocks.RichTextBlock())])), ('graphical_menu', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-graphical-menu.html', 'guide-2021-graphical-menu.html')], required=False)), ('stream', wagtail.blocks.StreamBlock([('raw_html', wagtail.blocks.RawHTMLBlock()), ('rich_text', wagtail.blocks.RichTextBlock()), ('graphical_menu_item', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-graphical-menu-item.html', 'guide-2021-graphical-menu-item.html')], required=False)), ('div_class_name', wagtail.blocks.CharBlock(default='box', max_length=255, required=True)), ('img_class_name', wagtail.blocks.CharBlock(default='photo_cover', max_length=255, required=True)), ('link', wagtail.blocks.URLBlock(required=True)), ('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('width', wagtail.blocks.IntegerBlock(required=False)), ('height', wagtail.blocks.IntegerBlock(required=False))]))]))])), ('child_articles', wagtail.blocks.StructBlock([])), ('flex_stream', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('2022-div-stream-block.html', '2022-div-stream-block.html')], required=False)), ('class_selector', wagtail.blocks.CharBlock()), ('stream', wagtail.blocks.StreamBlock([('raw_html', wagtail.blocks.RawHTMLBlock()), ('rich_text', wagtail.blocks.RichTextBlock()), ('image', wagtail.images.blocks.ImageChooserBlock()), ('rendition', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('rendition-fill-1200x1000.html', 'rendition-fill-1200x1000.html')], required=False)), ('image', wagtail.images.blocks.ImageChooserBlock())])), ('card', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('mag_2023_card.html', 'mag_2023_card.html')], required=False)), ('class_name', wagtail.blocks.CharBlock(required=True)), ('card_title', wagtail.blocks.CharBlock(help_text='Add your title', required=True)), ('card_credit', wagtail.blocks.CharBlock(help_text='Credit Author', required=True)), ('card_image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('card_page', wagtail.blocks.PageChooserBlock(required=True))]))]))]))], blank=True, null=True),
),
]
diff --git a/specialfeaturelanding/migrations/0023_auto_20230815_2248.py b/specialfeaturelanding/migrations/0023_auto_20230815_2248.py
new file mode 100644
index 000000000..260b9cb77
--- /dev/null
+++ b/specialfeaturelanding/migrations/0023_auto_20230815_2248.py
@@ -0,0 +1,31 @@
+# Generated by Django 3.2.11 on 2023-08-16 05:48
+
+from django.db import migrations
+import wagtail.blocks
+import wagtail.fields
+import wagtail.images.blocks
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('specialfeaturelanding', '0022_alter_speciallandingpage_featured_media'),
+ ]
+
+ operations = [
+ migrations.AlterField(
+ model_name='speciallandingpage',
+ name='content',
+ field=wagtail.fields.StreamField([('quote', wagtail.blocks.StructBlock([('quote', wagtail.blocks.RichTextBlock(required=False)), ('source', wagtail.blocks.CharBlock(max_length=255, required=False)), ('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('template', wagtail.blocks.ChoiceBlock(choices=[('guide-2020', '"Guide 2020"-Style Panel Quote')])), ('class_name', wagtail.blocks.CharBlock(default='panel-quote __1', max_length=255, required=True))], label='Quote Block')), ('stylecta', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock(max_length=255, required=True)), ('richcontent', wagtail.blocks.RichTextBlock(required=False)), ('htmlcontent', wagtail.blocks.RawHTMLBlock(required=False)), ('use_richtext', wagtail.blocks.BooleanBlock(default=False, required=False)), ('link', wagtail.blocks.PageChooserBlock(required=True)), ('link_text', wagtail.blocks.CharBlock(max_length=255, required=True)), ('class_name', wagtail.blocks.CharBlock(max_length=255, required=True)), ('template', wagtail.blocks.ChoiceBlock(choices=[('guide-2020', '"Guide 2020"-Style CTA')]))], label='Custom Styling CTA'))], blank=True, null=True, use_json_field=True),
+ ),
+ migrations.AlterField(
+ model_name='speciallandingpage',
+ name='editorial_stream',
+ field=wagtail.fields.StreamField([('banner', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-banner.html', 'guide-2021-banner.html'), ('textless_banner_block.html', 'textless_banner_block.html')], required=False)), ('class_selector', wagtail.blocks.CharBlock(required=False)), ('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('title1', wagtail.blocks.CharBlock(required=False)), ('title2', wagtail.blocks.CharBlock(required=False)), ('credit', wagtail.blocks.CharBlock(required=False))])), ('credits', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-editorial-stream.html', 'guide-2021-editorial-stream.html')], required=False)), ('stream', wagtail.blocks.StreamBlock([('raw_html', wagtail.blocks.RawHTMLBlock()), ('rich_text', wagtail.blocks.RichTextBlock()), ('editor_credit', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-editor-credit.html', 'guide-2021-editor-credit.html')], required=False)), ('role', wagtail.blocks.CharBlock()), ('name', wagtail.blocks.CharBlock())]))]))])), ('image', wagtail.images.blocks.ImageChooserBlock()), ('note_with_header', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-editors-note.html', 'guide-2021-editors-note.html'), ('guide-2021-land-acknowledgement.html', 'guide-2021-land-acknowledgement.html')], required=False)), ('title', wagtail.blocks.CharBlock()), ('rich_text', wagtail.blocks.RichTextBlock())])), ('graphical_menu', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-graphical-menu.html', 'guide-2021-graphical-menu.html')], required=False)), ('stream', wagtail.blocks.StreamBlock([('raw_html', wagtail.blocks.RawHTMLBlock()), ('rich_text', wagtail.blocks.RichTextBlock()), ('graphical_menu_item', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('guide-2021-graphical-menu-item.html', 'guide-2021-graphical-menu-item.html')], required=False)), ('div_class_name', wagtail.blocks.CharBlock(default='box', max_length=255, required=True)), ('img_class_name', wagtail.blocks.CharBlock(default='photo_cover', max_length=255, required=True)), ('link', wagtail.blocks.URLBlock(required=True)), ('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('width', wagtail.blocks.IntegerBlock(required=False)), ('height', wagtail.blocks.IntegerBlock(required=False))]))]))])), ('child_articles', wagtail.blocks.StructBlock([])), ('flex_stream', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('2022-div-stream-block.html', '2022-div-stream-block.html')], required=False)), ('class_selector', wagtail.blocks.CharBlock()), ('stream', wagtail.blocks.StreamBlock([('raw_html', wagtail.blocks.RawHTMLBlock()), ('rich_text', wagtail.blocks.RichTextBlock()), ('image', wagtail.images.blocks.ImageChooserBlock()), ('rendition', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('rendition-fill-1200x1000.html', 'rendition-fill-1200x1000.html')], required=False)), ('image', wagtail.images.blocks.ImageChooserBlock())])), ('card', wagtail.blocks.StructBlock([('template', wagtail.blocks.ChoiceBlock(choices=[('', 'Wagtail default'), ('mag_2023_card.html', 'mag_2023_card.html')], required=False)), ('class_name', wagtail.blocks.CharBlock(required=True)), ('card_title', wagtail.blocks.CharBlock(help_text='Add your title', required=True)), ('card_credit', wagtail.blocks.CharBlock(help_text='Credit Author', required=True)), ('card_image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('card_page', wagtail.blocks.PageChooserBlock(required=True))]))]))]))], blank=True, null=True, use_json_field=True),
+ ),
+ migrations.AlterField(
+ model_name='speciallandingpage',
+ name='graphical_menu',
+ field=wagtail.fields.StreamField([('menu_item', wagtail.blocks.StructBlock([('class_name', wagtail.blocks.CharBlock(default='class', max_length=255, required=True)), ('text', wagtail.blocks.CharBlock(default='text', max_length=255, required=True))], label='Text'))], blank=True, null=True, use_json_field=True),
+ ),
+ ]
diff --git a/specialfeaturelanding/models.py b/specialfeaturelanding/models.py
index 26461f21c..2f1fd29a8 100644
--- a/specialfeaturelanding/models.py
+++ b/specialfeaturelanding/models.py
@@ -10,7 +10,7 @@
from section.sectionable.models import SectionablePage
-from wagtail.admin.edit_handlers import (
+from wagtail.admin.panels import (
FieldPanel,
MultiFieldPanel,
InlinePanel,
@@ -20,9 +20,9 @@
from modelcluster.fields import ParentalKey
-from wagtail.core import blocks
-from wagtail.core.models import Page, Orderable
-from wagtail.core.fields import StreamField
+from wagtail import blocks
+from wagtail.models import Page, Orderable
+from wagtail.fields import StreamField
from wagtail.images.blocks import ImageChooserBlock
from wagtail.snippets.edit_handlers import SnippetChooserPanel
from wagtail.images.edit_handlers import ImageChooserPanel
@@ -113,6 +113,7 @@ def get_template(self, request):
],
null=True,
blank=True,
+ use_json_field=True,
)
content = StreamField(
@@ -126,6 +127,7 @@ def get_template(self, request):
],
null=True,
blank=True,
+ use_json_field=True,
)
graphical_menu = StreamField(
@@ -139,6 +141,7 @@ def get_template(self, request):
],
null=True,
blank=True,
+ use_json_field=True,
)
featured_media = models.ForeignKey(
@@ -163,14 +166,14 @@ def get_template(self, request):
# HelpPanel(
# content='
TODO
Write something here
'
# ),
- # StreamFieldPanel("content"),
+ # FieldPanel("content"),
# ],
# heading="Article Content",
# classname="collapsible",
# ),
MultiFieldPanel(
[
- StreamFieldPanel("editorial_stream"),
+ FieldPanel("editorial_stream"),
],
heading="Editorial Content"
),
@@ -187,7 +190,7 @@ def get_template(self, request):
),
MultiFieldPanel(
[
- SnippetChooserPanel("category"),
+ FieldPanel("category"),
],
heading="Categories",
classname="collapsible",
diff --git a/specialfeaturelanding/snippets.py b/specialfeaturelanding/snippets.py
index 33c9fa6be..9df61a26e 100644
--- a/specialfeaturelanding/snippets.py
+++ b/specialfeaturelanding/snippets.py
@@ -3,7 +3,7 @@
from django.db import models
from django.db.models.fields.related import ForeignKey
-from wagtail.admin.edit_handlers import FieldPanel
+from wagtail.admin.panels import FieldPanel
from wagtail.snippets.models import register_snippet
@register_snippet
diff --git a/ubyssey/static_src/src/styles/modules/article/_base.scss b/ubyssey/static_src/src/styles/modules/article/_base.scss
index b60563528..4a62c4252 100644
--- a/ubyssey/static_src/src/styles/modules/article/_base.scss
+++ b/ubyssey/static_src/src/styles/modules/article/_base.scss
@@ -197,8 +197,6 @@ div.indicator {
font-style: bold;
color: var(--authors-title-bio);
text-align: left;
- text-transform: capitalize;
-
&:hover {
color: $color-accent-blue;
diff --git a/ubyssey/static_src/src/styles/objects/_article.scss b/ubyssey/static_src/src/styles/objects/_article.scss
index 84802678c..a04549c7a 100644
--- a/ubyssey/static_src/src/styles/objects/_article.scss
+++ b/ubyssey/static_src/src/styles/objects/_article.scss
@@ -173,6 +173,10 @@
line-height: 3rem;
left: 0.5em;
}
+ .o-article__image {
+ min-height: 400px;
+ max-height: 600px;
+ }
}
@media($bp-smaller-than-phablet) {
@@ -187,6 +191,22 @@
left: 20px;
}
}
+ .o-article__image {
+ min-height: 200px;
+ max-height: 300px;
+ }
+ }
+
+ .o-article__image {
+ width: 100%;
+ display: flex;
+ background-color: black;
+ clip-path: inset(0% 0% 0% 0%);
+
+ img {
+ margin: auto;
+ max-height: 100%;
+ }
}
.o-article__right {
diff --git a/ubyssey/urls.py b/ubyssey/urls.py
index a9b69091b..8c1c465c5 100644
--- a/ubyssey/urls.py
+++ b/ubyssey/urls.py
@@ -5,7 +5,7 @@
from django.views import defaults as default_views
from wagtail.admin import urls as wagtailadmin_urls
-from wagtail.core import urls as wagtail_urls
+from wagtail import urls as wagtail_urls
from wagtail.documents import urls as wagtaildocs_urls
from ubyssey.views.main import ads_txt, redirect_blog_to_humour
diff --git a/videos/blocks.py b/videos/blocks.py
index 17dcd2d64..c7aed1bc3 100644
--- a/videos/blocks.py
+++ b/videos/blocks.py
@@ -1,4 +1,4 @@
-from wagtail.core import blocks
+from wagtail import blocks
from wagtail.embeds import blocks as embed_blocks
class OneOffVideoBlock(blocks.StructBlock):
diff --git a/videos/models.py b/videos/models.py
index 40c9dec7b..b884c66ed 100644
--- a/videos/models.py
+++ b/videos/models.py
@@ -15,8 +15,8 @@
from ubyssey.validators import validate_youtube_url
from wagtail.snippets.edit_handlers import SnippetChooserPanel
-from wagtail.admin.edit_handlers import FieldPanel, InlinePanel, MultiFieldPanel, PageChooserPanel
-from wagtail.core.models import Orderable, Page
+from wagtail.admin.panels import FieldPanel, InlinePanel, MultiFieldPanel, PageChooserPanel
+from wagtail.models import Orderable, Page
from wagtail.snippets.models import register_snippet
from wagtail.search import index
@@ -43,7 +43,7 @@ class VideoAuthorsOrderable(Orderable):
panels = [
MultiFieldPanel(
[
- PageChooserPanel("author"),
+ FieldPanel("author"),
],
heading="Author",
),