wagtail 6.2.3__py3-none-any.whl → 6.3__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- wagtail/__init__.py +1 -1
- wagtail/actions/copy_for_translation.py +6 -0
- wagtail/actions/publish_revision.py +3 -3
- wagtail/admin/action_menu.py +5 -3
- wagtail/admin/forms/account.py +1 -1
- wagtail/admin/icons.py +2 -6
- wagtail/admin/locale/ar/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/ar/LC_MESSAGES/django.po +16 -35
- wagtail/admin/locale/az_AZ/LC_MESSAGES/django.po +1 -1
- wagtail/admin/locale/be/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/be/LC_MESSAGES/django.po +16 -26
- wagtail/admin/locale/bg/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/bg/LC_MESSAGES/django.po +7 -11
- wagtail/admin/locale/bn/LC_MESSAGES/django.po +1 -1
- wagtail/admin/locale/ca/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/ca/LC_MESSAGES/django.po +87 -109
- wagtail/admin/locale/cs/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/cs/LC_MESSAGES/django.po +35 -68
- wagtail/admin/locale/cy/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/cy/LC_MESSAGES/django.po +45 -16
- wagtail/admin/locale/da/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/da/LC_MESSAGES/django.po +6 -16
- wagtail/admin/locale/de/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/de/LC_MESSAGES/django.po +91 -113
- wagtail/admin/locale/dv/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/dv/LC_MESSAGES/django.po +72 -86
- wagtail/admin/locale/el/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/el/LC_MESSAGES/django.po +21 -37
- wagtail/admin/locale/en/LC_MESSAGES/django.po +451 -485
- wagtail/admin/locale/en/LC_MESSAGES/djangojs.po +7 -7
- wagtail/admin/locale/es/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/es/LC_MESSAGES/django.po +41 -83
- wagtail/admin/locale/es_419/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/es_419/LC_MESSAGES/django.po +4 -7
- wagtail/admin/locale/es_VE/LC_MESSAGES/django.po +1 -1
- wagtail/admin/locale/et/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/et/LC_MESSAGES/django.po +28 -55
- wagtail/admin/locale/eu/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/eu/LC_MESSAGES/django.po +7 -11
- wagtail/admin/locale/fa/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/fa/LC_MESSAGES/django.po +33 -64
- wagtail/admin/locale/fi/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/fi/LC_MESSAGES/django.po +109 -93
- wagtail/admin/locale/fr/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/fr/LC_MESSAGES/django.po +94 -117
- wagtail/admin/locale/fr/LC_MESSAGES/djangojs.mo +0 -0
- wagtail/admin/locale/fr/LC_MESSAGES/djangojs.po +3 -3
- wagtail/admin/locale/gl/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/gl/LC_MESSAGES/django.po +87 -109
- wagtail/admin/locale/he_IL/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/he_IL/LC_MESSAGES/django.po +7 -17
- wagtail/admin/locale/hr_HR/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/hr_HR/LC_MESSAGES/django.po +28 -55
- wagtail/admin/locale/ht/LC_MESSAGES/django.po +1 -1
- wagtail/admin/locale/hu/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/hu/LC_MESSAGES/django.po +55 -120
- wagtail/admin/locale/id_ID/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/id_ID/LC_MESSAGES/django.po +10 -27
- wagtail/admin/locale/is_IS/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/is_IS/LC_MESSAGES/django.po +213 -111
- wagtail/admin/locale/is_IS/LC_MESSAGES/djangojs.mo +0 -0
- wagtail/admin/locale/is_IS/LC_MESSAGES/djangojs.po +7 -2
- wagtail/admin/locale/it/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/it/LC_MESSAGES/django.po +53 -122
- wagtail/admin/locale/ja/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/ja/LC_MESSAGES/django.po +19 -45
- wagtail/admin/locale/ka/LC_MESSAGES/django.po +6 -6
- wagtail/admin/locale/ko/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/ko/LC_MESSAGES/django.po +42 -75
- wagtail/admin/locale/lt/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/lt/LC_MESSAGES/django.po +22 -38
- wagtail/admin/locale/lv/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/lv/LC_MESSAGES/django.po +13 -23
- wagtail/admin/locale/mi/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/mi/LC_MESSAGES/django.po +13 -17
- wagtail/admin/locale/mn/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/mn/LC_MESSAGES/django.po +10 -34
- wagtail/admin/locale/my/LC_MESSAGES/django.po +4 -4
- wagtail/admin/locale/nb/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/nb/LC_MESSAGES/django.po +10 -39
- wagtail/admin/locale/nl/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/nl/LC_MESSAGES/django.po +92 -111
- wagtail/admin/locale/pl/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/pl/LC_MESSAGES/django.po +346 -92
- wagtail/admin/locale/pl/LC_MESSAGES/djangojs.mo +0 -0
- wagtail/admin/locale/pl/LC_MESSAGES/djangojs.po +9 -2
- wagtail/admin/locale/pt_BR/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/pt_BR/LC_MESSAGES/django.po +53 -122
- wagtail/admin/locale/pt_PT/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/pt_PT/LC_MESSAGES/django.po +38 -71
- wagtail/admin/locale/ro/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/ro/LC_MESSAGES/django.po +43 -95
- wagtail/admin/locale/ru/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/ru/LC_MESSAGES/django.po +91 -115
- wagtail/admin/locale/sk_SK/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/sk_SK/LC_MESSAGES/django.po +10 -26
- wagtail/admin/locale/sl/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/sl/LC_MESSAGES/django.po +200 -102
- wagtail/admin/locale/sl/LC_MESSAGES/djangojs.mo +0 -0
- wagtail/admin/locale/sl/LC_MESSAGES/djangojs.po +9 -2
- wagtail/admin/locale/sv/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/sv/LC_MESSAGES/django.po +44 -96
- wagtail/admin/locale/tet/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/tet/LC_MESSAGES/django.po +10 -26
- wagtail/admin/locale/th/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/th/LC_MESSAGES/django.po +13 -32
- wagtail/admin/locale/tr/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/tr/LC_MESSAGES/django.po +10 -26
- wagtail/admin/locale/tr_TR/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/tr_TR/LC_MESSAGES/django.po +10 -26
- wagtail/admin/locale/ug/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/ug/LC_MESSAGES/django.po +3224 -193
- wagtail/admin/locale/uk/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/uk/LC_MESSAGES/django.po +40 -73
- wagtail/admin/locale/vi/LC_MESSAGES/django.po +7 -7
- wagtail/admin/locale/zh/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/zh/LC_MESSAGES/django.po +7 -11
- wagtail/admin/locale/zh_Hans/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/zh_Hans/LC_MESSAGES/django.po +41 -92
- wagtail/admin/locale/zh_Hant/LC_MESSAGES/django.mo +0 -0
- wagtail/admin/locale/zh_Hant/LC_MESSAGES/django.po +38 -64
- wagtail/admin/localization.py +12 -2
- wagtail/admin/mail.py +2 -2
- wagtail/admin/panels/model_utils.py +1 -1
- wagtail/admin/site_summary.py +0 -2
- wagtail/admin/static/wagtailadmin/css/core.css +1 -1
- wagtail/admin/static/wagtailadmin/css/panels/draftail.css +1 -1
- wagtail/admin/static/wagtailadmin/images/email-header.jpg +0 -0
- wagtail/admin/static/wagtailadmin/js/bulk-actions.js +1 -1
- wagtail/admin/static/wagtailadmin/js/core.js +1 -1
- wagtail/admin/static/wagtailadmin/js/core.js.LICENSE.txt +12 -0
- wagtail/admin/static/wagtailadmin/js/draftail.js +1 -1
- wagtail/admin/static/wagtailadmin/js/sidebar.js +1 -1
- wagtail/admin/static/wagtailadmin/js/telepath/telepath.js +1 -1
- wagtail/admin/static/wagtailadmin/js/telepath/widgets.js +1 -1
- wagtail/admin/static/wagtailadmin/js/userbar.js +1 -1
- wagtail/admin/static/wagtailadmin/js/userbar.js.LICENSE.txt +1 -1
- wagtail/admin/static/wagtailadmin/js/vendor.js +1 -1
- wagtail/admin/static/wagtailadmin/js/wagtailadmin.js +1 -1
- wagtail/admin/static/wagtailadmin/js/workflow-action.js +1 -1
- wagtail/admin/staticfiles.py +6 -4
- wagtail/admin/templates/wagtailadmin/account/account.html +42 -59
- wagtail/admin/templates/wagtailadmin/admin_base.html +0 -28
- wagtail/admin/templates/wagtailadmin/bulk_actions/footer.html +1 -1
- wagtail/admin/templates/wagtailadmin/chooser/_search_results.html +7 -5
- wagtail/admin/templates/wagtailadmin/chooser/tables/page_navigate_to_children_cell.html +1 -1
- wagtail/admin/templates/wagtailadmin/generic/chooser/results.html +7 -5
- wagtail/admin/templates/wagtailadmin/generic/edit.html +0 -8
- wagtail/admin/templates/wagtailadmin/generic/form.html +60 -17
- wagtail/admin/templates/wagtailadmin/generic/index.html +17 -0
- wagtail/admin/templates/wagtailadmin/generic/index_results.html +9 -35
- wagtail/admin/templates/wagtailadmin/generic/inspect.html +2 -21
- wagtail/admin/templates/wagtailadmin/generic/listing.html +11 -17
- wagtail/admin/templates/wagtailadmin/generic/listing_results.html +19 -1
- wagtail/admin/templates/wagtailadmin/home/account_summary.html +26 -0
- wagtail/admin/templates/wagtailadmin/home/locked_pages.html +28 -18
- wagtail/admin/templates/wagtailadmin/home/recent_edits.html +28 -17
- wagtail/admin/templates/wagtailadmin/home/site_summary_pages.html +2 -2
- wagtail/admin/templates/wagtailadmin/home/upgrade_notification.html +35 -13
- wagtail/admin/templates/wagtailadmin/home/user_objects_in_workflow_moderation.html +28 -18
- wagtail/admin/templates/wagtailadmin/home/workflow_objects_to_moderate.html +43 -32
- wagtail/admin/templates/wagtailadmin/home.html +22 -5
- wagtail/admin/templates/wagtailadmin/pages/_editor_js.html +0 -1
- wagtail/admin/templates/wagtailadmin/pages/action_menu/menu.html +1 -11
- wagtail/admin/templates/wagtailadmin/pages/action_menu/menu_item.html +1 -6
- wagtail/admin/templates/wagtailadmin/pages/action_menu/page_locked.html +1 -1
- wagtail/admin/templates/wagtailadmin/pages/action_menu/publish.html +1 -1
- wagtail/admin/templates/wagtailadmin/pages/action_menu/save_draft.html +1 -1
- wagtail/admin/templates/wagtailadmin/pages/bulk_actions/confirm_bulk_delete.html +12 -6
- wagtail/admin/templates/wagtailadmin/pages/bulk_actions/confirm_bulk_move.html +12 -7
- wagtail/admin/templates/wagtailadmin/pages/bulk_actions/confirm_bulk_publish.html +17 -11
- wagtail/admin/templates/wagtailadmin/pages/bulk_actions/confirm_bulk_unpublish.html +15 -9
- wagtail/admin/templates/wagtailadmin/pages/confirm_delete.html +9 -9
- wagtail/admin/templates/wagtailadmin/pages/confirm_move.html +2 -2
- wagtail/admin/templates/wagtailadmin/pages/confirm_unpublish.html +4 -4
- wagtail/admin/templates/wagtailadmin/pages/create.html +15 -34
- wagtail/admin/templates/wagtailadmin/pages/edit.html +15 -30
- wagtail/admin/templates/wagtailadmin/pages/explorable_index.html +6 -0
- wagtail/admin/templates/wagtailadmin/pages/explorable_index_results.html +60 -0
- wagtail/admin/templates/wagtailadmin/pages/index.html +1 -36
- wagtail/admin/templates/wagtailadmin/pages/index_results.html +2 -50
- wagtail/admin/templates/wagtailadmin/pages/listing/_locked_indicator.html +1 -1
- wagtail/admin/templates/wagtailadmin/pages/listing/_ordering_cell.html +1 -1
- wagtail/admin/templates/wagtailadmin/pages/listing/_page_header_buttons.html +1 -1
- wagtail/admin/templates/wagtailadmin/pages/listing/_page_title_column_header.html +3 -3
- wagtail/admin/templates/wagtailadmin/pages/listing/_pagination.html +1 -1
- wagtail/admin/templates/wagtailadmin/pages/listing.html +24 -0
- wagtail/admin/templates/wagtailadmin/pages/search.html +1 -20
- wagtail/admin/templates/wagtailadmin/pages/search_results.html +27 -25
- wagtail/admin/templates/wagtailadmin/permissions/includes/collection_member_permissions_formset.html +0 -1
- wagtail/admin/templates/wagtailadmin/reports/listing/_list_page_report.html +2 -2
- wagtail/admin/templates/wagtailadmin/reports/listing/_list_page_types_usage.html +6 -6
- wagtail/admin/templates/wagtailadmin/reports/workflow_tasks_results.html +1 -1
- wagtail/admin/templates/wagtailadmin/shared/action_menu/menu.html +14 -0
- wagtail/admin/templates/wagtailadmin/shared/action_menu/menu_item.html +6 -0
- wagtail/admin/templates/wagtailadmin/shared/avatar.html +13 -3
- wagtail/admin/templates/wagtailadmin/shared/header.html +0 -5
- wagtail/admin/templates/wagtailadmin/shared/headers/slim_header.html +1 -1
- wagtail/admin/templates/wagtailadmin/shared/page_status_tag_new.html +4 -1
- wagtail/admin/templates/wagtailadmin/shared/pagination_nav.html +1 -1
- wagtail/admin/templates/wagtailadmin/shared/side_panel_toggle.html +1 -1
- wagtail/admin/templates/wagtailadmin/shared/side_panels/includes/status/locale.html +1 -1
- wagtail/admin/templates/wagtailadmin/shared/side_panels/includes/status/usage.html +2 -2
- wagtail/admin/templates/wagtailadmin/shared/side_panels/preview.html +94 -52
- wagtail/admin/templates/wagtailadmin/{pages/_unsaved_changes_warning.html → shared/unsaved_changes_warning.html} +4 -4
- wagtail/admin/templates/wagtailadmin/shared/usage_summary.html +2 -2
- wagtail/admin/templates/wagtailadmin/shared/workflow_history/detail.html +1 -7
- wagtail/admin/templates/wagtailadmin/shared/workflow_history/listing.html +1 -0
- wagtail/admin/templates/wagtailadmin/shared/workflow_history/{list.html → listing_results.html} +33 -35
- wagtail/admin/templates/wagtailadmin/tables/references_cell.html +1 -1
- wagtail/admin/templates/wagtailadmin/workflows/create.html +11 -36
- wagtail/admin/templates/wagtailadmin/workflows/create_task.html +0 -38
- wagtail/admin/templates/wagtailadmin/workflows/edit.html +44 -74
- wagtail/admin/templates/wagtailadmin/workflows/edit_task.html +27 -66
- wagtail/admin/templates/wagtailadmin/workflows/includes/task_usage_cell.html +4 -2
- wagtail/admin/templates/wagtailadmin/workflows/includes/workflow_tasks_cell.html +4 -4
- wagtail/admin/templates/wagtailadmin/workflows/includes/workflow_used_by_cell.html +15 -11
- wagtail/admin/templates/wagtailadmin/workflows/task_chooser/includes/results.html +7 -5
- wagtail/admin/templatetags/wagtailadmin_tags.py +51 -22
- wagtail/admin/tests/pages/test_content_type_use_view.py +82 -2
- wagtail/admin/tests/pages/test_edit_page.py +70 -0
- wagtail/admin/tests/pages/test_explorer_view.py +65 -4
- wagtail/admin/tests/pages/test_page_search.py +8 -7
- wagtail/admin/tests/pages/test_page_usage.py +3 -1
- wagtail/admin/tests/pages/test_preview.py +208 -63
- wagtail/admin/tests/pages/test_reorder_page.py +91 -1
- wagtail/admin/tests/pages/test_view_draft.py +32 -1
- wagtail/admin/tests/pages/test_workflow_history.py +288 -7
- wagtail/admin/tests/test_account_management.py +23 -3
- wagtail/admin/tests/test_audit_log.py +2 -2
- wagtail/admin/tests/test_collections_views.py +17 -5
- wagtail/admin/tests/test_dashboard.py +1 -1
- wagtail/admin/tests/test_edit_handlers.py +3 -2
- wagtail/admin/tests/test_icon_sprite.py +4 -0
- wagtail/admin/tests/test_privacy.py +5 -19
- wagtail/admin/tests/test_reports_views.py +1 -1
- wagtail/admin/tests/test_site_summary.py +3 -3
- wagtail/admin/tests/test_templatetags.py +27 -3
- wagtail/admin/tests/test_upgrade_notification.py +71 -18
- wagtail/admin/tests/test_views.py +2 -2
- wagtail/admin/tests/test_views_generic.py +13 -0
- wagtail/admin/tests/test_widgets.py +3 -3
- wagtail/admin/tests/test_workflows.py +145 -27
- wagtail/admin/tests/tests.py +1 -1
- wagtail/admin/tests/viewsets/test_model_viewset.py +55 -3
- wagtail/admin/ui/side_panels.py +19 -0
- wagtail/admin/ui/sidebar.py +4 -3
- wagtail/admin/ui/tables/__init__.py +14 -1
- wagtail/admin/ui/tables/pages.py +6 -1
- wagtail/admin/urls/pages.py +10 -1
- wagtail/admin/urls/workflows.py +6 -1
- wagtail/admin/views/account.py +5 -1
- wagtail/admin/views/collections.py +0 -2
- wagtail/admin/views/generic/base.py +118 -1
- wagtail/admin/views/generic/history.py +157 -26
- wagtail/admin/views/generic/models.py +113 -99
- wagtail/admin/views/home.py +24 -9
- wagtail/admin/views/page_privacy.py +54 -30
- wagtail/admin/views/pages/history.py +11 -4
- wagtail/admin/views/pages/listing.py +76 -89
- wagtail/admin/views/pages/preview.py +1 -1
- wagtail/admin/views/pages/search.py +27 -71
- wagtail/admin/views/pages/usage.py +63 -24
- wagtail/admin/views/pages/utils.py +4 -3
- wagtail/admin/views/reports/base.py +0 -6
- wagtail/admin/views/workflows.py +65 -19
- wagtail/admin/viewsets/model.py +4 -3
- wagtail/admin/widgets/chooser.py +2 -1
- wagtail/api/v2/tests/test_pages.py +15 -2
- wagtail/blocks/field_block.py +15 -3
- wagtail/blocks/static_block.py +3 -0
- wagtail/contrib/forms/locale/af/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/forms/locale/ar/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/forms/locale/az_AZ/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/forms/locale/be/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/forms/locale/bg/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/forms/locale/bn/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/forms/locale/ca/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/forms/locale/ca/LC_MESSAGES/django.po +4 -1
- wagtail/contrib/forms/locale/cs/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/forms/locale/cy/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/forms/locale/cy/LC_MESSAGES/django.po +30 -2
- wagtail/contrib/forms/locale/da/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/forms/locale/de/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/forms/locale/de/LC_MESSAGES/django.po +4 -1
- wagtail/contrib/forms/locale/dv/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/forms/locale/dv/LC_MESSAGES/django.po +4 -1
- wagtail/contrib/forms/locale/el/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/forms/locale/en/LC_MESSAGES/django.po +15 -11
- wagtail/contrib/forms/locale/es/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/forms/locale/es_419/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/forms/locale/et/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/forms/locale/eu/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/forms/locale/fa/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/forms/locale/fi/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/forms/locale/fi/LC_MESSAGES/django.po +4 -1
- wagtail/contrib/forms/locale/fr/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/forms/locale/fr/LC_MESSAGES/django.po +4 -1
- wagtail/contrib/forms/locale/gl/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/forms/locale/gl/LC_MESSAGES/django.po +4 -1
- wagtail/contrib/forms/locale/he_IL/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/forms/locale/hr_HR/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/forms/locale/ht/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/forms/locale/hu/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/forms/locale/hu/LC_MESSAGES/django.po +4 -1
- wagtail/contrib/forms/locale/hy/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/forms/locale/id_ID/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/forms/locale/is_IS/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/forms/locale/is_IS/LC_MESSAGES/django.po +4 -1
- wagtail/contrib/forms/locale/it/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/forms/locale/it/LC_MESSAGES/django.po +4 -1
- wagtail/contrib/forms/locale/ja/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/forms/locale/ka/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/forms/locale/ko/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/forms/locale/lt/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/forms/locale/lv/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/forms/locale/mi/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/forms/locale/mn/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/forms/locale/my/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/forms/locale/nb/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/forms/locale/nl/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/forms/locale/nl/LC_MESSAGES/django.po +4 -1
- wagtail/contrib/forms/locale/pl/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/forms/locale/pl/LC_MESSAGES/django.po +6 -2
- wagtail/contrib/forms/locale/pt_BR/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/forms/locale/pt_BR/LC_MESSAGES/django.po +4 -1
- wagtail/contrib/forms/locale/pt_PT/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/forms/locale/ro/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/forms/locale/ro/LC_MESSAGES/django.po +4 -1
- wagtail/contrib/forms/locale/ru/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/forms/locale/ru/LC_MESSAGES/django.po +4 -1
- wagtail/contrib/forms/locale/sk_SK/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/forms/locale/sl/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/forms/locale/sl/LC_MESSAGES/django.po +4 -1
- wagtail/contrib/forms/locale/sv/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/forms/locale/sv/LC_MESSAGES/django.po +4 -1
- wagtail/contrib/forms/locale/tet/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/forms/locale/th/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/forms/locale/tr/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/forms/locale/tr_TR/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/forms/locale/ug/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/forms/locale/ug/LC_MESSAGES/django.po +4 -1
- wagtail/contrib/forms/locale/uk/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/forms/locale/vi/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/forms/locale/zh/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/forms/locale/zh_Hans/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/forms/locale/zh_Hant/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/forms/templates/wagtailforms/confirm_delete.html +1 -0
- wagtail/contrib/forms/templates/wagtailforms/index.html +1 -1
- wagtail/contrib/forms/templates/wagtailforms/index_results.html +1 -1
- wagtail/contrib/forms/templates/wagtailforms/list_submissions.html +2 -1
- wagtail/contrib/forms/templates/wagtailforms/panels/form_responses_panel.html +2 -2
- wagtail/contrib/forms/tests/test_views.py +234 -35
- wagtail/contrib/forms/utils.py +8 -14
- wagtail/contrib/forms/views.py +72 -27
- wagtail/contrib/frontend_cache/backends/azure.py +1 -1
- wagtail/contrib/frontend_cache/backends/cloudfront.py +2 -2
- wagtail/contrib/frontend_cache/backends/dummy.py +11 -0
- wagtail/contrib/frontend_cache/tests.py +31 -37
- wagtail/contrib/frontend_cache/utils.py +12 -5
- wagtail/contrib/redirects/locale/ar/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/ar/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/az_AZ/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/az_AZ/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/be/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/be/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/bg/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/bg/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/bn/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/bn/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/ca/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/ca/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/cs/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/cs/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/cy/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/cy/LC_MESSAGES/django.po +17 -5
- wagtail/contrib/redirects/locale/da/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/da/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/de/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/de/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/dv/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/dv/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/el/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/el/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/en/LC_MESSAGES/django.po +20 -24
- wagtail/contrib/redirects/locale/en_IN/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/en_IN/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/es/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/es/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/es_419/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/es_419/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/es_VE/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/es_VE/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/et/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/et/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/eu/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/redirects/locale/fa/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/fa/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/fi/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/fi/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/fr/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/fr/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/gl/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/gl/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/he_IL/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/he_IL/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/hi/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/hi/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/hr_HR/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/hr_HR/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/ht/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/ht/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/hu/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/hu/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/hy/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/redirects/locale/id_ID/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/id_ID/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/is_IS/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/is_IS/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/it/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/it/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/ja/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/ja/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/ka/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/ka/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/ko/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/ko/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/lt/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/lt/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/lv/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/lv/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/mi/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/mi/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/mn/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/mn/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/my/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/my/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/nb/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/nb/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/nl/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/nl/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/pl/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/pl/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/pt_BR/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/pt_BR/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/pt_PT/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/pt_PT/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/ro/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/ro/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/ru/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/ru/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/sk_SK/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/sk_SK/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/sl/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/sl/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/sr/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/redirects/locale/sv/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/sv/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/ta/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/ta/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/tet/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/tet/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/th/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/th/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/tr/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/tr/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/tr_TR/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/tr_TR/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/ug/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/ug/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/uk/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/uk/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/vi/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/vi/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/zh/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/zh/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/zh_Hans/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/zh_Hans/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/locale/zh_Hant/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/redirects/locale/zh_Hant/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/redirects/models.py +16 -1
- wagtail/contrib/redirects/signal_handlers.py +18 -3
- wagtail/contrib/redirects/templates/wagtailredirects/add.html +5 -16
- wagtail/contrib/redirects/templates/wagtailredirects/import_summary.html +1 -1
- wagtail/contrib/redirects/tests/test_redirects.py +49 -6
- wagtail/contrib/redirects/tests/test_signal_handlers.py +42 -1
- wagtail/contrib/redirects/views.py +27 -3
- wagtail/contrib/search_promotions/locale/af/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/af/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/ar/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/ar/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/az_AZ/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/az_AZ/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/be/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/be/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/bg/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/bg/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/bn/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/bn/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/ca/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/ca/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/cs/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/cs/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/cy/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/cy/LC_MESSAGES/django.po +60 -4
- wagtail/contrib/search_promotions/locale/da/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/da/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/de/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/de/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/dv/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/dv/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/el/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/el/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/en/LC_MESSAGES/django.po +12 -18
- wagtail/contrib/search_promotions/locale/en_IN/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/en_IN/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/es/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/es/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/es_419/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/es_419/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/et/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/et/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/eu/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/search_promotions/locale/fa/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/fa/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/fi/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/fi/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/fr/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/fr/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/gl/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/gl/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/he_IL/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/he_IL/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/hi/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/hi/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/hr_HR/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/hr_HR/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/ht/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/ht/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/hu/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/hu/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/id_ID/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/id_ID/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/is_IS/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/is_IS/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/it/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/it/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/ja/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/ja/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/ka/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/ka/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/ko/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/ko/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/lt/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/lt/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/lv/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/lv/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/mi/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/mi/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/mn/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/mn/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/my/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/my/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/nb/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/nb/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/nl/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/nl/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/pl/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/pl/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/pt_BR/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/pt_BR/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/pt_PT/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/pt_PT/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/ro/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/ro/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/ru/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/ru/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/sk_SK/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/sk_SK/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/sl/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/sl/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/sr/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/search_promotions/locale/sv/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/sv/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/tet/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/tet/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/th/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/th/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/tr/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/tr/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/tr_TR/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/tr_TR/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/ug/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/ug/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/uk/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/uk/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/vi/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/vi/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/zh/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/zh/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/zh_Hans/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/zh_Hans/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/locale/zh_Hant/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/search_promotions/locale/zh_Hant/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/search_promotions/templates/wagtailsearchpromotions/add.html +5 -8
- wagtail/contrib/search_promotions/templates/wagtailsearchpromotions/edit.html +15 -10
- wagtail/contrib/search_promotions/tests.py +13 -2
- wagtail/contrib/search_promotions/views.py +15 -3
- wagtail/contrib/settings/locale/ar/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/ar/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/az_AZ/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/az_AZ/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/be/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/be/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/bn/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/bn/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/ca/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/ca/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/cs/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/cs/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/cy/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/cy/LC_MESSAGES/django.po +7 -8
- wagtail/contrib/settings/locale/da/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/da/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/de/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/de/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/dv/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/dv/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/el/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/el/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/en/LC_MESSAGES/django.po +2 -10
- wagtail/contrib/settings/locale/en_IN/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/en_IN/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/es/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/es/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/es_419/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/es_419/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/es_VE/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/es_VE/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/et/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/et/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/fa/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/fa/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/fi/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/fi/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/fr/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/fr/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/gl/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/gl/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/he_IL/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/he_IL/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/hi/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/hi/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/hr_HR/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/hr_HR/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/ht/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/ht/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/hu/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/hu/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/id_ID/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/id_ID/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/is_IS/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/is_IS/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/it/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/it/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/ja/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/ja/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/ka/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/ka/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/settings/locale/ko/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/ko/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/lt/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/lt/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/lv/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/lv/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/mi/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/mi/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/mn/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/mn/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/my/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/my/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/nb/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/nb/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/nl/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/nl/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/pl/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/pl/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/pt_BR/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/pt_BR/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/pt_PT/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/pt_PT/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/ro/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/ro/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/ru/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/ru/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/sk_SK/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/sk_SK/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/sl/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/sl/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/sr/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/sr/LC_MESSAGES/django.po +1 -4
- wagtail/contrib/settings/locale/sv/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/sv/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/ta/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/ta/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/tet/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/tet/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/th/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/th/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/tr/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/tr/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/tr_TR/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/tr_TR/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/ug/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/ug/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/uk/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/uk/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/vi/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/vi/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/zh/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/zh/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/zh_Hans/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/zh_Hans/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/locale/zh_Hant/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/settings/locale/zh_Hant/LC_MESSAGES/django.po +1 -7
- wagtail/contrib/settings/templates/wagtailsettings/edit.html +12 -45
- wagtail/contrib/simple_translation/locale/ar/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/simple_translation/locale/be/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/simple_translation/locale/ca/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/simple_translation/locale/cs/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/simple_translation/locale/cy/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/simple_translation/locale/cy/LC_MESSAGES/django.po +14 -2
- wagtail/contrib/simple_translation/locale/de/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/simple_translation/locale/dv/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/simple_translation/locale/dv/LC_MESSAGES/django.po +4 -1
- wagtail/contrib/simple_translation/locale/el/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/simple_translation/locale/en/LC_MESSAGES/django.po +4 -4
- wagtail/contrib/simple_translation/locale/es/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/simple_translation/locale/es_419/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/simple_translation/locale/fa/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/simple_translation/locale/fi/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/simple_translation/locale/fr/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/simple_translation/locale/gl/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/simple_translation/locale/hr_HR/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/simple_translation/locale/hu/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/simple_translation/locale/is_IS/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/simple_translation/locale/is_IS/LC_MESSAGES/django.po +6 -2
- wagtail/contrib/simple_translation/locale/it/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/simple_translation/locale/ko/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/simple_translation/locale/lt/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/simple_translation/locale/mi/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/simple_translation/locale/mn/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/simple_translation/locale/nb/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/simple_translation/locale/nl/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/simple_translation/locale/pl/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/simple_translation/locale/pl/LC_MESSAGES/django.po +6 -2
- wagtail/contrib/simple_translation/locale/pt_BR/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/simple_translation/locale/pt_PT/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/simple_translation/locale/ro/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/simple_translation/locale/ru/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/simple_translation/locale/sl/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/simple_translation/locale/sl/LC_MESSAGES/django.po +6 -3
- wagtail/contrib/simple_translation/locale/sv/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/simple_translation/locale/ug/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/simple_translation/locale/uk/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/simple_translation/locale/vi/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/simple_translation/locale/zh_Hans/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/simple_translation/locale/zh_Hant/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/simple_translation/tests/test_views.py +51 -0
- wagtail/contrib/simple_translation/wagtail_hooks.py +16 -11
- wagtail/contrib/styleguide/locale/cy/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/styleguide/locale/cy/LC_MESSAGES/django.po +5 -1
- wagtail/contrib/styleguide/locale/en/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/table_block/locale/cy/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/table_block/locale/cy/LC_MESSAGES/django.po +27 -1
- wagtail/contrib/table_block/locale/en/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/table_block/locale/pl/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/table_block/locale/pl/LC_MESSAGES/django.po +9 -2
- wagtail/contrib/typed_table_block/blocks.py +25 -0
- wagtail/contrib/typed_table_block/locale/ar/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/typed_table_block/locale/be/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/typed_table_block/locale/ca/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/typed_table_block/locale/cy/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/typed_table_block/locale/cy/LC_MESSAGES/django.po +13 -2
- wagtail/contrib/typed_table_block/locale/de/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/typed_table_block/locale/dv/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/typed_table_block/locale/el/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/typed_table_block/locale/en/LC_MESSAGES/django.po +10 -10
- wagtail/contrib/typed_table_block/locale/es/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/typed_table_block/locale/fa/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/typed_table_block/locale/fi/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/typed_table_block/locale/fr/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/typed_table_block/locale/gl/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/typed_table_block/locale/hu/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/typed_table_block/locale/is_IS/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/typed_table_block/locale/it/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/typed_table_block/locale/ko/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/typed_table_block/locale/lt/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/typed_table_block/locale/nl/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/typed_table_block/locale/pl/LC_MESSAGES/django.mo +0 -0
- wagtail/contrib/typed_table_block/locale/pl/LC_MESSAGES/django.po +6 -2
- wagtail/contrib/typed_table_block/locale/pt_BR/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/typed_table_block/locale/pt_PT/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/typed_table_block/locale/ro/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/typed_table_block/locale/ru/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/typed_table_block/locale/sl/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/typed_table_block/locale/sv/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/typed_table_block/locale/th/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/typed_table_block/locale/ug/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/typed_table_block/locale/uk/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/typed_table_block/locale/zh/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/typed_table_block/locale/zh_Hans/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/typed_table_block/locale/zh_Hant/LC_MESSAGES/django.po +1 -1
- wagtail/contrib/typed_table_block/tests.py +24 -1
- wagtail/coreutils.py +5 -11
- wagtail/documents/admin_urls.py +2 -2
- wagtail/documents/locale/af/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/af/LC_MESSAGES/django.po +1 -4
- wagtail/documents/locale/ar/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/ar/LC_MESSAGES/django.po +7 -20
- wagtail/documents/locale/az_AZ/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/az_AZ/LC_MESSAGES/django.po +1 -7
- wagtail/documents/locale/be/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/be/LC_MESSAGES/django.po +7 -20
- wagtail/documents/locale/bg/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/bg/LC_MESSAGES/django.po +4 -17
- wagtail/documents/locale/bn/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/bn/LC_MESSAGES/django.po +1 -7
- wagtail/documents/locale/ca/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/ca/LC_MESSAGES/django.po +15 -29
- wagtail/documents/locale/cs/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/cs/LC_MESSAGES/django.po +7 -20
- wagtail/documents/locale/cy/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/cy/LC_MESSAGES/django.po +11 -11
- wagtail/documents/locale/da/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/da/LC_MESSAGES/django.po +1 -7
- wagtail/documents/locale/de/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/de/LC_MESSAGES/django.po +17 -29
- wagtail/documents/locale/dv/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/dv/LC_MESSAGES/django.po +1 -11
- wagtail/documents/locale/el/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/el/LC_MESSAGES/django.po +7 -20
- wagtail/documents/locale/en/LC_MESSAGES/django.po +61 -76
- wagtail/documents/locale/es/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/es/LC_MESSAGES/django.po +7 -20
- wagtail/documents/locale/es_419/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/es_419/LC_MESSAGES/django.po +1 -7
- wagtail/documents/locale/et/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/et/LC_MESSAGES/django.po +7 -20
- wagtail/documents/locale/eu/LC_MESSAGES/django.po +1 -1
- wagtail/documents/locale/fa/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/fa/LC_MESSAGES/django.po +7 -20
- wagtail/documents/locale/fi/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/fi/LC_MESSAGES/django.po +15 -27
- wagtail/documents/locale/fr/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/fr/LC_MESSAGES/django.po +16 -30
- wagtail/documents/locale/gl/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/gl/LC_MESSAGES/django.po +15 -28
- wagtail/documents/locale/he_IL/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/he_IL/LC_MESSAGES/django.po +4 -17
- wagtail/documents/locale/hr_HR/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/hr_HR/LC_MESSAGES/django.po +7 -37
- wagtail/documents/locale/ht/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/ht/LC_MESSAGES/django.po +1 -7
- wagtail/documents/locale/hu/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/hu/LC_MESSAGES/django.po +7 -34
- wagtail/documents/locale/id_ID/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/id_ID/LC_MESSAGES/django.po +7 -20
- wagtail/documents/locale/is_IS/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/is_IS/LC_MESSAGES/django.po +16 -31
- wagtail/documents/locale/it/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/it/LC_MESSAGES/django.po +7 -37
- wagtail/documents/locale/ja/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/ja/LC_MESSAGES/django.po +7 -20
- wagtail/documents/locale/ka/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/ka/LC_MESSAGES/django.po +1 -4
- wagtail/documents/locale/ko/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/ko/LC_MESSAGES/django.po +7 -20
- wagtail/documents/locale/lt/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/lt/LC_MESSAGES/django.po +7 -20
- wagtail/documents/locale/lv/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/lv/LC_MESSAGES/django.po +4 -17
- wagtail/documents/locale/mi/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/mi/LC_MESSAGES/django.po +7 -20
- wagtail/documents/locale/mn/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/mn/LC_MESSAGES/django.po +7 -20
- wagtail/documents/locale/my/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/my/LC_MESSAGES/django.po +1 -7
- wagtail/documents/locale/nb/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/nb/LC_MESSAGES/django.po +7 -20
- wagtail/documents/locale/nl/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/nl/LC_MESSAGES/django.po +16 -28
- wagtail/documents/locale/pl/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/pl/LC_MESSAGES/django.po +12 -21
- wagtail/documents/locale/pt_BR/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/pt_BR/LC_MESSAGES/django.po +7 -37
- wagtail/documents/locale/pt_PT/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/pt_PT/LC_MESSAGES/django.po +7 -20
- wagtail/documents/locale/ro/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/ro/LC_MESSAGES/django.po +7 -37
- wagtail/documents/locale/ru/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/ru/LC_MESSAGES/django.po +18 -32
- wagtail/documents/locale/sk_SK/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/sk_SK/LC_MESSAGES/django.po +7 -20
- wagtail/documents/locale/sl/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/sl/LC_MESSAGES/django.po +7 -40
- wagtail/documents/locale/sv/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/sv/LC_MESSAGES/django.po +7 -20
- wagtail/documents/locale/tet/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/tet/LC_MESSAGES/django.po +4 -17
- wagtail/documents/locale/th/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/th/LC_MESSAGES/django.po +7 -20
- wagtail/documents/locale/tr/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/tr/LC_MESSAGES/django.po +7 -20
- wagtail/documents/locale/tr_TR/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/tr_TR/LC_MESSAGES/django.po +7 -20
- wagtail/documents/locale/ug/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/ug/LC_MESSAGES/django.po +16 -30
- wagtail/documents/locale/uk/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/uk/LC_MESSAGES/django.po +7 -20
- wagtail/documents/locale/vi/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/vi/LC_MESSAGES/django.po +4 -10
- wagtail/documents/locale/zh/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/zh/LC_MESSAGES/django.po +7 -20
- wagtail/documents/locale/zh_Hans/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/zh_Hans/LC_MESSAGES/django.po +7 -20
- wagtail/documents/locale/zh_Hant/LC_MESSAGES/django.mo +0 -0
- wagtail/documents/locale/zh_Hant/LC_MESSAGES/django.po +7 -20
- wagtail/documents/migrations/0014_alter_document_file_size.py +18 -0
- wagtail/documents/models.py +1 -1
- wagtail/documents/rich_text/__init__.py +1 -3
- wagtail/documents/static/wagtaildocs/js/add-multiple.js +1 -1
- wagtail/documents/templates/wagtaildocs/bulk_actions/confirm_bulk_add_tags.html +5 -1
- wagtail/documents/templates/wagtaildocs/bulk_actions/confirm_bulk_add_to_collection.html +5 -1
- wagtail/documents/templates/wagtaildocs/bulk_actions/confirm_bulk_delete.html +11 -5
- wagtail/documents/templates/wagtaildocs/documents/add.html +13 -41
- wagtail/documents/templates/wagtaildocs/documents/edit.html +28 -56
- wagtail/documents/templates/wagtaildocs/documents/index.html +1 -4
- wagtail/documents/templates/wagtaildocs/homepage/site_summary_documents.html +2 -2
- wagtail/documents/templates/wagtaildocs/multiple/add.html +36 -41
- wagtail/documents/tests/test_admin_views.py +64 -6
- wagtail/documents/tests/test_site_summary.py +3 -3
- wagtail/documents/views/documents.py +103 -113
- wagtail/documents/views/multiple.py +19 -1
- wagtail/embeds/locale/en/LC_MESSAGES/django.po +1 -1
- wagtail/embeds/locale/gl/LC_MESSAGES/django.po +1 -1
- wagtail/embeds/oembed_providers.py +9 -19
- wagtail/fields.py +43 -27
- wagtail/images/admin_urls.py +2 -2
- wagtail/images/blocks.py +227 -2
- wagtail/images/fields.py +17 -29
- wagtail/images/image_operations.py +1 -1
- wagtail/images/locale/ar/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/ar/LC_MESSAGES/django.po +22 -35
- wagtail/images/locale/az_AZ/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/az_AZ/LC_MESSAGES/django.po +1 -7
- wagtail/images/locale/be/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/be/LC_MESSAGES/django.po +17 -23
- wagtail/images/locale/bg/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/bg/LC_MESSAGES/django.po +11 -24
- wagtail/images/locale/bn/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/bn/LC_MESSAGES/django.po +1 -7
- wagtail/images/locale/ca/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/ca/LC_MESSAGES/django.po +42 -49
- wagtail/images/locale/cs/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/cs/LC_MESSAGES/django.po +30 -43
- wagtail/images/locale/cy/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/cy/LC_MESSAGES/django.po +134 -40
- wagtail/images/locale/da/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/da/LC_MESSAGES/django.po +5 -11
- wagtail/images/locale/de/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/de/LC_MESSAGES/django.po +46 -53
- wagtail/images/locale/dv/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/dv/LC_MESSAGES/django.po +11 -17
- wagtail/images/locale/el/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/el/LC_MESSAGES/django.po +19 -32
- wagtail/images/locale/en/LC_MESSAGES/django.po +119 -129
- wagtail/images/locale/es/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/es/LC_MESSAGES/django.po +30 -43
- wagtail/images/locale/es_419/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/es_419/LC_MESSAGES/django.po +1 -7
- wagtail/images/locale/et/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/et/LC_MESSAGES/django.po +22 -35
- wagtail/images/locale/eu/LC_MESSAGES/django.po +1 -1
- wagtail/images/locale/fa/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/fa/LC_MESSAGES/django.po +22 -35
- wagtail/images/locale/fi/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/fi/LC_MESSAGES/django.po +45 -50
- wagtail/images/locale/fr/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/fr/LC_MESSAGES/django.po +45 -52
- wagtail/images/locale/gl/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/gl/LC_MESSAGES/django.po +43 -50
- wagtail/images/locale/he_IL/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/he_IL/LC_MESSAGES/django.po +14 -26
- wagtail/images/locale/hr_HR/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/hr_HR/LC_MESSAGES/django.po +29 -42
- wagtail/images/locale/ht/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/ht/LC_MESSAGES/django.po +3 -9
- wagtail/images/locale/hu/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/hu/LC_MESSAGES/django.po +30 -57
- wagtail/images/locale/id_ID/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/id_ID/LC_MESSAGES/django.po +22 -35
- wagtail/images/locale/is_IS/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/is_IS/LC_MESSAGES/django.po +46 -53
- wagtail/images/locale/it/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/it/LC_MESSAGES/django.po +29 -59
- wagtail/images/locale/ja/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/ja/LC_MESSAGES/django.po +22 -35
- wagtail/images/locale/ka/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/ka/LC_MESSAGES/django.po +7 -13
- wagtail/images/locale/ko/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/ko/LC_MESSAGES/django.po +22 -35
- wagtail/images/locale/lt/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/lt/LC_MESSAGES/django.po +30 -43
- wagtail/images/locale/lv/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/lv/LC_MESSAGES/django.po +16 -32
- wagtail/images/locale/mi/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/mi/LC_MESSAGES/django.po +19 -29
- wagtail/images/locale/mn/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/mn/LC_MESSAGES/django.po +22 -35
- wagtail/images/locale/my/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/my/LC_MESSAGES/django.po +4 -10
- wagtail/images/locale/nb/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/nb/LC_MESSAGES/django.po +30 -43
- wagtail/images/locale/nl/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/nl/LC_MESSAGES/django.po +44 -49
- wagtail/images/locale/pl/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/pl/LC_MESSAGES/django.po +51 -44
- wagtail/images/locale/pt_BR/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/pt_BR/LC_MESSAGES/django.po +29 -59
- wagtail/images/locale/pt_PT/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/pt_PT/LC_MESSAGES/django.po +30 -43
- wagtail/images/locale/ro/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/ro/LC_MESSAGES/django.po +28 -58
- wagtail/images/locale/ru/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/ru/LC_MESSAGES/django.po +49 -54
- wagtail/images/locale/sk_SK/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/sk_SK/LC_MESSAGES/django.po +19 -32
- wagtail/images/locale/sl/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/sl/LC_MESSAGES/django.po +30 -63
- wagtail/images/locale/sv/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/sv/LC_MESSAGES/django.po +30 -43
- wagtail/images/locale/tet/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/tet/LC_MESSAGES/django.po +10 -16
- wagtail/images/locale/th/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/th/LC_MESSAGES/django.po +22 -35
- wagtail/images/locale/tr/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/tr/LC_MESSAGES/django.po +22 -35
- wagtail/images/locale/tr_TR/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/tr_TR/LC_MESSAGES/django.po +22 -35
- wagtail/images/locale/ug/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/ug/LC_MESSAGES/django.po +45 -51
- wagtail/images/locale/uk/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/uk/LC_MESSAGES/django.po +30 -43
- wagtail/images/locale/vi/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/vi/LC_MESSAGES/django.po +8 -14
- wagtail/images/locale/zh/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/zh/LC_MESSAGES/django.po +13 -26
- wagtail/images/locale/zh_Hans/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/zh_Hans/LC_MESSAGES/django.po +28 -41
- wagtail/images/locale/zh_Hant/LC_MESSAGES/django.mo +0 -0
- wagtail/images/locale/zh_Hant/LC_MESSAGES/django.po +22 -35
- wagtail/images/migrations/0025_alter_image_file_alter_rendition_file.py +36 -43
- wagtail/images/migrations/0027_image_description.py +20 -0
- wagtail/images/models.py +120 -45
- wagtail/images/rich_text/__init__.py +1 -3
- wagtail/images/static/wagtailimages/js/add-multiple.js +1 -1
- wagtail/images/static/wagtailimages/js/image-block.js +1 -0
- wagtail/images/templates/wagtailimages/bulk_actions/confirm_bulk_add_tags.html +5 -1
- wagtail/images/templates/wagtailimages/bulk_actions/confirm_bulk_add_to_collection.html +5 -1
- wagtail/images/templates/wagtailimages/bulk_actions/confirm_bulk_delete.html +11 -5
- wagtail/images/templates/wagtailimages/chooser/results.html +2 -2
- wagtail/images/templates/wagtailimages/homepage/site_summary_images.html +2 -2
- wagtail/images/templates/wagtailimages/images/_file_field.html +2 -2
- wagtail/images/templates/wagtailimages/images/add.html +13 -31
- wagtail/images/templates/wagtailimages/images/edit.html +53 -82
- wagtail/images/templates/wagtailimages/images/index.html +1 -4
- wagtail/images/templates/wagtailimages/images/url_generator.html +1 -1
- wagtail/images/templates/wagtailimages/multiple/add.html +40 -47
- wagtail/images/templates/wagtailimages/widgets/image.html +5 -0
- wagtail/images/templates/wagtailimages/widgets/image_chooser.html +1 -1
- wagtail/images/tests/test_admin_views.py +70 -10
- wagtail/images/tests/test_blocks.py +428 -1
- wagtail/images/tests/test_image_operations.py +23 -0
- wagtail/images/tests/test_models.py +20 -0
- wagtail/images/tests/test_signal_handlers.py +99 -95
- wagtail/images/tests/test_site_summary.py +3 -3
- wagtail/images/tests/test_templatetags.py +11 -7
- wagtail/images/tests/tests.py +4 -0
- wagtail/images/views/images.py +103 -104
- wagtail/images/views/multiple.py +17 -1
- wagtail/locale/af/LC_MESSAGES/django.po +1 -1
- wagtail/locale/ar/LC_MESSAGES/django.po +1 -1
- wagtail/locale/az_AZ/LC_MESSAGES/django.po +1 -1
- wagtail/locale/be/LC_MESSAGES/django.po +1 -1
- wagtail/locale/bg/LC_MESSAGES/django.po +1 -1
- wagtail/locale/bn/LC_MESSAGES/django.po +1 -1
- wagtail/locale/ca/LC_MESSAGES/django.mo +0 -0
- wagtail/locale/ca/LC_MESSAGES/django.po +10 -1
- wagtail/locale/cs/LC_MESSAGES/django.po +1 -1
- wagtail/locale/cy/LC_MESSAGES/django.mo +0 -0
- wagtail/locale/cy/LC_MESSAGES/django.po +4 -1
- wagtail/locale/da/LC_MESSAGES/django.po +1 -1
- wagtail/locale/de/LC_MESSAGES/django.mo +0 -0
- wagtail/locale/de/LC_MESSAGES/django.po +10 -1
- wagtail/locale/dv/LC_MESSAGES/django.mo +0 -0
- wagtail/locale/dv/LC_MESSAGES/django.po +10 -1
- wagtail/locale/el/LC_MESSAGES/django.po +1 -1
- wagtail/locale/en/LC_MESSAGES/django.po +137 -125
- wagtail/locale/es/LC_MESSAGES/django.mo +0 -0
- wagtail/locale/es/LC_MESSAGES/django.po +10 -1
- wagtail/locale/es_419/LC_MESSAGES/django.po +1 -1
- wagtail/locale/et/LC_MESSAGES/django.po +1 -1
- wagtail/locale/eu/LC_MESSAGES/django.po +1 -1
- wagtail/locale/fa/LC_MESSAGES/django.po +1 -1
- wagtail/locale/fi/LC_MESSAGES/django.mo +0 -0
- wagtail/locale/fi/LC_MESSAGES/django.po +10 -1
- wagtail/locale/fr/LC_MESSAGES/django.mo +0 -0
- wagtail/locale/fr/LC_MESSAGES/django.po +10 -1
- wagtail/locale/gl/LC_MESSAGES/django.mo +0 -0
- wagtail/locale/gl/LC_MESSAGES/django.po +10 -1
- wagtail/locale/he_IL/LC_MESSAGES/django.po +1 -1
- wagtail/locale/hr_HR/LC_MESSAGES/django.po +1 -1
- wagtail/locale/hu/LC_MESSAGES/django.mo +0 -0
- wagtail/locale/hu/LC_MESSAGES/django.po +10 -1
- wagtail/locale/id_ID/LC_MESSAGES/django.po +1 -1
- wagtail/locale/is_IS/LC_MESSAGES/django.mo +0 -0
- wagtail/locale/is_IS/LC_MESSAGES/django.po +15 -4
- wagtail/locale/it/LC_MESSAGES/django.mo +0 -0
- wagtail/locale/it/LC_MESSAGES/django.po +10 -1
- wagtail/locale/ja/LC_MESSAGES/django.po +1 -1
- wagtail/locale/ka/LC_MESSAGES/django.po +1 -1
- wagtail/locale/ko/LC_MESSAGES/django.po +1 -1
- wagtail/locale/lt/LC_MESSAGES/django.po +1 -1
- wagtail/locale/lv/LC_MESSAGES/django.po +1 -1
- wagtail/locale/mi/LC_MESSAGES/django.po +1 -1
- wagtail/locale/mn/LC_MESSAGES/django.po +1 -1
- wagtail/locale/my/LC_MESSAGES/django.po +1 -1
- wagtail/locale/nb/LC_MESSAGES/django.po +1 -1
- wagtail/locale/nl/LC_MESSAGES/django.mo +0 -0
- wagtail/locale/nl/LC_MESSAGES/django.po +10 -1
- wagtail/locale/pl/LC_MESSAGES/django.mo +0 -0
- wagtail/locale/pl/LC_MESSAGES/django.po +20 -5
- wagtail/locale/pt_BR/LC_MESSAGES/django.mo +0 -0
- wagtail/locale/pt_BR/LC_MESSAGES/django.po +10 -1
- wagtail/locale/pt_PT/LC_MESSAGES/django.po +1 -1
- wagtail/locale/ro/LC_MESSAGES/django.mo +0 -0
- wagtail/locale/ro/LC_MESSAGES/django.po +10 -1
- wagtail/locale/ru/LC_MESSAGES/django.mo +0 -0
- wagtail/locale/ru/LC_MESSAGES/django.po +10 -1
- wagtail/locale/sk_SK/LC_MESSAGES/django.po +1 -1
- wagtail/locale/sl/LC_MESSAGES/django.mo +0 -0
- wagtail/locale/sl/LC_MESSAGES/django.po +13 -1
- wagtail/locale/sv/LC_MESSAGES/django.mo +0 -0
- wagtail/locale/sv/LC_MESSAGES/django.po +10 -1
- wagtail/locale/tet/LC_MESSAGES/django.po +1 -1
- wagtail/locale/th/LC_MESSAGES/django.po +1 -1
- wagtail/locale/tr/LC_MESSAGES/django.po +1 -1
- wagtail/locale/tr_TR/LC_MESSAGES/django.po +1 -1
- wagtail/locale/ug/LC_MESSAGES/django.mo +0 -0
- wagtail/locale/ug/LC_MESSAGES/django.po +10 -1
- wagtail/locale/uk/LC_MESSAGES/django.po +1 -1
- wagtail/locale/vi/LC_MESSAGES/django.po +1 -1
- wagtail/locale/zh/LC_MESSAGES/django.po +1 -1
- wagtail/locale/zh_Hans/LC_MESSAGES/django.mo +0 -0
- wagtail/locale/zh_Hans/LC_MESSAGES/django.po +10 -1
- wagtail/locale/zh_Hant/LC_MESSAGES/django.po +1 -1
- wagtail/locales/locale/ar/LC_MESSAGES/django.po +1 -1
- wagtail/locales/locale/be/LC_MESSAGES/django.po +4 -4
- wagtail/locales/locale/bg/LC_MESSAGES/django.po +1 -1
- wagtail/locales/locale/ca/LC_MESSAGES/django.po +4 -4
- wagtail/locales/locale/cs/LC_MESSAGES/django.po +4 -4
- wagtail/locales/locale/cy/LC_MESSAGES/django.po +4 -4
- wagtail/locales/locale/da/LC_MESSAGES/django.po +1 -1
- wagtail/locales/locale/de/LC_MESSAGES/django.po +4 -4
- wagtail/locales/locale/dv/LC_MESSAGES/django.po +4 -4
- wagtail/locales/locale/el/LC_MESSAGES/django.po +1 -1
- wagtail/locales/locale/en/LC_MESSAGES/django.po +8 -8
- wagtail/locales/locale/es/LC_MESSAGES/django.po +4 -4
- wagtail/locales/locale/et/LC_MESSAGES/django.po +1 -1
- wagtail/locales/locale/fa/LC_MESSAGES/django.po +1 -1
- wagtail/locales/locale/fi/LC_MESSAGES/django.po +4 -4
- wagtail/locales/locale/fr/LC_MESSAGES/django.po +4 -4
- wagtail/locales/locale/gl/LC_MESSAGES/django.po +4 -4
- wagtail/locales/locale/he_IL/LC_MESSAGES/django.po +1 -1
- wagtail/locales/locale/hr_HR/LC_MESSAGES/django.po +4 -4
- wagtail/locales/locale/hu/LC_MESSAGES/django.po +4 -4
- wagtail/locales/locale/id_ID/LC_MESSAGES/django.po +1 -1
- wagtail/locales/locale/is_IS/LC_MESSAGES/django.po +4 -4
- wagtail/locales/locale/it/LC_MESSAGES/django.po +4 -4
- wagtail/locales/locale/ja/LC_MESSAGES/django.po +1 -1
- wagtail/locales/locale/ko/LC_MESSAGES/django.po +4 -4
- wagtail/locales/locale/lt/LC_MESSAGES/django.po +4 -4
- wagtail/locales/locale/lv/LC_MESSAGES/django.po +1 -1
- wagtail/locales/locale/mi/LC_MESSAGES/django.po +4 -4
- wagtail/locales/locale/mn/LC_MESSAGES/django.po +1 -1
- wagtail/locales/locale/my/LC_MESSAGES/django.po +1 -1
- wagtail/locales/locale/nb/LC_MESSAGES/django.po +1 -1
- wagtail/locales/locale/nl/LC_MESSAGES/django.po +4 -4
- wagtail/locales/locale/pl/LC_MESSAGES/django.po +4 -4
- wagtail/locales/locale/pt_BR/LC_MESSAGES/django.po +4 -4
- wagtail/locales/locale/pt_PT/LC_MESSAGES/django.po +4 -4
- wagtail/locales/locale/ro/LC_MESSAGES/django.po +4 -4
- wagtail/locales/locale/ru/LC_MESSAGES/django.po +4 -4
- wagtail/locales/locale/sk_SK/LC_MESSAGES/django.po +1 -1
- wagtail/locales/locale/sl/LC_MESSAGES/django.po +4 -4
- wagtail/locales/locale/sv/LC_MESSAGES/django.po +4 -4
- wagtail/locales/locale/tet/LC_MESSAGES/django.po +1 -1
- wagtail/locales/locale/th/LC_MESSAGES/django.po +1 -1
- wagtail/locales/locale/tr/LC_MESSAGES/django.po +1 -1
- wagtail/locales/locale/tr_TR/LC_MESSAGES/django.po +1 -1
- wagtail/locales/locale/ug/LC_MESSAGES/django.po +4 -4
- wagtail/locales/locale/uk/LC_MESSAGES/django.po +4 -4
- wagtail/locales/locale/vi/LC_MESSAGES/django.po +1 -1
- wagtail/locales/locale/zh/LC_MESSAGES/django.po +1 -1
- wagtail/locales/locale/zh_Hans/LC_MESSAGES/django.po +4 -4
- wagtail/locales/locale/zh_Hant/LC_MESSAGES/django.po +1 -1
- wagtail/locales/views.py +4 -1
- wagtail/migrations/0089_log_entry_data_json_null_to_object.py +1 -7
- wagtail/models/__init__.py +122 -14
- wagtail/models/audit_log.py +1 -3
- wagtail/models/i18n.py +1 -2
- wagtail/project_template/Dockerfile +3 -3
- wagtail/project_template/requirements.txt +2 -2
- wagtail/query.py +17 -4
- wagtail/rich_text/__init__.py +2 -3
- wagtail/rich_text/pages.py +2 -4
- wagtail/rich_text/rewriters.py +2 -2
- wagtail/search/backends/database/mysql/query.py +3 -3
- wagtail/search/backends/database/sqlite/query.py +6 -6
- wagtail/search/locale/en/LC_MESSAGES/django.po +1 -1
- wagtail/search/locale/gl/LC_MESSAGES/django.po +1 -1
- wagtail/sites/locale/ar/LC_MESSAGES/django.po +4 -4
- wagtail/sites/locale/be/LC_MESSAGES/django.po +4 -4
- wagtail/sites/locale/bn/LC_MESSAGES/django.po +1 -1
- wagtail/sites/locale/ca/LC_MESSAGES/django.po +4 -4
- wagtail/sites/locale/cs/LC_MESSAGES/django.po +4 -4
- wagtail/sites/locale/cy/LC_MESSAGES/django.po +4 -4
- wagtail/sites/locale/da/LC_MESSAGES/django.po +1 -1
- wagtail/sites/locale/de/LC_MESSAGES/django.po +4 -4
- wagtail/sites/locale/dv/LC_MESSAGES/django.po +1 -1
- wagtail/sites/locale/el/LC_MESSAGES/django.po +4 -4
- wagtail/sites/locale/en/LC_MESSAGES/django.po +6 -6
- wagtail/sites/locale/en_IN/LC_MESSAGES/django.po +1 -1
- wagtail/sites/locale/es/LC_MESSAGES/django.po +4 -4
- wagtail/sites/locale/es_419/LC_MESSAGES/django.po +1 -1
- wagtail/sites/locale/es_VE/LC_MESSAGES/django.po +1 -1
- wagtail/sites/locale/et/LC_MESSAGES/django.po +4 -4
- wagtail/sites/locale/fa/LC_MESSAGES/django.po +4 -4
- wagtail/sites/locale/fi/LC_MESSAGES/django.po +4 -4
- wagtail/sites/locale/fr/LC_MESSAGES/django.po +4 -4
- wagtail/sites/locale/gl/LC_MESSAGES/django.po +4 -4
- wagtail/sites/locale/he_IL/LC_MESSAGES/django.po +4 -4
- wagtail/sites/locale/hi/LC_MESSAGES/django.po +1 -1
- wagtail/sites/locale/hr_HR/LC_MESSAGES/django.po +4 -4
- wagtail/sites/locale/ht/LC_MESSAGES/django.po +4 -4
- wagtail/sites/locale/hu/LC_MESSAGES/django.po +4 -4
- wagtail/sites/locale/id_ID/LC_MESSAGES/django.po +4 -4
- wagtail/sites/locale/is_IS/LC_MESSAGES/django.po +4 -4
- wagtail/sites/locale/it/LC_MESSAGES/django.po +4 -4
- wagtail/sites/locale/ja/LC_MESSAGES/django.po +4 -4
- wagtail/sites/locale/ka/LC_MESSAGES/django.po +1 -1
- wagtail/sites/locale/ko/LC_MESSAGES/django.po +4 -4
- wagtail/sites/locale/lt/LC_MESSAGES/django.po +4 -4
- wagtail/sites/locale/lv/LC_MESSAGES/django.po +1 -1
- wagtail/sites/locale/mi/LC_MESSAGES/django.po +4 -4
- wagtail/sites/locale/mn/LC_MESSAGES/django.po +4 -4
- wagtail/sites/locale/my/LC_MESSAGES/django.po +4 -4
- wagtail/sites/locale/nb/LC_MESSAGES/django.po +4 -4
- wagtail/sites/locale/nl/LC_MESSAGES/django.po +4 -4
- wagtail/sites/locale/pl/LC_MESSAGES/django.po +4 -4
- wagtail/sites/locale/pt_BR/LC_MESSAGES/django.po +4 -4
- wagtail/sites/locale/pt_PT/LC_MESSAGES/django.po +4 -4
- wagtail/sites/locale/ro/LC_MESSAGES/django.po +4 -4
- wagtail/sites/locale/ru/LC_MESSAGES/django.po +4 -4
- wagtail/sites/locale/sk_SK/LC_MESSAGES/django.po +4 -4
- wagtail/sites/locale/sl/LC_MESSAGES/django.po +4 -4
- wagtail/sites/locale/sr/LC_MESSAGES/django.po +1 -1
- wagtail/sites/locale/sv/LC_MESSAGES/django.po +4 -4
- wagtail/sites/locale/ta/LC_MESSAGES/django.po +1 -1
- wagtail/sites/locale/tet/LC_MESSAGES/django.po +4 -4
- wagtail/sites/locale/th/LC_MESSAGES/django.po +4 -4
- wagtail/sites/locale/tr/LC_MESSAGES/django.po +4 -4
- wagtail/sites/locale/tr_TR/LC_MESSAGES/django.po +4 -4
- wagtail/sites/locale/ug/LC_MESSAGES/django.po +4 -4
- wagtail/sites/locale/uk/LC_MESSAGES/django.po +4 -4
- wagtail/sites/locale/vi/LC_MESSAGES/django.po +1 -1
- wagtail/sites/locale/zh_Hans/LC_MESSAGES/django.po +4 -4
- wagtail/sites/locale/zh_Hant/LC_MESSAGES/django.po +4 -4
- wagtail/sites/views.py +0 -1
- wagtail/snippets/action_menu.py +14 -4
- wagtail/snippets/locale/af/LC_MESSAGES/django.po +1 -1
- wagtail/snippets/locale/ar/LC_MESSAGES/django.mo +0 -0
- wagtail/snippets/locale/ar/LC_MESSAGES/django.po +1 -4
- wagtail/snippets/locale/az_AZ/LC_MESSAGES/django.po +1 -1
- wagtail/snippets/locale/be/LC_MESSAGES/django.mo +0 -0
- wagtail/snippets/locale/be/LC_MESSAGES/django.po +1 -4
- wagtail/snippets/locale/bg/LC_MESSAGES/django.po +1 -1
- wagtail/snippets/locale/bn/LC_MESSAGES/django.po +1 -1
- wagtail/snippets/locale/ca/LC_MESSAGES/django.mo +0 -0
- wagtail/snippets/locale/ca/LC_MESSAGES/django.po +1 -4
- wagtail/snippets/locale/cs/LC_MESSAGES/django.mo +0 -0
- wagtail/snippets/locale/cs/LC_MESSAGES/django.po +1 -4
- wagtail/snippets/locale/cy/LC_MESSAGES/django.mo +0 -0
- wagtail/snippets/locale/cy/LC_MESSAGES/django.po +73 -4
- wagtail/snippets/locale/da/LC_MESSAGES/django.po +1 -1
- wagtail/snippets/locale/de/LC_MESSAGES/django.mo +0 -0
- wagtail/snippets/locale/de/LC_MESSAGES/django.po +1 -4
- wagtail/snippets/locale/dv/LC_MESSAGES/django.mo +0 -0
- wagtail/snippets/locale/dv/LC_MESSAGES/django.po +1 -4
- wagtail/snippets/locale/el/LC_MESSAGES/django.mo +0 -0
- wagtail/snippets/locale/el/LC_MESSAGES/django.po +1 -4
- wagtail/snippets/locale/en/LC_MESSAGES/django.po +27 -33
- wagtail/snippets/locale/en_IN/LC_MESSAGES/django.po +1 -1
- wagtail/snippets/locale/es/LC_MESSAGES/django.mo +0 -0
- wagtail/snippets/locale/es/LC_MESSAGES/django.po +1 -4
- wagtail/snippets/locale/es_419/LC_MESSAGES/django.po +1 -1
- wagtail/snippets/locale/es_VE/LC_MESSAGES/django.po +1 -1
- wagtail/snippets/locale/et/LC_MESSAGES/django.mo +0 -0
- wagtail/snippets/locale/et/LC_MESSAGES/django.po +1 -4
- wagtail/snippets/locale/eu/LC_MESSAGES/django.po +1 -1
- wagtail/snippets/locale/fa/LC_MESSAGES/django.mo +0 -0
- wagtail/snippets/locale/fa/LC_MESSAGES/django.po +1 -4
- wagtail/snippets/locale/fi/LC_MESSAGES/django.mo +0 -0
- wagtail/snippets/locale/fi/LC_MESSAGES/django.po +1 -4
- wagtail/snippets/locale/fr/LC_MESSAGES/django.mo +0 -0
- wagtail/snippets/locale/fr/LC_MESSAGES/django.po +1 -4
- wagtail/snippets/locale/gl/LC_MESSAGES/django.mo +0 -0
- wagtail/snippets/locale/gl/LC_MESSAGES/django.po +1 -4
- wagtail/snippets/locale/he_IL/LC_MESSAGES/django.po +1 -1
- wagtail/snippets/locale/hi/LC_MESSAGES/django.po +1 -1
- wagtail/snippets/locale/hr_HR/LC_MESSAGES/django.mo +0 -0
- wagtail/snippets/locale/hr_HR/LC_MESSAGES/django.po +1 -4
- wagtail/snippets/locale/ht/LC_MESSAGES/django.po +1 -1
- wagtail/snippets/locale/hu/LC_MESSAGES/django.mo +0 -0
- wagtail/snippets/locale/hu/LC_MESSAGES/django.po +1 -4
- wagtail/snippets/locale/id_ID/LC_MESSAGES/django.po +1 -1
- wagtail/snippets/locale/is_IS/LC_MESSAGES/django.mo +0 -0
- wagtail/snippets/locale/is_IS/LC_MESSAGES/django.po +1 -4
- wagtail/snippets/locale/it/LC_MESSAGES/django.mo +0 -0
- wagtail/snippets/locale/it/LC_MESSAGES/django.po +1 -4
- wagtail/snippets/locale/ja/LC_MESSAGES/django.mo +0 -0
- wagtail/snippets/locale/ja/LC_MESSAGES/django.po +1 -4
- wagtail/snippets/locale/ka/LC_MESSAGES/django.po +1 -1
- wagtail/snippets/locale/ko/LC_MESSAGES/django.mo +0 -0
- wagtail/snippets/locale/ko/LC_MESSAGES/django.po +1 -4
- wagtail/snippets/locale/lt/LC_MESSAGES/django.mo +0 -0
- wagtail/snippets/locale/lt/LC_MESSAGES/django.po +1 -4
- wagtail/snippets/locale/lv/LC_MESSAGES/django.mo +0 -0
- wagtail/snippets/locale/lv/LC_MESSAGES/django.po +1 -4
- wagtail/snippets/locale/mi/LC_MESSAGES/django.mo +0 -0
- wagtail/snippets/locale/mi/LC_MESSAGES/django.po +1 -4
- wagtail/snippets/locale/mn/LC_MESSAGES/django.po +1 -1
- wagtail/snippets/locale/my/LC_MESSAGES/django.po +1 -1
- wagtail/snippets/locale/nb/LC_MESSAGES/django.mo +0 -0
- wagtail/snippets/locale/nb/LC_MESSAGES/django.po +1 -4
- wagtail/snippets/locale/nl/LC_MESSAGES/django.mo +0 -0
- wagtail/snippets/locale/nl/LC_MESSAGES/django.po +1 -4
- wagtail/snippets/locale/pl/LC_MESSAGES/django.mo +0 -0
- wagtail/snippets/locale/pl/LC_MESSAGES/django.po +1 -4
- wagtail/snippets/locale/pt_BR/LC_MESSAGES/django.mo +0 -0
- wagtail/snippets/locale/pt_BR/LC_MESSAGES/django.po +1 -4
- wagtail/snippets/locale/pt_PT/LC_MESSAGES/django.mo +0 -0
- wagtail/snippets/locale/pt_PT/LC_MESSAGES/django.po +1 -4
- wagtail/snippets/locale/ro/LC_MESSAGES/django.mo +0 -0
- wagtail/snippets/locale/ro/LC_MESSAGES/django.po +1 -4
- wagtail/snippets/locale/ru/LC_MESSAGES/django.mo +0 -0
- wagtail/snippets/locale/ru/LC_MESSAGES/django.po +1 -4
- wagtail/snippets/locale/sk_SK/LC_MESSAGES/django.mo +0 -0
- wagtail/snippets/locale/sk_SK/LC_MESSAGES/django.po +1 -4
- wagtail/snippets/locale/sl/LC_MESSAGES/django.mo +0 -0
- wagtail/snippets/locale/sl/LC_MESSAGES/django.po +1 -4
- wagtail/snippets/locale/sr/LC_MESSAGES/django.po +1 -1
- wagtail/snippets/locale/sv/LC_MESSAGES/django.mo +0 -0
- wagtail/snippets/locale/sv/LC_MESSAGES/django.po +1 -4
- wagtail/snippets/locale/ta/LC_MESSAGES/django.po +1 -1
- wagtail/snippets/locale/tet/LC_MESSAGES/django.mo +0 -0
- wagtail/snippets/locale/tet/LC_MESSAGES/django.po +1 -4
- wagtail/snippets/locale/th/LC_MESSAGES/django.po +1 -1
- wagtail/snippets/locale/tr/LC_MESSAGES/django.mo +0 -0
- wagtail/snippets/locale/tr/LC_MESSAGES/django.po +1 -4
- wagtail/snippets/locale/tr_TR/LC_MESSAGES/django.mo +0 -0
- wagtail/snippets/locale/tr_TR/LC_MESSAGES/django.po +1 -4
- wagtail/snippets/locale/ug/LC_MESSAGES/django.mo +0 -0
- wagtail/snippets/locale/ug/LC_MESSAGES/django.po +1 -4
- wagtail/snippets/locale/uk/LC_MESSAGES/django.mo +0 -0
- wagtail/snippets/locale/uk/LC_MESSAGES/django.po +1 -4
- wagtail/snippets/locale/vi/LC_MESSAGES/django.po +1 -1
- wagtail/snippets/locale/zh/LC_MESSAGES/django.po +1 -1
- wagtail/snippets/locale/zh_Hans/LC_MESSAGES/django.mo +0 -0
- wagtail/snippets/locale/zh_Hans/LC_MESSAGES/django.po +1 -4
- wagtail/snippets/locale/zh_Hant/LC_MESSAGES/django.mo +0 -0
- wagtail/snippets/locale/zh_Hant/LC_MESSAGES/django.po +1 -4
- wagtail/snippets/static/wagtailsnippets/js/snippet-chooser-telepath.js +1 -1
- wagtail/snippets/static/wagtailsnippets/js/snippet-chooser.js +1 -1
- wagtail/snippets/templates/wagtailsnippets/bulk_actions/confirm_bulk_delete.html +5 -3
- wagtail/snippets/templates/wagtailsnippets/snippets/action_menu/locked.html +1 -1
- wagtail/snippets/templates/wagtailsnippets/snippets/action_menu/menu.html +1 -11
- wagtail/snippets/templates/wagtailsnippets/snippets/action_menu/menu_item.html +1 -6
- wagtail/snippets/templates/wagtailsnippets/snippets/action_menu/publish.html +1 -1
- wagtail/snippets/templates/wagtailsnippets/snippets/action_menu/save.html +1 -1
- wagtail/snippets/templates/wagtailsnippets/snippets/create.html +1 -18
- wagtail/snippets/templates/wagtailsnippets/snippets/edit.html +1 -14
- wagtail/snippets/templates/wagtailsnippets/snippets/index.html +2 -5
- wagtail/snippets/tests/test_preview.py +193 -61
- wagtail/snippets/tests/test_snippets.py +247 -38
- wagtail/snippets/tests/test_usage.py +5 -0
- wagtail/snippets/tests/test_viewset.py +25 -9
- wagtail/snippets/tests/test_workflows.py +232 -19
- wagtail/snippets/views/snippets.py +1 -10
- wagtail/test/numberformat.py +104 -0
- wagtail/test/settings.py +10 -0
- wagtail/test/settings_ui.py +2 -0
- wagtail/test/testapp/migrations/0010_alter_customimage_file_and_more.py +71 -78
- wagtail/test/testapp/migrations/0040_nocreatablesubpagetypespage_nosubpagetypespage.py +54 -0
- wagtail/test/testapp/migrations/0041_alter_jsonstreammodel_options.py +17 -0
- wagtail/test/testapp/migrations/0042_alter_customdocument_file_size_and_more.py +28 -0
- wagtail/test/testapp/migrations/0043_customimage_description.py +41 -0
- wagtail/test/testapp/migrations/0044_custompreviewsizesmodel_custompreviewsizespage.py +52 -0
- wagtail/test/testapp/migrations/0045_alter_streampage_body.py +52 -0
- wagtail/test/testapp/models.py +62 -4
- wagtail/test/testapp/rich_text.py +2 -2
- wagtail/test/testapp/templates/tests/form_page_landing.html +2 -1
- wagtail/test/testapp/urls.py +5 -0
- wagtail/test/testapp/views.py +5 -0
- wagtail/test/utils/page_tests.py +5 -5
- wagtail/test/utils/template_tests.py +2 -2
- wagtail/tests/test_blocks.py +15 -0
- wagtail/tests/test_page_permissions.py +109 -0
- wagtail/tests/test_revision_model.py +27 -0
- wagtail/tests/test_signals.py +21 -2
- wagtail/tests/test_tests.py +30 -0
- wagtail/users/locale/ar/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/ar/LC_MESSAGES/django.po +13 -25
- wagtail/users/locale/be/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/be/LC_MESSAGES/django.po +13 -25
- wagtail/users/locale/bg/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/bg/LC_MESSAGES/django.po +4 -10
- wagtail/users/locale/bn/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/bn/LC_MESSAGES/django.po +1 -13
- wagtail/users/locale/ca/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/ca/LC_MESSAGES/django.po +19 -34
- wagtail/users/locale/cs/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/cs/LC_MESSAGES/django.po +13 -25
- wagtail/users/locale/cy/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/cy/LC_MESSAGES/django.po +121 -25
- wagtail/users/locale/da/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/da/LC_MESSAGES/django.po +1 -13
- wagtail/users/locale/de/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/de/LC_MESSAGES/django.po +21 -35
- wagtail/users/locale/dv/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/dv/LC_MESSAGES/django.po +4 -13
- wagtail/users/locale/el/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/el/LC_MESSAGES/django.po +13 -25
- wagtail/users/locale/en/LC_MESSAGES/django.po +89 -113
- wagtail/users/locale/es/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/es/LC_MESSAGES/django.po +13 -25
- wagtail/users/locale/es_419/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/es_419/LC_MESSAGES/django.po +1 -7
- wagtail/users/locale/et/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/et/LC_MESSAGES/django.po +13 -25
- wagtail/users/locale/eu/LC_MESSAGES/django.po +1 -1
- wagtail/users/locale/fa/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/fa/LC_MESSAGES/django.po +13 -25
- wagtail/users/locale/fi/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/fi/LC_MESSAGES/django.po +22 -34
- wagtail/users/locale/fr/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/fr/LC_MESSAGES/django.po +20 -34
- wagtail/users/locale/gl/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/gl/LC_MESSAGES/django.po +19 -34
- wagtail/users/locale/he_IL/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/he_IL/LC_MESSAGES/django.po +13 -19
- wagtail/users/locale/hr_HR/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/hr_HR/LC_MESSAGES/django.po +13 -25
- wagtail/users/locale/hu/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/hu/LC_MESSAGES/django.po +13 -25
- wagtail/users/locale/hy/LC_MESSAGES/django.po +1 -1
- wagtail/users/locale/id_ID/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/id_ID/LC_MESSAGES/django.po +13 -25
- wagtail/users/locale/is_IS/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/is_IS/LC_MESSAGES/django.po +24 -37
- wagtail/users/locale/it/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/it/LC_MESSAGES/django.po +13 -34
- wagtail/users/locale/ja/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/ja/LC_MESSAGES/django.po +13 -25
- wagtail/users/locale/ka/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/ka/LC_MESSAGES/django.po +7 -13
- wagtail/users/locale/ko/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/ko/LC_MESSAGES/django.po +13 -25
- wagtail/users/locale/lt/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/lt/LC_MESSAGES/django.po +13 -25
- wagtail/users/locale/lv/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/lv/LC_MESSAGES/django.po +10 -22
- wagtail/users/locale/mi/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/mi/LC_MESSAGES/django.po +13 -25
- wagtail/users/locale/mn/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/mn/LC_MESSAGES/django.po +13 -25
- wagtail/users/locale/my/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/my/LC_MESSAGES/django.po +13 -16
- wagtail/users/locale/nb/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/nb/LC_MESSAGES/django.po +13 -25
- wagtail/users/locale/nl/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/nl/LC_MESSAGES/django.po +19 -34
- wagtail/users/locale/pl/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/pl/LC_MESSAGES/django.po +44 -27
- wagtail/users/locale/pt_BR/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/pt_BR/LC_MESSAGES/django.po +13 -34
- wagtail/users/locale/pt_PT/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/pt_PT/LC_MESSAGES/django.po +13 -25
- wagtail/users/locale/ro/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/ro/LC_MESSAGES/django.po +13 -34
- wagtail/users/locale/ru/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/ru/LC_MESSAGES/django.po +19 -34
- wagtail/users/locale/sk_SK/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/sk_SK/LC_MESSAGES/django.po +13 -22
- wagtail/users/locale/sl/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/sl/LC_MESSAGES/django.po +16 -34
- wagtail/users/locale/sv/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/sv/LC_MESSAGES/django.po +13 -28
- wagtail/users/locale/tet/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/tet/LC_MESSAGES/django.po +13 -22
- wagtail/users/locale/th/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/th/LC_MESSAGES/django.po +13 -22
- wagtail/users/locale/tr/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/tr/LC_MESSAGES/django.po +13 -25
- wagtail/users/locale/tr_TR/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/tr_TR/LC_MESSAGES/django.po +13 -25
- wagtail/users/locale/ug/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/ug/LC_MESSAGES/django.po +21 -35
- wagtail/users/locale/uk/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/uk/LC_MESSAGES/django.po +13 -25
- wagtail/users/locale/vi/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/vi/LC_MESSAGES/django.po +10 -22
- wagtail/users/locale/zh/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/zh/LC_MESSAGES/django.po +4 -10
- wagtail/users/locale/zh_Hans/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/zh_Hans/LC_MESSAGES/django.po +13 -25
- wagtail/users/locale/zh_Hant/LC_MESSAGES/django.mo +0 -0
- wagtail/users/locale/zh_Hant/LC_MESSAGES/django.po +13 -25
- wagtail/users/migrations/0014_userprofile_contrast.py +23 -0
- wagtail/users/models.py +11 -0
- wagtail/users/templates/wagtailusers/bulk_actions/confirm_bulk_assign_role.html +5 -1
- wagtail/users/templates/wagtailusers/bulk_actions/confirm_bulk_delete.html +5 -1
- wagtail/users/templates/wagtailusers/bulk_actions/confirm_bulk_set_active_state.html +5 -1
- wagtail/users/templates/wagtailusers/groups/create.html +19 -17
- wagtail/users/templates/wagtailusers/groups/edit.html +2 -40
- wagtail/users/templates/wagtailusers/groups/includes/formatted_permissions.html +1 -62
- wagtail/users/templates/wagtailusers/groups/includes/page_permissions_formset.html +0 -1
- wagtail/users/templates/wagtailusers/users/create.html +46 -50
- wagtail/users/templates/wagtailusers/users/edit.html +45 -62
- wagtail/users/templates/wagtailusers/users/index.html +1 -4
- wagtail/users/templatetags/wagtailusers_tags.py +1 -5
- wagtail/users/tests/test_admin_views.py +85 -66
- wagtail/users/views/groups.py +4 -1
- wagtail/users/views/users.py +2 -0
- {wagtail-6.2.3.dist-info → wagtail-6.3.dist-info}/METADATA +7 -7
- {wagtail-6.2.3.dist-info → wagtail-6.3.dist-info}/RECORD +1561 -1568
- wagtail/admin/static/wagtailadmin/js/preview-panel.js +0 -2
- wagtail/admin/static/wagtailadmin/js/preview-panel.js.LICENSE.txt +0 -11
- wagtail/admin/templates/wagtailadmin/generic/history_results.html +0 -1
- wagtail/admin/templates/wagtailadmin/page_privacy/ancestor_privacy.html +0 -3
- wagtail/admin/templates/wagtailadmin/pages/usage_results.html +0 -6
- wagtail/admin/templates/wagtailadmin/shared/workflow_history/index.html +0 -17
- wagtail/admin/templates/wagtailadmin/shared/workflow_history/results.html +0 -17
- wagtail/admin/templates/wagtailadmin/workflows/usage.html +0 -44
- wagtail/contrib/redirects/locale/af/LC_MESSAGES/django.po +0 -22
- wagtail/contrib/search_promotions/locale/es_VE/LC_MESSAGES/django.po +0 -23
- wagtail/contrib/search_promotions/locale/ta/LC_MESSAGES/django.po +0 -22
- wagtail/contrib/settings/locale/af/LC_MESSAGES/django.po +0 -23
- wagtail/contrib/settings/locale/bg/LC_MESSAGES/django.po +0 -22
- wagtail/documents/locale/en_IN/LC_MESSAGES/django.po +0 -25
- wagtail/documents/locale/es_VE/LC_MESSAGES/django.po +0 -23
- wagtail/documents/locale/hi/LC_MESSAGES/django.po +0 -25
- wagtail/documents/locale/sr/LC_MESSAGES/django.po +0 -23
- wagtail/documents/locale/ta/LC_MESSAGES/django.po +0 -22
- wagtail/images/locale/af/LC_MESSAGES/django.po +0 -25
- wagtail/images/locale/en_IN/LC_MESSAGES/django.po +0 -25
- wagtail/images/locale/hi/LC_MESSAGES/django.po +0 -25
- wagtail/users/locale/af/LC_MESSAGES/django.po +0 -25
- wagtail/users/locale/az_AZ/LC_MESSAGES/django.po +0 -28
- wagtail/users/locale/es_VE/LC_MESSAGES/django.po +0 -26
- wagtail/users/locale/hi/LC_MESSAGES/django.po +0 -25
- wagtail/users/locale/ht/LC_MESSAGES/django.po +0 -25
- {wagtail-6.2.3.dist-info → wagtail-6.3.dist-info}/LICENSE +0 -0
- {wagtail-6.2.3.dist-info → wagtail-6.3.dist-info}/WHEEL +0 -0
- {wagtail-6.2.3.dist-info → wagtail-6.3.dist-info}/entry_points.txt +0 -0
- {wagtail-6.2.3.dist-info → wagtail-6.3.dist-info}/top_level.txt +0 -0
|
@@ -8,7 +8,6 @@ from django.core.exceptions import (
|
|
|
8
8
|
PermissionDenied,
|
|
9
9
|
)
|
|
10
10
|
from django.db import models, transaction
|
|
11
|
-
from django.db.models import Q
|
|
12
11
|
from django.db.models.constants import LOOKUP_SEP
|
|
13
12
|
from django.db.models.functions import Cast
|
|
14
13
|
from django.http import Http404, HttpResponseRedirect
|
|
@@ -29,7 +28,6 @@ from wagtail.actions.unpublish import UnpublishAction
|
|
|
29
28
|
from wagtail.admin import messages
|
|
30
29
|
from wagtail.admin.filters import WagtailFilterSet
|
|
31
30
|
from wagtail.admin.forms.models import WagtailAdminModelForm
|
|
32
|
-
from wagtail.admin.forms.search import SearchForm
|
|
33
31
|
from wagtail.admin.panels import get_edit_handler
|
|
34
32
|
from wagtail.admin.ui.components import Component, MediaContainer
|
|
35
33
|
from wagtail.admin.ui.fields import display_class_registry
|
|
@@ -43,6 +41,7 @@ from wagtail.admin.ui.tables import (
|
|
|
43
41
|
from wagtail.admin.utils import get_latest_str, get_valid_next_url_from_request
|
|
44
42
|
from wagtail.admin.views.mixins import SpreadsheetExportMixin
|
|
45
43
|
from wagtail.admin.widgets.button import (
|
|
44
|
+
Button,
|
|
46
45
|
ButtonWithDropdown,
|
|
47
46
|
HeaderButton,
|
|
48
47
|
ListingButton,
|
|
@@ -51,8 +50,8 @@ from wagtail.log_actions import log
|
|
|
51
50
|
from wagtail.log_actions import registry as log_registry
|
|
52
51
|
from wagtail.models import DraftStateMixin, Locale, ReferenceIndex
|
|
53
52
|
from wagtail.models.audit_log import ModelLogEntry
|
|
54
|
-
from wagtail.search.backends import get_search_backend
|
|
55
53
|
from wagtail.search.index import class_is_indexed
|
|
54
|
+
from wagtail.utils.deprecation import RemovedInWagtail70Warning
|
|
56
55
|
|
|
57
56
|
from .base import BaseListingView, WagtailAdminTemplateMixin
|
|
58
57
|
from .mixins import BeforeAfterHookMixin, HookResponseMixin, LocaleMixin, PanelMixin
|
|
@@ -74,57 +73,40 @@ class IndexView(
|
|
|
74
73
|
inspect_url_name = None
|
|
75
74
|
delete_url_name = None
|
|
76
75
|
any_permission_required = ["add", "change", "delete", "view"]
|
|
77
|
-
search_fields = None
|
|
78
|
-
search_backend_name = "default"
|
|
79
|
-
is_searchable = None
|
|
80
|
-
search_kwarg = "q"
|
|
81
76
|
columns = None # If not explicitly specified, will be derived from list_display
|
|
82
77
|
list_display = ["__str__", UpdatedAtColumn()]
|
|
83
78
|
list_filter = None
|
|
84
79
|
show_other_searches = False
|
|
85
80
|
|
|
86
|
-
def setup(self, request, *args, **kwargs):
|
|
87
|
-
super().setup(request, *args, **kwargs)
|
|
88
|
-
|
|
89
|
-
if not self.filterset_class:
|
|
90
|
-
# Allow filterset_class to be dynamically constructed from list_filter
|
|
91
|
-
self.filterset_class = self.get_filterset_class()
|
|
92
|
-
|
|
93
|
-
self.setup_search()
|
|
94
|
-
|
|
95
|
-
def setup_search(self):
|
|
96
|
-
self.is_searchable = self.get_is_searchable()
|
|
97
|
-
self.search_url = self.get_search_url()
|
|
98
|
-
self.search_form = self.get_search_form()
|
|
99
|
-
self.is_searching = False
|
|
100
|
-
self.search_query = None
|
|
101
|
-
|
|
102
|
-
if self.search_form and self.search_form.is_valid():
|
|
103
|
-
self.search_query = self.search_form.cleaned_data[self.search_kwarg]
|
|
104
|
-
self.is_searching = bool(self.search_query)
|
|
105
|
-
|
|
106
|
-
def get_is_searchable(self):
|
|
107
|
-
if self.model is None:
|
|
108
|
-
return False
|
|
109
|
-
if self.is_searchable is None:
|
|
110
|
-
return class_is_indexed(self.model) or self.search_fields
|
|
111
|
-
return self.is_searchable
|
|
112
|
-
|
|
113
81
|
def get_search_url(self):
|
|
114
|
-
|
|
115
|
-
|
|
82
|
+
# This is only used by views that do not use breadcrumbs, thus uses the
|
|
83
|
+
# legacy header.html. The search in that header template accepts both
|
|
84
|
+
# the search_url (which really should be search_url_name) and the
|
|
85
|
+
# index_results_url. This means we can advise using the latter instead,
|
|
86
|
+
# without having to instruct how to set up breadcrumbs.
|
|
87
|
+
warnings.warn(
|
|
88
|
+
"`IndexView.get_search_url` is deprecated. "
|
|
89
|
+
"Use `IndexView.get_index_results_url` instead.",
|
|
90
|
+
RemovedInWagtail70Warning,
|
|
91
|
+
)
|
|
116
92
|
return self.index_url_name
|
|
117
93
|
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
94
|
+
@cached_property
|
|
95
|
+
def search_url(self):
|
|
96
|
+
return self.get_search_url()
|
|
121
97
|
|
|
122
|
-
|
|
123
|
-
|
|
98
|
+
@cached_property
|
|
99
|
+
def is_searchable(self):
|
|
100
|
+
# Do not automatically enable search if the model is not indexed and
|
|
101
|
+
# search_fields is not defined.
|
|
102
|
+
if not (self.model and class_is_indexed(self.model)) and not self.search_fields:
|
|
103
|
+
return False
|
|
124
104
|
|
|
125
|
-
|
|
105
|
+
# Require the results-only view to be set up before enabling search
|
|
106
|
+
return bool(self.index_results_url or self.search_url)
|
|
126
107
|
|
|
127
|
-
|
|
108
|
+
@cached_property
|
|
109
|
+
def filterset_class(self):
|
|
128
110
|
# Allow filterset_class to be dynamically constructed from list_filter.
|
|
129
111
|
|
|
130
112
|
# If the model is translatable, ensure a ``WagtailFilterSet`` subclass
|
|
@@ -197,43 +179,6 @@ class IndexView(
|
|
|
197
179
|
|
|
198
180
|
return queryset
|
|
199
181
|
|
|
200
|
-
def get_queryset(self):
|
|
201
|
-
queryset = super().get_queryset()
|
|
202
|
-
queryset = self.search_queryset(queryset)
|
|
203
|
-
return queryset
|
|
204
|
-
|
|
205
|
-
def search_queryset(self, queryset):
|
|
206
|
-
if not self.is_searching:
|
|
207
|
-
return queryset
|
|
208
|
-
|
|
209
|
-
if class_is_indexed(queryset.model) and self.search_backend_name:
|
|
210
|
-
search_backend = get_search_backend(self.search_backend_name)
|
|
211
|
-
if queryset.model.get_autocomplete_search_fields():
|
|
212
|
-
return search_backend.autocomplete(
|
|
213
|
-
self.search_query,
|
|
214
|
-
queryset,
|
|
215
|
-
fields=self.search_fields,
|
|
216
|
-
order_by_relevance=(not self.is_explicitly_ordered),
|
|
217
|
-
)
|
|
218
|
-
else:
|
|
219
|
-
# fall back on non-autocompleting search
|
|
220
|
-
warnings.warn(
|
|
221
|
-
f"{queryset.model} is defined as Indexable but does not specify "
|
|
222
|
-
"any AutocompleteFields. Searches within the admin will only "
|
|
223
|
-
"respond to complete words.",
|
|
224
|
-
category=RuntimeWarning,
|
|
225
|
-
)
|
|
226
|
-
return search_backend.search(
|
|
227
|
-
self.search_query,
|
|
228
|
-
queryset,
|
|
229
|
-
fields=self.search_fields,
|
|
230
|
-
order_by_relevance=(not self.is_explicitly_ordered),
|
|
231
|
-
)
|
|
232
|
-
query = Q()
|
|
233
|
-
for field in self.search_fields or []:
|
|
234
|
-
query |= Q(**{field + "__icontains": self.search_query})
|
|
235
|
-
return queryset.filter(query)
|
|
236
|
-
|
|
237
182
|
def _get_title_column_class(self, column_class):
|
|
238
183
|
if not issubclass(column_class, ButtonsColumnMixin):
|
|
239
184
|
|
|
@@ -356,13 +301,6 @@ class IndexView(
|
|
|
356
301
|
return capfirst(self.model._meta.verbose_name_plural)
|
|
357
302
|
return self.page_title
|
|
358
303
|
|
|
359
|
-
def get_breadcrumbs_items(self):
|
|
360
|
-
if not self.model:
|
|
361
|
-
return self.breadcrumbs_items
|
|
362
|
-
return self.breadcrumbs_items + [
|
|
363
|
-
{"url": "", "label": capfirst(self.model._meta.verbose_name_plural)},
|
|
364
|
-
]
|
|
365
|
-
|
|
366
304
|
@cached_property
|
|
367
305
|
def header_buttons(self):
|
|
368
306
|
buttons = []
|
|
@@ -453,6 +391,12 @@ class IndexView(
|
|
|
453
391
|
)
|
|
454
392
|
return _("Add")
|
|
455
393
|
|
|
394
|
+
@cached_property
|
|
395
|
+
def verbose_name_plural(self):
|
|
396
|
+
if self.model:
|
|
397
|
+
return self.model._meta.verbose_name_plural
|
|
398
|
+
return None
|
|
399
|
+
|
|
456
400
|
def get_context_data(self, *args, **kwargs):
|
|
457
401
|
context = super().get_context_data(*args, **kwargs)
|
|
458
402
|
|
|
@@ -461,11 +405,12 @@ class IndexView(
|
|
|
461
405
|
context["add_url"] = context["header_action_url"] = self.add_url
|
|
462
406
|
context["header_action_label"] = self.add_item_label
|
|
463
407
|
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
408
|
+
# RemovedInWagtail70Warning:
|
|
409
|
+
# Remove these in favor of using search_form and index_results_url
|
|
410
|
+
if self.is_searchable and not self.index_results_url:
|
|
411
|
+
context["is_searchable"] = self.is_searchable
|
|
412
|
+
context["search_url"] = self.search_url
|
|
413
|
+
|
|
469
414
|
context["model_opts"] = self.model and self.model._meta
|
|
470
415
|
return context
|
|
471
416
|
|
|
@@ -498,6 +443,7 @@ class CreateView(
|
|
|
498
443
|
"The %(model_name)s could not be created due to errors."
|
|
499
444
|
)
|
|
500
445
|
submit_button_label = gettext_lazy("Create")
|
|
446
|
+
submit_button_active_label = gettext_lazy("Creating…")
|
|
501
447
|
actions = ["create"]
|
|
502
448
|
|
|
503
449
|
def setup(self, request, *args, **kwargs):
|
|
@@ -588,14 +534,20 @@ class CreateView(
|
|
|
588
534
|
% {"model_name": self.model and self.model._meta.verbose_name}
|
|
589
535
|
)
|
|
590
536
|
|
|
537
|
+
@cached_property
|
|
538
|
+
def has_unsaved_changes(self):
|
|
539
|
+
return self.form.is_bound
|
|
540
|
+
|
|
591
541
|
def get_context_data(self, **kwargs):
|
|
592
542
|
context = super().get_context_data(**kwargs)
|
|
593
543
|
self.form = context.get("form")
|
|
594
544
|
side_panels = self.get_side_panels()
|
|
595
545
|
context["action_url"] = self.add_url
|
|
596
546
|
context["submit_button_label"] = self.submit_button_label
|
|
547
|
+
context["submit_button_active_label"] = self.submit_button_active_label
|
|
597
548
|
context["side_panels"] = side_panels
|
|
598
549
|
context["media"] += side_panels.media
|
|
550
|
+
context["has_unsaved_changes"] = self.has_unsaved_changes
|
|
599
551
|
return context
|
|
600
552
|
|
|
601
553
|
def get_side_panels(self):
|
|
@@ -705,8 +657,10 @@ class EditView(
|
|
|
705
657
|
form_class = None
|
|
706
658
|
index_url_name = None
|
|
707
659
|
edit_url_name = None
|
|
660
|
+
copy_url_name = None
|
|
708
661
|
delete_url_name = None
|
|
709
662
|
history_url_name = None
|
|
663
|
+
inspect_url_name = None
|
|
710
664
|
usage_url_name = None
|
|
711
665
|
page_title = gettext_lazy("Editing")
|
|
712
666
|
context_object_name = None
|
|
@@ -716,6 +670,7 @@ class EditView(
|
|
|
716
670
|
success_message = gettext_lazy("%(model_name)s '%(object)s' updated.")
|
|
717
671
|
error_message = gettext_lazy("The %(model_name)s could not be saved due to errors.")
|
|
718
672
|
submit_button_label = gettext_lazy("Save")
|
|
673
|
+
submit_button_active_label = gettext_lazy("Saving…")
|
|
719
674
|
actions = ["edit"]
|
|
720
675
|
|
|
721
676
|
def setup(self, request, *args, **kwargs):
|
|
@@ -779,6 +734,42 @@ class EditView(
|
|
|
779
734
|
.first()
|
|
780
735
|
)
|
|
781
736
|
|
|
737
|
+
@cached_property
|
|
738
|
+
def can_delete(self):
|
|
739
|
+
return self.user_has_permission_for_instance("delete", self.object)
|
|
740
|
+
|
|
741
|
+
@cached_property
|
|
742
|
+
def header_more_buttons(self):
|
|
743
|
+
buttons = []
|
|
744
|
+
if copy_url := self.get_copy_url():
|
|
745
|
+
buttons.append(
|
|
746
|
+
Button(
|
|
747
|
+
_("Copy"),
|
|
748
|
+
url=copy_url,
|
|
749
|
+
icon_name="copy",
|
|
750
|
+
priority=10,
|
|
751
|
+
)
|
|
752
|
+
)
|
|
753
|
+
if self.can_delete and (delete_url := self.get_delete_url()):
|
|
754
|
+
buttons.append(
|
|
755
|
+
Button(
|
|
756
|
+
self.delete_item_label,
|
|
757
|
+
url=delete_url,
|
|
758
|
+
icon_name="bin",
|
|
759
|
+
priority=20,
|
|
760
|
+
)
|
|
761
|
+
)
|
|
762
|
+
if inspect_url := self.get_inspect_url():
|
|
763
|
+
buttons.append(
|
|
764
|
+
Button(
|
|
765
|
+
_("Inspect"),
|
|
766
|
+
url=inspect_url,
|
|
767
|
+
icon_name="info-circle",
|
|
768
|
+
priority=30,
|
|
769
|
+
)
|
|
770
|
+
)
|
|
771
|
+
return buttons
|
|
772
|
+
|
|
782
773
|
def get_edit_url(self):
|
|
783
774
|
if not self.edit_url_name:
|
|
784
775
|
raise ImproperlyConfigured(
|
|
@@ -787,6 +778,10 @@ class EditView(
|
|
|
787
778
|
)
|
|
788
779
|
return reverse(self.edit_url_name, args=(quote(self.object.pk),))
|
|
789
780
|
|
|
781
|
+
def get_copy_url(self):
|
|
782
|
+
if self.copy_url_name and self.user_has_permission("add"):
|
|
783
|
+
return reverse(self.copy_url_name, args=(quote(self.object.pk),))
|
|
784
|
+
|
|
790
785
|
def get_delete_url(self):
|
|
791
786
|
if self.delete_url_name:
|
|
792
787
|
return reverse(self.delete_url_name, args=(quote(self.object.pk),))
|
|
@@ -795,6 +790,10 @@ class EditView(
|
|
|
795
790
|
if self.history_url_name:
|
|
796
791
|
return reverse(self.history_url_name, args=(quote(self.object.pk),))
|
|
797
792
|
|
|
793
|
+
def get_inspect_url(self):
|
|
794
|
+
if self.inspect_url_name:
|
|
795
|
+
return reverse(self.inspect_url_name, args=(quote(self.object.pk),))
|
|
796
|
+
|
|
798
797
|
def get_usage_url(self):
|
|
799
798
|
if self.usage_url_name:
|
|
800
799
|
return reverse(self.usage_url_name, args=[quote(self.object.pk)])
|
|
@@ -895,6 +894,10 @@ class EditView(
|
|
|
895
894
|
messages.validation_error(self.request, error_message, form)
|
|
896
895
|
return super().form_invalid(form)
|
|
897
896
|
|
|
897
|
+
@cached_property
|
|
898
|
+
def has_unsaved_changes(self):
|
|
899
|
+
return self.form.is_bound
|
|
900
|
+
|
|
898
901
|
def get_context_data(self, **kwargs):
|
|
899
902
|
context = super().get_context_data(**kwargs)
|
|
900
903
|
self.form = context.get("form")
|
|
@@ -904,9 +907,9 @@ class EditView(
|
|
|
904
907
|
context["side_panels"] = side_panels
|
|
905
908
|
context["media"] += side_panels.media
|
|
906
909
|
context["submit_button_label"] = self.submit_button_label
|
|
907
|
-
context["
|
|
908
|
-
|
|
909
|
-
|
|
910
|
+
context["submit_button_active_label"] = self.submit_button_active_label
|
|
911
|
+
context["has_unsaved_changes"] = self.has_unsaved_changes
|
|
912
|
+
context["can_delete"] = self.can_delete
|
|
910
913
|
if context["can_delete"]:
|
|
911
914
|
context["delete_url"] = self.get_delete_url()
|
|
912
915
|
context["delete_item_label"] = self.delete_item_label
|
|
@@ -1034,7 +1037,7 @@ class DeleteView(
|
|
|
1034
1037
|
class InspectView(PermissionCheckedMixin, WagtailAdminTemplateMixin, TemplateView):
|
|
1035
1038
|
any_permission_required = ["add", "change", "delete", "view"]
|
|
1036
1039
|
template_name = "wagtailadmin/generic/inspect.html"
|
|
1037
|
-
page_title = gettext_lazy("
|
|
1040
|
+
page_title = gettext_lazy("Inspect")
|
|
1038
1041
|
model = None
|
|
1039
1042
|
index_url_name = None
|
|
1040
1043
|
edit_url_name = None
|
|
@@ -1071,12 +1074,25 @@ class InspectView(PermissionCheckedMixin, WagtailAdminTemplateMixin, TemplateVie
|
|
|
1071
1074
|
items.append(
|
|
1072
1075
|
{
|
|
1073
1076
|
"url": "",
|
|
1074
|
-
"label":
|
|
1077
|
+
"label": self.get_page_title(),
|
|
1075
1078
|
"sublabel": object_str,
|
|
1076
1079
|
}
|
|
1077
1080
|
)
|
|
1078
1081
|
return self.breadcrumbs_items + items
|
|
1079
1082
|
|
|
1083
|
+
@cached_property
|
|
1084
|
+
def header_more_buttons(self):
|
|
1085
|
+
buttons = []
|
|
1086
|
+
if edit_url := self.get_edit_url():
|
|
1087
|
+
buttons.append(
|
|
1088
|
+
Button(_("Edit"), url=edit_url, icon_name="edit", priority=10)
|
|
1089
|
+
)
|
|
1090
|
+
if delete_url := self.get_delete_url():
|
|
1091
|
+
buttons.append(
|
|
1092
|
+
Button(_("Delete"), url=delete_url, icon_name="bin", priority=20)
|
|
1093
|
+
)
|
|
1094
|
+
return buttons
|
|
1095
|
+
|
|
1080
1096
|
def get_fields(self):
|
|
1081
1097
|
fields = self.fields or [
|
|
1082
1098
|
f.name
|
|
@@ -1146,8 +1162,6 @@ class InspectView(PermissionCheckedMixin, WagtailAdminTemplateMixin, TemplateVie
|
|
|
1146
1162
|
context = super().get_context_data(**kwargs)
|
|
1147
1163
|
context["object"] = self.object
|
|
1148
1164
|
context["fields"] = self.get_fields_context()
|
|
1149
|
-
context["edit_url"] = self.get_edit_url()
|
|
1150
|
-
context["delete_url"] = self.get_delete_url()
|
|
1151
1165
|
return context
|
|
1152
1166
|
|
|
1153
1167
|
|
wagtail/admin/views/home.py
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
from
|
|
1
|
+
from collections.abc import Mapping
|
|
2
|
+
from typing import Any, Union
|
|
2
3
|
|
|
3
4
|
from django.conf import settings
|
|
4
5
|
from django.contrib.auth import get_user_model
|
|
@@ -7,10 +8,11 @@ from django.db.models import Exists, IntegerField, Max, OuterRef, Q
|
|
|
7
8
|
from django.db.models.functions import Cast
|
|
8
9
|
from django.forms import Media
|
|
9
10
|
from django.http import Http404, HttpResponse
|
|
10
|
-
from django.utils.translation import gettext_lazy
|
|
11
|
+
from django.utils.translation import gettext_lazy as _
|
|
11
12
|
from django.views.generic.base import TemplateView
|
|
12
13
|
|
|
13
14
|
from wagtail import hooks
|
|
15
|
+
from wagtail.admin.forms.search import SearchForm
|
|
14
16
|
from wagtail.admin.icons import get_icons
|
|
15
17
|
from wagtail.admin.navigation import get_site_for_user
|
|
16
18
|
from wagtail.admin.site_summary import SiteSummaryPanel
|
|
@@ -33,9 +35,8 @@ User = get_user_model()
|
|
|
33
35
|
|
|
34
36
|
|
|
35
37
|
class UpgradeNotificationPanel(Component):
|
|
36
|
-
name = "upgrade_notification"
|
|
37
38
|
template_name = "wagtailadmin/home/upgrade_notification.html"
|
|
38
|
-
|
|
39
|
+
dismissible_id = "last_upgrade_check"
|
|
39
40
|
|
|
40
41
|
def get_upgrade_check_setting(self) -> Union[bool, str]:
|
|
41
42
|
return getattr(settings, "WAGTAIL_ENABLE_UPDATE_CHECK", True)
|
|
@@ -46,8 +47,19 @@ class UpgradeNotificationPanel(Component):
|
|
|
46
47
|
return True
|
|
47
48
|
return False
|
|
48
49
|
|
|
50
|
+
def get_dismissible_value(self, user) -> str:
|
|
51
|
+
if profile := getattr(user, "wagtail_userprofile", None):
|
|
52
|
+
return profile.dismissibles.get(self.dismissible_id)
|
|
53
|
+
return None
|
|
54
|
+
|
|
49
55
|
def get_context_data(self, parent_context: Mapping[str, Any]) -> Mapping[str, Any]:
|
|
50
|
-
return {
|
|
56
|
+
return {
|
|
57
|
+
"lts_only": self.upgrade_check_lts_only(),
|
|
58
|
+
"dismissible_id": self.dismissible_id,
|
|
59
|
+
"dismissible_value": self.get_dismissible_value(
|
|
60
|
+
parent_context["request"].user
|
|
61
|
+
),
|
|
62
|
+
}
|
|
51
63
|
|
|
52
64
|
def render_html(self, parent_context: Mapping[str, Any] = None) -> str:
|
|
53
65
|
if (
|
|
@@ -282,15 +294,20 @@ class RecentEditsPanel(Component):
|
|
|
282
294
|
|
|
283
295
|
class HomeView(WagtailAdminTemplateMixin, TemplateView):
|
|
284
296
|
template_name = "wagtailadmin/home.html"
|
|
285
|
-
page_title =
|
|
297
|
+
page_title = _("Dashboard")
|
|
298
|
+
permission_policy = page_permission_policy
|
|
286
299
|
|
|
287
300
|
def get_context_data(self, **kwargs):
|
|
288
301
|
context = super().get_context_data(**kwargs)
|
|
289
302
|
panels = self.get_panels()
|
|
303
|
+
site_summary = SiteSummaryPanel(self.request)
|
|
290
304
|
site_details = self.get_site_details()
|
|
291
305
|
|
|
292
|
-
context["media"] = self.get_media(panels)
|
|
306
|
+
context["media"] = self.get_media([*panels, site_summary])
|
|
293
307
|
context["panels"] = sorted(panels, key=lambda p: p.order)
|
|
308
|
+
context["site_summary"] = site_summary
|
|
309
|
+
context["upgrade_notification"] = UpgradeNotificationPanel()
|
|
310
|
+
context["search_form"] = SearchForm(placeholder=_("Search all pages…"))
|
|
294
311
|
context["user"] = self.request.user
|
|
295
312
|
|
|
296
313
|
return {**context, **site_details}
|
|
@@ -306,10 +323,8 @@ class HomeView(WagtailAdminTemplateMixin, TemplateView):
|
|
|
306
323
|
def get_panels(self):
|
|
307
324
|
request = self.request
|
|
308
325
|
panels = [
|
|
309
|
-
SiteSummaryPanel(request),
|
|
310
326
|
# Disabled until a release warrants the banner.
|
|
311
327
|
# WhatsNewInWagtailVersionPanel(),
|
|
312
|
-
UpgradeNotificationPanel(),
|
|
313
328
|
WorkflowObjectsToModeratePanel(),
|
|
314
329
|
UserObjectsInWorkflowModerationPanel(),
|
|
315
330
|
RecentEditsPanel(),
|
|
@@ -1,9 +1,14 @@
|
|
|
1
1
|
from django.core.exceptions import PermissionDenied
|
|
2
2
|
from django.shortcuts import get_object_or_404
|
|
3
|
+
from django.urls import reverse
|
|
4
|
+
from django.utils.html import format_html
|
|
5
|
+
from django.utils.safestring import mark_safe
|
|
6
|
+
from django.utils.translation import gettext_lazy as _
|
|
3
7
|
|
|
4
8
|
from wagtail.admin.forms.pages import PageViewRestrictionForm
|
|
5
9
|
from wagtail.admin.modal_workflow import render_modal_workflow
|
|
6
10
|
from wagtail.models import Page, PageViewRestriction
|
|
11
|
+
from wagtail.models.view_restrictions import BaseViewRestriction
|
|
7
12
|
|
|
8
13
|
|
|
9
14
|
def set_privacy(request, page_id):
|
|
@@ -12,14 +17,20 @@ def set_privacy(request, page_id):
|
|
|
12
17
|
if not page_perms.can_set_view_restrictions():
|
|
13
18
|
raise PermissionDenied
|
|
14
19
|
|
|
15
|
-
|
|
16
|
-
restrictions = page.get_view_restrictions().order_by("page__depth")
|
|
20
|
+
restrictions = page.get_view_restrictions().order_by("-page__depth")
|
|
17
21
|
if restrictions:
|
|
18
|
-
|
|
19
|
-
|
|
22
|
+
if restrictions[0].page.id == page.id:
|
|
23
|
+
restriction = restrictions[0]
|
|
24
|
+
if len(restrictions) > 1:
|
|
25
|
+
restriction_on_ancestor = restrictions[1]
|
|
26
|
+
else:
|
|
27
|
+
restriction_on_ancestor = None
|
|
28
|
+
else:
|
|
29
|
+
restriction = None
|
|
30
|
+
restriction_on_ancestor = restrictions[0]
|
|
20
31
|
else:
|
|
21
32
|
restriction = None
|
|
22
|
-
|
|
33
|
+
restriction_on_ancestor = None
|
|
23
34
|
|
|
24
35
|
if request.method == "POST":
|
|
25
36
|
form = PageViewRestrictionForm(
|
|
@@ -27,7 +38,7 @@ def set_privacy(request, page_id):
|
|
|
27
38
|
instance=restriction,
|
|
28
39
|
private_page_options=page.private_page_options,
|
|
29
40
|
)
|
|
30
|
-
if form.is_valid()
|
|
41
|
+
if form.is_valid():
|
|
31
42
|
if form.cleaned_data["restriction_type"] == PageViewRestriction.NONE:
|
|
32
43
|
# remove any existing restriction
|
|
33
44
|
if restriction:
|
|
@@ -51,37 +62,50 @@ def set_privacy(request, page_id):
|
|
|
51
62
|
)
|
|
52
63
|
|
|
53
64
|
else: # request is a GET
|
|
54
|
-
if
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
else:
|
|
60
|
-
# no current view restrictions on this page
|
|
61
|
-
form = PageViewRestrictionForm(
|
|
62
|
-
initial={"restriction_type": "none"},
|
|
63
|
-
private_page_options=page.private_page_options,
|
|
64
|
-
)
|
|
65
|
+
if restriction:
|
|
66
|
+
form = PageViewRestrictionForm(
|
|
67
|
+
instance=restriction,
|
|
68
|
+
private_page_options=page.private_page_options,
|
|
69
|
+
)
|
|
65
70
|
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
71
|
+
else:
|
|
72
|
+
# no current view restrictions on this page
|
|
73
|
+
form = PageViewRestrictionForm(
|
|
74
|
+
initial={"restriction_type": "none"},
|
|
75
|
+
private_page_options=page.private_page_options,
|
|
76
|
+
)
|
|
77
|
+
|
|
78
|
+
if restriction_on_ancestor:
|
|
79
|
+
ancestor_page_link = format_html(
|
|
80
|
+
'<a href="{url}">{title}</a>',
|
|
81
|
+
url=reverse(
|
|
82
|
+
"wagtailadmin_pages:edit", args=[restriction_on_ancestor.page_id]
|
|
83
|
+
),
|
|
84
|
+
title=restriction_on_ancestor.page.specific_deferred.get_admin_display_title(),
|
|
85
|
+
)
|
|
86
|
+
inherit_from_parent_choice = (
|
|
87
|
+
BaseViewRestriction.NONE,
|
|
88
|
+
format_html(
|
|
89
|
+
"<span>{}</span>",
|
|
90
|
+
mark_safe(
|
|
91
|
+
_(
|
|
92
|
+
"Privacy is inherited from the ancestor page - %(ancestor_page)s"
|
|
93
|
+
)
|
|
94
|
+
% {"ancestor_page": ancestor_page_link}
|
|
95
|
+
),
|
|
96
|
+
),
|
|
97
|
+
)
|
|
98
|
+
form.fields["restriction_type"].choices = [
|
|
99
|
+
inherit_from_parent_choice
|
|
100
|
+
] + list(form.fields["restriction_type"].choices[1:])
|
|
101
|
+
|
|
102
|
+
if len(page.private_page_options) == 0:
|
|
78
103
|
return render_modal_workflow(
|
|
79
104
|
request,
|
|
80
105
|
"wagtailadmin/page_privacy/no_privacy.html",
|
|
81
106
|
None,
|
|
82
107
|
)
|
|
83
108
|
else:
|
|
84
|
-
# no restriction set at ancestor level - can set restrictions here
|
|
85
109
|
return render_modal_workflow(
|
|
86
110
|
request,
|
|
87
111
|
"wagtailadmin/page_privacy/set_privacy.html",
|
|
@@ -34,6 +34,7 @@ class PageHistoryFilterSet(history.HistoryFilterSet):
|
|
|
34
34
|
class PageWorkflowHistoryViewMixin:
|
|
35
35
|
model = Page
|
|
36
36
|
pk_url_kwarg = "page_id"
|
|
37
|
+
edit_url_name = "wagtailadmin_pages:edit"
|
|
37
38
|
|
|
38
39
|
def dispatch(self, request, *args, **kwargs):
|
|
39
40
|
if not self.object.permissions_for_user(request.user).can_edit():
|
|
@@ -44,17 +45,23 @@ class PageWorkflowHistoryViewMixin:
|
|
|
44
45
|
return super().get_context_data(**kwargs, page=self.object)
|
|
45
46
|
|
|
46
47
|
|
|
47
|
-
class WorkflowHistoryView(
|
|
48
|
+
class WorkflowHistoryView(
|
|
49
|
+
PageWorkflowHistoryViewMixin,
|
|
50
|
+
GenericPageBreadcrumbsMixin,
|
|
51
|
+
history.WorkflowHistoryView,
|
|
52
|
+
):
|
|
48
53
|
header_icon = "doc-empty-inverse"
|
|
49
|
-
workflow_history_url_name = "wagtailadmin_pages:workflow_history"
|
|
50
54
|
workflow_history_detail_url_name = "wagtailadmin_pages:workflow_history_detail"
|
|
51
55
|
|
|
52
56
|
|
|
53
57
|
class WorkflowHistoryDetailView(
|
|
54
|
-
PageWorkflowHistoryViewMixin,
|
|
58
|
+
PageWorkflowHistoryViewMixin,
|
|
59
|
+
GenericPageBreadcrumbsMixin,
|
|
60
|
+
history.WorkflowHistoryDetailView,
|
|
55
61
|
):
|
|
56
|
-
|
|
62
|
+
header_icon = "doc-empty-inverse"
|
|
57
63
|
workflow_history_url_name = "wagtailadmin_pages:workflow_history"
|
|
64
|
+
breadcrumbs_items_to_take = 2
|
|
58
65
|
|
|
59
66
|
|
|
60
67
|
class PageHistoryView(GenericPageBreadcrumbsMixin, history.HistoryView):
|