Files
old-saburly-wagtail-web/home/models.py

47 lines
1.5 KiB
Python
Raw Normal View History

2024-08-27 20:33:44 +02:00
from __future__ import unicode_literals
from django.db import models
2024-09-16 20:16:16 +02:00
from wagtail.models import Page, Orderable
2024-08-27 20:33:44 +02:00
from wagtail.fields import RichTextField
2024-09-16 20:16:16 +02:00
from wagtail.admin.panels import FieldPanel, MultiFieldPanel, InlinePanel
from modelcluster.models import ParentalKey
2024-08-27 20:33:44 +02:00
2024-09-11 23:05:33 +02:00
from saburly.custom_editor import FULL_EDITOR
2024-08-27 20:33:44 +02:00
class HomePage(Page):
2024-09-16 20:16:16 +02:00
intro_title = RichTextField(blank=True, features=FULL_EDITOR)
intro_text = RichTextField(blank=True, features=FULL_EDITOR)
intro_image = RichTextField(blank=True, features=FULL_EDITOR)
2024-09-10 20:21:33 +02:00
2024-08-27 20:33:44 +02:00
content_panels = Page.content_panels + [
2024-09-10 20:21:33 +02:00
MultiFieldPanel([
2024-09-16 20:16:16 +02:00
FieldPanel('intro_title', classname="full"),
FieldPanel('intro_text', classname="full"),
FieldPanel('intro_image', classname="full"),
], heading="Intro Section"),
InlinePanel('homepage_sections', heading="Sections Home", label="Sections Home"),
2024-09-10 20:21:33 +02:00
2024-09-16 20:16:16 +02:00
]
2024-09-10 20:21:33 +02:00
2024-09-16 20:16:16 +02:00
class HomePageSections(Orderable):
page = ParentalKey(HomePage, on_delete=models.CASCADE, related_name='homepage_sections')
section_title = RichTextField(blank=True, features=FULL_EDITOR)
section_text = RichTextField(blank=True, features=FULL_EDITOR)
section_image = models.ForeignKey(
'wagtailimages.Image',
null=True,
blank=True,
on_delete=models.SET_NULL,
related_name='+'
)
panels = [
FieldPanel('section_title'),
FieldPanel('section_text'),
FieldPanel('section_image'),
2024-09-10 20:21:33 +02:00
]