def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) self.fields['page_chooser'].widget = AdminPageChooser() self.fields['image_chooser'].widget = AdminImageChooser() self.fields['document_chooser'].widget = AdminDocumentChooser() self.fields['snippet_chooser'].widget = AdminSnippetChooser(Page) self.fields['date'].widget = AdminDateInput() self.fields['time'].widget = AdminTimeInput() self.fields['datetime'].widget = AdminDateTimeInput() self.fields['auto_height_text'].widget = AdminAutoHeightTextInput() self.fields['default_rich_text'].widget = get_rich_text_editor_widget('default')
def rich_text(value, editor='default', features=None): """ Converts an HTML-like rich text string to the data format required by the currently active rich text editor. :param editor: An alternative editor name as defined in ``WAGTAILADMIN_RICH_TEXT_EDITORS`` :param features: A list of features allowed in the rich text content (see :ref:`rich_text_features`) .. code-block:: python self.assertCanCreate(root_page, ContentPage, nested_form_data({ 'title': 'About us', 'body': rich_text('<p>Lorem ipsum dolor sit amet</p>'), })) """ widget = get_rich_text_editor_widget(editor, features) return widget.format_value(value)
def test_custom_editor_with_default(self): self.assertIsInstance(get_rich_text_editor_widget(), HalloRichTextArea) self.assertIsInstance(get_rich_text_editor_widget('custom'), CustomRichTextArea)
def test_overridden_default_editor(self): self.assertIsInstance(get_rich_text_editor_widget(), CustomRichTextArea)
def test_default(self): # Simulate the absence of a setting if hasattr(settings, 'WAGTAILADMIN_RICH_TEXT_EDITORS'): del settings.WAGTAILADMIN_RICH_TEXT_EDITORS self.assertIsInstance(get_rich_text_editor_widget(), DraftailRichTextArea)
def formfield(self, **kwargs): from wagtail.admin.rich_text import get_rich_text_editor_widget defaults = {'widget': get_rich_text_editor_widget(self.editor, features=self.features)} defaults.update(kwargs) return super().formfield(**defaults)
def field(self): from wagtail.admin.rich_text import get_rich_text_editor_widget return forms.CharField( widget=get_rich_text_editor_widget(self.editor, features=self.features), **self.field_options )
def test_custom_editor_without_default(self): self.assertIsInstance(get_rich_text_editor_widget('custom'), CustomRichTextArea)
def field(self): from wagtail.admin.rich_text import get_rich_text_editor_widget return forms.CharField( widget=get_rich_text_editor_widget(self.editor, features=self.features), **self.field_options )
def test_overridden_default_editor(self): self.assertIsInstance(get_rich_text_editor_widget(), CustomRichTextArea)
def test_custom_editor_with_default(self): self.assertIsInstance(get_rich_text_editor_widget(), LegacyRichTextArea) self.assertIsInstance(get_rich_text_editor_widget("custom"), CustomRichTextArea)
def test_custom_editor_without_default(self): self.assertIsInstance(get_rich_text_editor_widget(), DraftailRichTextArea) self.assertIsInstance(get_rich_text_editor_widget("custom"), CustomRichTextArea)
def formfield(self, **kwargs): from wagtail.admin.rich_text import get_rich_text_editor_widget defaults = {'widget': get_rich_text_editor_widget(self.editor, features=self.features)} defaults.update(kwargs) return super().formfield(**defaults)
def test_default(self): # Simulate the absence of a setting if hasattr(settings, 'WAGTAILADMIN_RICH_TEXT_EDITORS'): del settings.WAGTAILADMIN_RICH_TEXT_EDITORS self.assertIsInstance(get_rich_text_editor_widget(), DraftailRichTextArea)
def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) self.fields['photo'].widget = image_widget self.fields['bio'].widget = get_rich_text_editor_widget('default') self.fields['short_bio'].widget = get_rich_text_editor_widget( 'default')