wagtail 6.0.1__py3-none-any.whl → 6.1rc1__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.
Files changed (512) hide show
  1. wagtail/__init__.py +1 -1
  2. wagtail/admin/checks.py +51 -0
  3. wagtail/admin/compare.py +1 -1
  4. wagtail/admin/filters.py +70 -1
  5. wagtail/admin/forms/account.py +1 -1
  6. wagtail/admin/forms/collections.py +15 -0
  7. wagtail/admin/forms/pages.py +49 -0
  8. wagtail/admin/locale/ca/LC_MESSAGES/django.mo +0 -0
  9. wagtail/admin/locale/ca/LC_MESSAGES/django.po +122 -0
  10. wagtail/admin/locale/de/LC_MESSAGES/django.mo +0 -0
  11. wagtail/admin/locale/de/LC_MESSAGES/django.po +5 -5
  12. wagtail/admin/locale/en/LC_MESSAGES/django.po +474 -385
  13. wagtail/admin/locale/en/LC_MESSAGES/djangojs.po +3 -3
  14. wagtail/admin/locale/es/LC_MESSAGES/django.mo +0 -0
  15. wagtail/admin/locale/es/LC_MESSAGES/django.po +6 -6
  16. wagtail/admin/locale/fr/LC_MESSAGES/django.mo +0 -0
  17. wagtail/admin/locale/fr/LC_MESSAGES/django.po +70 -3
  18. wagtail/admin/locale/he_IL/LC_MESSAGES/django.mo +0 -0
  19. wagtail/admin/locale/he_IL/LC_MESSAGES/django.po +2 -6
  20. wagtail/admin/locale/he_IL/LC_MESSAGES/djangojs.mo +0 -0
  21. wagtail/admin/locale/he_IL/LC_MESSAGES/djangojs.po +2 -2
  22. wagtail/admin/locale/hr_HR/LC_MESSAGES/django.mo +0 -0
  23. wagtail/admin/locale/hr_HR/LC_MESSAGES/django.po +4 -0
  24. wagtail/admin/locale/hu/LC_MESSAGES/django.mo +0 -0
  25. wagtail/admin/locale/hu/LC_MESSAGES/django.po +142 -2
  26. wagtail/admin/locale/it/LC_MESSAGES/django.mo +0 -0
  27. wagtail/admin/locale/it/LC_MESSAGES/django.po +80 -8
  28. wagtail/admin/locale/it/LC_MESSAGES/djangojs.mo +0 -0
  29. wagtail/admin/locale/it/LC_MESSAGES/djangojs.po +14 -2
  30. wagtail/admin/locale/lv/LC_MESSAGES/django.mo +0 -0
  31. wagtail/admin/locale/lv/LC_MESSAGES/django.po +154 -1
  32. wagtail/admin/locale/pt_PT/LC_MESSAGES/django.mo +0 -0
  33. wagtail/admin/locale/pt_PT/LC_MESSAGES/django.po +73 -2
  34. wagtail/admin/locale/ro/LC_MESSAGES/django.mo +0 -0
  35. wagtail/admin/locale/ro/LC_MESSAGES/django.po +3 -3
  36. wagtail/admin/locale/sl/LC_MESSAGES/django.mo +0 -0
  37. wagtail/admin/locale/sl/LC_MESSAGES/django.po +145 -2
  38. wagtail/admin/locale/sv/LC_MESSAGES/django.mo +0 -0
  39. wagtail/admin/locale/sv/LC_MESSAGES/django.po +77 -3
  40. wagtail/admin/locale/zh_Hant/LC_MESSAGES/django.mo +0 -0
  41. wagtail/admin/locale/zh_Hant/LC_MESSAGES/django.po +17 -1
  42. wagtail/admin/panels/comment_panel.py +1 -1
  43. wagtail/admin/panels/field_panel.py +1 -1
  44. wagtail/admin/rich_text/converters/editor_html.py +3 -1
  45. wagtail/admin/rich_text/editors/draftail/__init__.py +28 -2
  46. wagtail/admin/static/wagtailadmin/css/core.css +1 -1
  47. wagtail/admin/static/wagtailadmin/css/panels/draftail.css +1 -1
  48. wagtail/admin/static/wagtailadmin/images/favicon.ico +0 -0
  49. wagtail/admin/static/wagtailadmin/js/bulk-actions.js +1 -1
  50. wagtail/admin/static/wagtailadmin/js/chooser-modal.js +1 -1
  51. wagtail/admin/static/wagtailadmin/js/chooser-widget-telepath.js +1 -1
  52. wagtail/admin/static/wagtailadmin/js/chooser-widget.js +1 -1
  53. wagtail/admin/static/wagtailadmin/js/comments.js +1 -1
  54. wagtail/admin/static/wagtailadmin/js/core.js +1 -1
  55. wagtail/admin/static/wagtailadmin/js/core.js.LICENSE.txt +1 -1
  56. wagtail/admin/static/wagtailadmin/js/date-time-chooser.js +1 -1
  57. wagtail/admin/static/wagtailadmin/js/draftail.js +1 -1
  58. wagtail/admin/static/wagtailadmin/js/expanding-formset.js +1 -1
  59. wagtail/admin/static/wagtailadmin/js/filtered-select.js +1 -1
  60. wagtail/admin/static/wagtailadmin/js/modal-workflow.js +1 -1
  61. wagtail/admin/static/wagtailadmin/js/page-chooser-modal.js +1 -1
  62. wagtail/admin/static/wagtailadmin/js/page-chooser-telepath.js +1 -1
  63. wagtail/admin/static/wagtailadmin/js/page-chooser.js +1 -1
  64. wagtail/admin/static/wagtailadmin/js/preview-panel.js +1 -1
  65. wagtail/admin/static/wagtailadmin/js/privacy-switch.js +1 -1
  66. wagtail/admin/static/wagtailadmin/js/sidebar.js +1 -1
  67. wagtail/admin/static/wagtailadmin/js/task-chooser-modal.js +1 -1
  68. wagtail/admin/static/wagtailadmin/js/task-chooser.js +1 -1
  69. wagtail/admin/static/wagtailadmin/js/telepath/blocks.js +1 -1
  70. wagtail/admin/static/wagtailadmin/js/telepath/telepath.js +1 -1
  71. wagtail/admin/static/wagtailadmin/js/telepath/widgets.js +1 -1
  72. wagtail/admin/static/wagtailadmin/js/userbar.js +1 -1
  73. wagtail/admin/static/wagtailadmin/js/vendor.js +1 -1
  74. wagtail/admin/static/wagtailadmin/js/vendor.js.LICENSE.txt +4 -4
  75. wagtail/admin/static/wagtailadmin/js/wagtailadmin.js +1 -1
  76. wagtail/admin/static/wagtailadmin/js/workflow-action.js +1 -1
  77. wagtail/admin/staticfiles.py +1 -0
  78. wagtail/admin/templates/wagtailadmin/admin_base.html +1 -0
  79. wagtail/admin/templates/wagtailadmin/base.html +1 -0
  80. wagtail/admin/templates/wagtailadmin/collection_privacy/set_privacy.html +3 -1
  81. wagtail/admin/templates/wagtailadmin/collections/edit.html +0 -1
  82. wagtail/admin/templates/wagtailadmin/collections/index_results.html +10 -0
  83. wagtail/admin/templates/wagtailadmin/generic/base.html +1 -9
  84. wagtail/admin/templates/wagtailadmin/generic/form.html +4 -2
  85. wagtail/admin/templates/wagtailadmin/generic/history/action_cell.html +27 -0
  86. wagtail/admin/templates/wagtailadmin/generic/index_results.html +8 -0
  87. wagtail/admin/templates/wagtailadmin/home/workflow_objects_to_moderate.html +3 -4
  88. wagtail/admin/templates/wagtailadmin/icons/keyboard.svg +1 -0
  89. wagtail/admin/templates/wagtailadmin/page_privacy/set_privacy.html +3 -1
  90. wagtail/admin/templates/wagtailadmin/pages/_editor_js.html +0 -15
  91. wagtail/admin/templates/wagtailadmin/pages/action_menu/save_draft.html +3 -1
  92. wagtail/admin/templates/wagtailadmin/pages/choose_parent.html +17 -0
  93. wagtail/admin/templates/wagtailadmin/pages/explorable_index.html +8 -0
  94. wagtail/admin/templates/wagtailadmin/pages/history.html +1 -61
  95. wagtail/admin/templates/wagtailadmin/pages/index.html +1 -5
  96. wagtail/admin/templates/wagtailadmin/pages/listing/_locked_indicator.html +2 -2
  97. wagtail/admin/templates/wagtailadmin/pages/listing/_page_title_column_header.html +25 -27
  98. wagtail/admin/templates/wagtailadmin/pages/page_listing_header.html +2 -1
  99. wagtail/admin/templates/wagtailadmin/panels/multi_field_panel_child.html +1 -1
  100. wagtail/admin/templates/wagtailadmin/panels/publishing/schedule_publishing_panel.html +3 -1
  101. wagtail/admin/templates/wagtailadmin/panels/tabbed_interface.html +1 -1
  102. wagtail/admin/templates/wagtailadmin/shared/active_filters.html +2 -1
  103. wagtail/admin/templates/wagtailadmin/shared/breadcrumbs.html +8 -0
  104. wagtail/admin/templates/wagtailadmin/shared/forms/single_checkbox.html +1 -1
  105. wagtail/admin/templates/wagtailadmin/shared/headers/page_edit_header.html +1 -1
  106. wagtail/admin/templates/wagtailadmin/shared/headers/slim_header.html +21 -9
  107. wagtail/admin/templates/wagtailadmin/shared/human_readable_date.html +1 -1
  108. wagtail/admin/templates/wagtailadmin/shared/keyboard_shortcuts_dialog.html +29 -0
  109. wagtail/admin/templates/wagtailadmin/shared/side_panel_toggle.html +2 -1
  110. wagtail/admin/templates/wagtailadmin/skeleton.html +2 -1
  111. wagtail/admin/templates/wagtailadmin/tables/related_objects_cell.html +9 -0
  112. wagtail/admin/templates/wagtailadmin/tables/title_cell.html +9 -7
  113. wagtail/admin/templates/wagtailadmin/widgets/draftail_rich_text_area.html +1 -1
  114. wagtail/admin/templates/wagtailadmin/workflows/create.html +6 -23
  115. wagtail/admin/templates/wagtailadmin/workflows/create_task.html +6 -15
  116. wagtail/admin/templates/wagtailadmin/workflows/edit.html +6 -23
  117. wagtail/admin/templates/wagtailadmin/workflows/edit_task.html +6 -13
  118. wagtail/admin/templates/wagtailadmin/workflows/includes/task_usage_cell.html +4 -4
  119. wagtail/admin/templates/wagtailadmin/workflows/includes/workflow_tasks_cell.html +18 -0
  120. wagtail/admin/templates/wagtailadmin/workflows/includes/workflow_title_cell.html +7 -0
  121. wagtail/admin/templates/wagtailadmin/workflows/includes/workflow_used_by_cell.html +25 -0
  122. wagtail/admin/templates/wagtailadmin/workflows/index.html +0 -99
  123. wagtail/admin/templates/wagtailadmin/workflows/index_results.html +10 -0
  124. wagtail/admin/templates/wagtailadmin/workflows/task_index.html +0 -30
  125. wagtail/admin/templates/wagtailadmin/workflows/task_index_results.html +10 -0
  126. wagtail/admin/templates/wagtailadmin/workflows/usage.html +1 -1
  127. wagtail/admin/templatetags/wagtailadmin_tags.py +116 -39
  128. wagtail/admin/tests/api/test_pages.py +26 -10
  129. wagtail/admin/tests/pages/test_create_page.py +10 -4
  130. wagtail/admin/tests/pages/test_custom_listing.py +37 -0
  131. wagtail/admin/tests/pages/test_edit_page.py +6 -6
  132. wagtail/admin/tests/pages/test_explorer_view.py +19 -18
  133. wagtail/admin/tests/pages/test_move_page.py +1 -1
  134. wagtail/admin/tests/pages/test_page_usage.py +50 -2
  135. wagtail/admin/tests/pages/test_parent_page_chooser_view.py +119 -0
  136. wagtail/admin/tests/pages/test_preview.py +18 -4
  137. wagtail/admin/tests/test_account_management.py +20 -1
  138. wagtail/admin/tests/test_audit_log.py +172 -5
  139. wagtail/admin/tests/test_checks.py +92 -0
  140. wagtail/admin/tests/test_collections_views.py +19 -5
  141. wagtail/admin/tests/test_compare.py +6 -6
  142. wagtail/admin/tests/test_dashboard.py +404 -0
  143. wagtail/admin/tests/test_dbwhitelister.py +4 -5
  144. wagtail/admin/tests/test_edit_handlers.py +2 -2
  145. wagtail/admin/tests/test_keyboard_shortcuts.py +84 -0
  146. wagtail/admin/tests/test_page_chooser.py +31 -18
  147. wagtail/admin/tests/test_privacy.py +36 -2
  148. wagtail/admin/tests/test_rich_text.py +168 -23
  149. wagtail/admin/tests/test_templatetags.py +411 -43
  150. wagtail/admin/tests/test_views.py +4 -2
  151. wagtail/admin/tests/test_workflows.py +531 -9
  152. wagtail/admin/tests/tests.py +3 -1
  153. wagtail/admin/tests/ui/test_tables.py +48 -1
  154. wagtail/admin/tests/viewsets/test_model_viewset.py +130 -23
  155. wagtail/admin/ui/side_panels.py +3 -1
  156. wagtail/admin/ui/tables/__init__.py +13 -1
  157. wagtail/admin/ui/tables/pages.py +17 -6
  158. wagtail/admin/urls/__init__.py +8 -3
  159. wagtail/admin/urls/pages.py +5 -0
  160. wagtail/admin/urls/workflows.py +10 -0
  161. wagtail/admin/views/chooser.py +20 -24
  162. wagtail/admin/views/collections.py +17 -1
  163. wagtail/admin/views/generic/base.py +34 -4
  164. wagtail/admin/views/generic/history.py +220 -51
  165. wagtail/admin/views/generic/mixins.py +7 -4
  166. wagtail/admin/views/generic/models.py +54 -47
  167. wagtail/admin/views/generic/multiple_upload.py +17 -8
  168. wagtail/admin/views/generic/usage.py +17 -11
  169. wagtail/admin/views/home.py +15 -12
  170. wagtail/admin/views/mixins.py +30 -0
  171. wagtail/admin/views/pages/choose_parent.py +73 -0
  172. wagtail/admin/views/pages/history.py +54 -66
  173. wagtail/admin/views/pages/listing.py +187 -106
  174. wagtail/admin/views/pages/usage.py +6 -1
  175. wagtail/admin/views/pages/utils.py +70 -1
  176. wagtail/admin/views/workflows.py +150 -21
  177. wagtail/admin/viewsets/model.py +2 -2
  178. wagtail/admin/viewsets/pages.py +77 -0
  179. wagtail/admin/wagtail_hooks.py +40 -2
  180. wagtail/admin/widgets/button.py +10 -10
  181. wagtail/api/v2/filters.py +1 -1
  182. wagtail/api/v2/tests/test_pages.py +1 -1
  183. wagtail/blocks/base.py +18 -9
  184. wagtail/blocks/field_block.py +9 -7
  185. wagtail/blocks/list_block.py +16 -6
  186. wagtail/blocks/static_block.py +3 -0
  187. wagtail/blocks/stream_block.py +58 -23
  188. wagtail/blocks/struct_block.py +15 -9
  189. wagtail/contrib/forms/locale/en/LC_MESSAGES/django.po +39 -47
  190. wagtail/contrib/forms/locale/he_IL/LC_MESSAGES/django.mo +0 -0
  191. wagtail/contrib/forms/locale/he_IL/LC_MESSAGES/django.po +2 -2
  192. wagtail/contrib/forms/models.py +5 -5
  193. wagtail/contrib/forms/templates/wagtailforms/list_submissions.html +44 -33
  194. wagtail/contrib/forms/templates/wagtailforms/submissions_index.html +2 -63
  195. wagtail/contrib/forms/tests/test_models.py +26 -0
  196. wagtail/contrib/forms/urls.py +6 -0
  197. wagtail/contrib/forms/views.py +52 -49
  198. wagtail/contrib/redirects/locale/ca/LC_MESSAGES/django.mo +0 -0
  199. wagtail/contrib/redirects/locale/ca/LC_MESSAGES/django.po +3 -3
  200. wagtail/contrib/redirects/locale/en/LC_MESSAGES/django.po +34 -42
  201. wagtail/contrib/redirects/locale/fr/LC_MESSAGES/django.po +2 -2
  202. wagtail/contrib/redirects/locale/he_IL/LC_MESSAGES/django.mo +0 -0
  203. wagtail/contrib/redirects/locale/he_IL/LC_MESSAGES/django.po +2 -2
  204. wagtail/contrib/redirects/signal_handlers.py +1 -1
  205. wagtail/contrib/redirects/templates/wagtailredirects/index.html +1 -36
  206. wagtail/contrib/redirects/templates/wagtailredirects/index_results.html +18 -0
  207. wagtail/contrib/redirects/templates/wagtailredirects/redirect_target_cell.html +8 -0
  208. wagtail/contrib/redirects/tests/test_import_command.py +1 -1
  209. wagtail/contrib/redirects/tests/test_redirects.py +79 -8
  210. wagtail/contrib/redirects/urls.py +2 -1
  211. wagtail/contrib/redirects/views.py +85 -55
  212. wagtail/contrib/search_promotions/admin_urls.py +2 -1
  213. wagtail/contrib/search_promotions/locale/en/LC_MESSAGES/django.po +41 -64
  214. wagtail/contrib/search_promotions/locale/fr/LC_MESSAGES/django.po +2 -2
  215. wagtail/contrib/search_promotions/locale/he_IL/LC_MESSAGES/django.mo +0 -0
  216. wagtail/contrib/search_promotions/locale/he_IL/LC_MESSAGES/django.po +2 -2
  217. wagtail/contrib/search_promotions/locale/hr_HR/LC_MESSAGES/django.mo +0 -0
  218. wagtail/contrib/search_promotions/locale/hr_HR/LC_MESSAGES/django.po +41 -2
  219. wagtail/contrib/search_promotions/locale/it/LC_MESSAGES/django.mo +0 -0
  220. wagtail/contrib/search_promotions/locale/it/LC_MESSAGES/django.po +9 -3
  221. wagtail/contrib/search_promotions/templates/wagtailsearchpromotions/index.html +1 -16
  222. wagtail/contrib/search_promotions/templates/wagtailsearchpromotions/index_results.html +11 -0
  223. wagtail/contrib/search_promotions/templates/wagtailsearchpromotions/list.html +0 -51
  224. wagtail/contrib/search_promotions/templates/wagtailsearchpromotions/results.html +3 -16
  225. wagtail/contrib/search_promotions/templates/wagtailsearchpromotions/search_promotion_column.html +15 -0
  226. wagtail/contrib/search_promotions/tests.py +122 -9
  227. wagtail/contrib/search_promotions/views.py +66 -65
  228. wagtail/contrib/settings/locale/en/LC_MESSAGES/django.po +3 -3
  229. wagtail/contrib/settings/locale/he_IL/LC_MESSAGES/django.mo +0 -0
  230. wagtail/contrib/settings/locale/he_IL/LC_MESSAGES/django.po +2 -2
  231. wagtail/contrib/settings/locale/tr/LC_MESSAGES/django.mo +0 -0
  232. wagtail/contrib/settings/locale/tr/LC_MESSAGES/django.po +6 -2
  233. wagtail/contrib/settings/registry.py +10 -5
  234. wagtail/contrib/settings/tests/generic/test_admin.py +9 -0
  235. wagtail/contrib/settings/tests/site_specific/test_admin.py +10 -1
  236. wagtail/contrib/settings/tests/site_specific/test_model.py +3 -3
  237. wagtail/contrib/settings/tests/site_specific/test_templates.py +1 -1
  238. wagtail/contrib/settings/views.py +3 -1
  239. wagtail/contrib/simple_translation/locale/en/LC_MESSAGES/django.po +1 -1
  240. wagtail/contrib/simple_translation/tests/test_wagtail_hooks.py +2 -2
  241. wagtail/contrib/styleguide/locale/en/LC_MESSAGES/django.po +7 -7
  242. wagtail/contrib/styleguide/locale/he_IL/LC_MESSAGES/django.mo +0 -0
  243. wagtail/contrib/styleguide/locale/he_IL/LC_MESSAGES/django.po +2 -2
  244. wagtail/contrib/table_block/blocks.py +2 -2
  245. wagtail/contrib/table_block/locale/ca/LC_MESSAGES/django.mo +0 -0
  246. wagtail/contrib/table_block/locale/ca/LC_MESSAGES/django.po +27 -2
  247. wagtail/contrib/table_block/locale/en/LC_MESSAGES/django.po +1 -1
  248. wagtail/contrib/table_block/locale/hu/LC_MESSAGES/django.mo +0 -0
  249. wagtail/contrib/table_block/locale/hu/LC_MESSAGES/django.po +27 -2
  250. wagtail/contrib/table_block/locale/it/LC_MESSAGES/django.mo +0 -0
  251. wagtail/contrib/table_block/locale/it/LC_MESSAGES/django.po +27 -2
  252. wagtail/contrib/table_block/static/table_block/js/table.js +1 -1
  253. wagtail/contrib/table_block/tests.py +6 -0
  254. wagtail/contrib/typed_table_block/locale/ca/LC_MESSAGES/django.mo +0 -0
  255. wagtail/contrib/typed_table_block/locale/ca/LC_MESSAGES/django.po +12 -2
  256. wagtail/contrib/typed_table_block/locale/en/LC_MESSAGES/django.po +1 -1
  257. wagtail/contrib/typed_table_block/locale/hu/LC_MESSAGES/django.mo +0 -0
  258. wagtail/contrib/typed_table_block/locale/hu/LC_MESSAGES/django.po +12 -2
  259. wagtail/contrib/typed_table_block/locale/it/LC_MESSAGES/django.mo +0 -0
  260. wagtail/contrib/typed_table_block/locale/it/LC_MESSAGES/django.po +12 -2
  261. wagtail/contrib/typed_table_block/static/typed_table_block/js/typed_table_block.js +1 -1
  262. wagtail/coreutils.py +3 -2
  263. wagtail/documents/admin_urls.py +2 -2
  264. wagtail/documents/locale/en/LC_MESSAGES/django.po +22 -22
  265. wagtail/documents/locale/fr/LC_MESSAGES/django.po +2 -2
  266. wagtail/documents/locale/he_IL/LC_MESSAGES/django.mo +0 -0
  267. wagtail/documents/locale/he_IL/LC_MESSAGES/django.po +2 -2
  268. wagtail/documents/locale/hr_HR/LC_MESSAGES/django.mo +0 -0
  269. wagtail/documents/locale/hr_HR/LC_MESSAGES/django.po +19 -2
  270. wagtail/documents/locale/hu/LC_MESSAGES/django.mo +0 -0
  271. wagtail/documents/locale/hu/LC_MESSAGES/django.po +16 -2
  272. wagtail/documents/locale/it/LC_MESSAGES/django.mo +0 -0
  273. wagtail/documents/locale/it/LC_MESSAGES/django.po +19 -2
  274. wagtail/documents/migrations/0013_delete_uploadeddocument.py +16 -0
  275. wagtail/documents/models.py +1 -20
  276. wagtail/documents/rich_text/__init__.py +11 -7
  277. wagtail/documents/static/wagtaildocs/js/document-chooser-modal.js +1 -1
  278. wagtail/documents/static/wagtaildocs/js/document-chooser-telepath.js +1 -1
  279. wagtail/documents/static/wagtaildocs/js/document-chooser.js +1 -1
  280. wagtail/documents/templates/wagtaildocs/documents/index.html +0 -16
  281. wagtail/documents/tests/test_admin_views.py +155 -23
  282. wagtail/documents/tests/test_collection_privacy.py +55 -1
  283. wagtail/documents/tests/test_rich_text.py +14 -0
  284. wagtail/documents/views/documents.py +25 -22
  285. wagtail/documents/views/multiple.py +6 -7
  286. wagtail/documents/views/serve.py +16 -1
  287. wagtail/documents/wagtail_hooks.py +20 -15
  288. wagtail/embeds/blocks.py +5 -0
  289. wagtail/embeds/locale/en/LC_MESSAGES/django.po +2 -2
  290. wagtail/embeds/locale/fr/LC_MESSAGES/django.po +2 -2
  291. wagtail/embeds/locale/he_IL/LC_MESSAGES/django.mo +0 -0
  292. wagtail/embeds/locale/he_IL/LC_MESSAGES/django.po +2 -2
  293. wagtail/embeds/rich_text/__init__.py +1 -1
  294. wagtail/embeds/tests/test_rich_text.py +14 -0
  295. wagtail/embeds/wagtail_hooks.py +4 -14
  296. wagtail/fields.py +3 -48
  297. wagtail/images/admin_urls.py +2 -2
  298. wagtail/images/check_files/wagtail.jpg +0 -0
  299. wagtail/images/check_files/wagtail.png +0 -0
  300. wagtail/images/fields.py +2 -0
  301. wagtail/images/image_operations.py +1 -1
  302. wagtail/images/locale/ca/LC_MESSAGES/django.mo +0 -0
  303. wagtail/images/locale/ca/LC_MESSAGES/django.po +12 -0
  304. wagtail/images/locale/en/LC_MESSAGES/django.po +33 -45
  305. wagtail/images/locale/fr/LC_MESSAGES/django.po +2 -2
  306. wagtail/images/locale/he_IL/LC_MESSAGES/django.mo +0 -0
  307. wagtail/images/locale/he_IL/LC_MESSAGES/django.po +2 -2
  308. wagtail/images/locale/hu/LC_MESSAGES/django.mo +0 -0
  309. wagtail/images/locale/hu/LC_MESSAGES/django.po +28 -2
  310. wagtail/images/locale/it/LC_MESSAGES/django.mo +0 -0
  311. wagtail/images/locale/it/LC_MESSAGES/django.po +14 -2
  312. wagtail/images/locale/pt_PT/LC_MESSAGES/django.mo +0 -0
  313. wagtail/images/locale/pt_PT/LC_MESSAGES/django.po +4 -0
  314. wagtail/images/migrations/0026_delete_uploadedimage.py +16 -0
  315. wagtail/images/models.py +49 -43
  316. wagtail/images/rich_text/__init__.py +18 -8
  317. wagtail/images/static/wagtailimages/js/image-chooser-modal.js +1 -1
  318. wagtail/images/static/wagtailimages/js/image-chooser-telepath.js +1 -1
  319. wagtail/images/static/wagtailimages/js/image-chooser.js +1 -1
  320. wagtail/images/templates/wagtailimages/images/image_listing_header.html +6 -0
  321. wagtail/images/templates/wagtailimages/images/index.html +11 -51
  322. wagtail/images/tests/test_admin_views.py +119 -62
  323. wagtail/images/tests/test_image_operations.py +10 -0
  324. wagtail/images/tests/test_models.py +35 -33
  325. wagtail/images/tests/test_rich_text.py +14 -0
  326. wagtail/images/tests/utils.py +1 -1
  327. wagtail/images/views/images.py +35 -64
  328. wagtail/images/views/multiple.py +6 -7
  329. wagtail/images/wagtail_hooks.py +4 -14
  330. wagtail/locale/en/LC_MESSAGES/django.po +150 -136
  331. wagtail/locale/es/LC_MESSAGES/django.mo +0 -0
  332. wagtail/locale/es/LC_MESSAGES/django.po +3 -2
  333. wagtail/locale/fr/LC_MESSAGES/django.po +2 -2
  334. wagtail/locale/he_IL/LC_MESSAGES/django.mo +0 -0
  335. wagtail/locale/he_IL/LC_MESSAGES/django.po +2 -2
  336. wagtail/locale/it/LC_MESSAGES/django.mo +0 -0
  337. wagtail/locale/it/LC_MESSAGES/django.po +5 -5
  338. wagtail/locale/sl/LC_MESSAGES/django.mo +0 -0
  339. wagtail/locale/sl/LC_MESSAGES/django.po +27 -2
  340. wagtail/locales/locale/ar/LC_MESSAGES/django.po +1 -1
  341. wagtail/locales/locale/be/LC_MESSAGES/django.po +1 -1
  342. wagtail/locales/locale/bg/LC_MESSAGES/django.po +1 -1
  343. wagtail/locales/locale/ca/LC_MESSAGES/django.po +1 -1
  344. wagtail/locales/locale/cs/LC_MESSAGES/django.po +1 -1
  345. wagtail/locales/locale/cy/LC_MESSAGES/django.po +1 -1
  346. wagtail/locales/locale/da/LC_MESSAGES/django.po +1 -1
  347. wagtail/locales/locale/de/LC_MESSAGES/django.po +1 -1
  348. wagtail/locales/locale/el/LC_MESSAGES/django.po +1 -1
  349. wagtail/locales/locale/en/LC_MESSAGES/django.po +1 -1
  350. wagtail/locales/locale/es/LC_MESSAGES/django.po +1 -1
  351. wagtail/locales/locale/et/LC_MESSAGES/django.po +2 -2
  352. wagtail/locales/locale/fa/LC_MESSAGES/django.po +1 -1
  353. wagtail/locales/locale/fi/LC_MESSAGES/django.po +1 -1
  354. wagtail/locales/locale/fr/LC_MESSAGES/django.po +1 -1
  355. wagtail/locales/locale/gl/LC_MESSAGES/django.po +1 -1
  356. wagtail/locales/locale/he_IL/LC_MESSAGES/django.mo +0 -0
  357. wagtail/locales/locale/he_IL/LC_MESSAGES/django.po +3 -3
  358. wagtail/locales/locale/hr_HR/LC_MESSAGES/django.po +1 -1
  359. wagtail/locales/locale/hu/LC_MESSAGES/django.po +1 -1
  360. wagtail/locales/locale/id_ID/LC_MESSAGES/django.po +1 -1
  361. wagtail/locales/locale/is_IS/LC_MESSAGES/django.po +1 -1
  362. wagtail/locales/locale/it/LC_MESSAGES/django.po +1 -1
  363. wagtail/locales/locale/ja/LC_MESSAGES/django.po +1 -1
  364. wagtail/locales/locale/ko/LC_MESSAGES/django.po +1 -1
  365. wagtail/locales/locale/lt/LC_MESSAGES/django.po +1 -1
  366. wagtail/locales/locale/lv/LC_MESSAGES/django.po +1 -1
  367. wagtail/locales/locale/mi/LC_MESSAGES/django.po +1 -1
  368. wagtail/locales/locale/mn/LC_MESSAGES/django.po +1 -1
  369. wagtail/locales/locale/my/LC_MESSAGES/django.po +1 -1
  370. wagtail/locales/locale/nb/LC_MESSAGES/django.po +1 -1
  371. wagtail/locales/locale/nl/LC_MESSAGES/django.po +1 -1
  372. wagtail/locales/locale/pl/LC_MESSAGES/django.po +1 -1
  373. wagtail/locales/locale/pt_BR/LC_MESSAGES/django.po +1 -1
  374. wagtail/locales/locale/pt_PT/LC_MESSAGES/django.po +1 -1
  375. wagtail/locales/locale/ro/LC_MESSAGES/django.po +1 -1
  376. wagtail/locales/locale/ru/LC_MESSAGES/django.po +1 -1
  377. wagtail/locales/locale/sk_SK/LC_MESSAGES/django.po +1 -1
  378. wagtail/locales/locale/sl/LC_MESSAGES/django.po +1 -1
  379. wagtail/locales/locale/sv/LC_MESSAGES/django.po +1 -1
  380. wagtail/locales/locale/tet/LC_MESSAGES/django.po +1 -1
  381. wagtail/locales/locale/th/LC_MESSAGES/django.po +1 -1
  382. wagtail/locales/locale/tr/LC_MESSAGES/django.po +1 -1
  383. wagtail/locales/locale/tr_TR/LC_MESSAGES/django.po +1 -1
  384. wagtail/locales/locale/uk/LC_MESSAGES/django.po +1 -1
  385. wagtail/locales/locale/vi/LC_MESSAGES/django.po +1 -1
  386. wagtail/locales/locale/zh/LC_MESSAGES/django.po +1 -1
  387. wagtail/locales/locale/zh_Hans/LC_MESSAGES/django.po +1 -1
  388. wagtail/locales/locale/zh_Hant/LC_MESSAGES/django.po +1 -1
  389. wagtail/locales/tests.py +18 -3
  390. wagtail/locales/views.py +0 -1
  391. wagtail/management/commands/rebuild_references_index.py +3 -1
  392. wagtail/migrations/0092_alter_collectionviewrestriction_password_and_more.py +33 -0
  393. wagtail/migrations/0093_uploadedfile.py +53 -0
  394. wagtail/models/__init__.py +147 -32
  395. wagtail/models/i18n.py +1 -1
  396. wagtail/models/{collections.py → media.py} +33 -2
  397. wagtail/models/reference_index.py +1 -1
  398. wagtail/models/view_restrictions.py +10 -3
  399. wagtail/project_template/project_name/settings/base.py +6 -0
  400. wagtail/project_template/requirements.txt +1 -1
  401. wagtail/rich_text/__init__.py +25 -8
  402. wagtail/rich_text/pages.py +19 -8
  403. wagtail/rich_text/rewriters.py +140 -68
  404. wagtail/search/backends/database/mysql/mysql.py +3 -3
  405. wagtail/search/backends/database/postgres/postgres.py +3 -3
  406. wagtail/search/backends/database/sqlite/sqlite.py +2 -2
  407. wagtail/search/backends/elasticsearch7.py +4 -0
  408. wagtail/search/locale/en/LC_MESSAGES/django.po +3 -3
  409. wagtail/search/tests/test_postgres_backend.py +50 -0
  410. wagtail/sites/locale/en/LC_MESSAGES/django.po +8 -8
  411. wagtail/sites/locale/he_IL/LC_MESSAGES/django.mo +0 -0
  412. wagtail/sites/locale/he_IL/LC_MESSAGES/django.po +2 -2
  413. wagtail/sites/locale/ro/LC_MESSAGES/django.mo +0 -0
  414. wagtail/sites/locale/ro/LC_MESSAGES/django.po +3 -2
  415. wagtail/sites/tests.py +35 -9
  416. wagtail/sites/views.py +3 -1
  417. wagtail/snippets/locale/de/LC_MESSAGES/django.mo +0 -0
  418. wagtail/snippets/locale/de/LC_MESSAGES/django.po +7 -8
  419. wagtail/snippets/locale/en/LC_MESSAGES/django.po +16 -56
  420. wagtail/snippets/locale/fr/LC_MESSAGES/django.po +2 -2
  421. wagtail/snippets/locale/he_IL/LC_MESSAGES/django.mo +0 -0
  422. wagtail/snippets/locale/he_IL/LC_MESSAGES/django.po +2 -2
  423. wagtail/snippets/locale/hr_HR/LC_MESSAGES/django.mo +0 -0
  424. wagtail/snippets/locale/hr_HR/LC_MESSAGES/django.po +6 -2
  425. wagtail/snippets/locale/lv/LC_MESSAGES/django.mo +0 -0
  426. wagtail/snippets/locale/lv/LC_MESSAGES/django.po +12 -0
  427. wagtail/snippets/locale/zh_Hant/LC_MESSAGES/django.mo +0 -0
  428. wagtail/snippets/locale/zh_Hant/LC_MESSAGES/django.po +4 -0
  429. wagtail/snippets/static/wagtailsnippets/js/snippet-chooser-telepath.js +1 -1
  430. wagtail/snippets/static/wagtailsnippets/js/snippet-chooser.js +1 -1
  431. wagtail/snippets/templates/wagtailsnippets/snippets/action_menu/publish.html +3 -1
  432. wagtail/snippets/templates/wagtailsnippets/snippets/action_menu/save.html +3 -1
  433. wagtail/snippets/templates/wagtailsnippets/snippets/create.html +2 -3
  434. wagtail/snippets/templates/wagtailsnippets/snippets/edit.html +2 -3
  435. wagtail/snippets/tests/test_preview.py +13 -2
  436. wagtail/snippets/tests/test_snippets.py +41 -16
  437. wagtail/snippets/tests/test_viewset.py +95 -18
  438. wagtail/snippets/tests/test_workflows.py +12 -0
  439. wagtail/snippets/views/snippets.py +1 -40
  440. wagtail/templatetags/wagtailcore_tags.py +1 -1
  441. wagtail/test/demosite/models.py +1 -1
  442. wagtail/test/middleware.py +14 -1
  443. wagtail/test/testapp/fixtures/test.json +20 -0
  444. wagtail/test/testapp/migrations/0001_squashed_0073_revisablechildmodel_secret_text.py +8 -8
  445. wagtail/test/testapp/migrations/0023_snippetchoosermodel_full_featured.py +1 -0
  446. wagtail/test/testapp/migrations/0034_custompermissionmodel.py +44 -0
  447. wagtail/test/testapp/migrations/0035_modelwithcustommanager.py +30 -0
  448. wagtail/test/testapp/migrations/0036_complexdefaultstreampage.py +28 -0
  449. wagtail/test/testapp/models.py +79 -2
  450. wagtail/test/testapp/templates/tests/custom_docs_password_required.html +10 -0
  451. wagtail/test/testapp/templates/tests/custom_page_password_required.html +10 -0
  452. wagtail/test/testapp/views.py +24 -2
  453. wagtail/test/testapp/wagtail_hooks.py +19 -0
  454. wagtail/test/utils/wagtail_tests.py +2 -2
  455. wagtail/tests/test_blocks.py +262 -1
  456. wagtail/tests/test_migrations.py +1 -1
  457. wagtail/tests/test_page_model.py +77 -0
  458. wagtail/tests/test_page_privacy.py +18 -1
  459. wagtail/tests/test_rich_text.py +95 -5
  460. wagtail/tests/test_streamfield.py +43 -0
  461. wagtail/tests/test_utils.py +8 -2
  462. wagtail/tests/test_views.py +52 -1
  463. wagtail/tests/test_whitelist.py +7 -7
  464. wagtail/users/forms.py +3 -1
  465. wagtail/users/locale/en/LC_MESSAGES/django.po +124 -96
  466. wagtail/users/locale/fr/LC_MESSAGES/django.po +2 -2
  467. wagtail/users/locale/he_IL/LC_MESSAGES/django.mo +0 -0
  468. wagtail/users/locale/he_IL/LC_MESSAGES/django.po +2 -2
  469. wagtail/users/locale/hr_HR/LC_MESSAGES/django.mo +0 -0
  470. wagtail/users/locale/hr_HR/LC_MESSAGES/django.po +13 -2
  471. wagtail/users/migrations/0013_userprofile_density.py +23 -0
  472. wagtail/users/models.py +14 -3
  473. wagtail/users/templates/wagtailusers/groups/create.html +1 -7
  474. wagtail/users/templates/wagtailusers/groups/edit.html +1 -13
  475. wagtail/users/templates/wagtailusers/groups/includes/formatted_permissions.html +46 -2
  476. wagtail/users/templates/wagtailusers/groups/includes/group_form_js.html +0 -3
  477. wagtail/users/templates/wagtailusers/users/create.html +1 -14
  478. wagtail/users/templates/wagtailusers/users/edit.html +1 -14
  479. wagtail/users/templates/wagtailusers/users/index.html +2 -5
  480. wagtail/users/templates/wagtailusers/users/index_results.html +3 -13
  481. wagtail/users/templates/wagtailusers/users/user_cell.html +9 -0
  482. wagtail/users/templatetags/wagtailusers_tags.py +107 -20
  483. wagtail/users/tests/test_admin_views.py +669 -90
  484. wagtail/users/views/groups.py +58 -61
  485. wagtail/users/views/users.py +211 -92
  486. wagtail/users/wagtail_hooks.py +6 -38
  487. wagtail/users/widgets.py +3 -5
  488. wagtail/utils/text.py +1 -1
  489. wagtail/views.py +5 -9
  490. wagtail/whitelist.py +1 -1
  491. {wagtail-6.0.1.dist-info → wagtail-6.1rc1.dist-info}/METADATA +5 -6
  492. {wagtail-6.0.1.dist-info → wagtail-6.1rc1.dist-info}/RECORD +496 -477
  493. wagtail/admin/static/wagtailadmin/js/page-editor.js +0 -1
  494. wagtail/admin/static/wagtailadmin/js/vendor/mousetrap.min.js +0 -1
  495. wagtail/admin/static/wagtailadmin/js/vendor/urlify.js +0 -1
  496. wagtail/admin/static/wagtailadmin/js/vendor/xregexp.min.js +0 -1
  497. wagtail/admin/templates/wagtailadmin/collections/index.html +0 -34
  498. wagtail/admin/templates/wagtailadmin/pages/revisions/_actions.html +0 -22
  499. wagtail/admin/templates/wagtailadmin/shared/page_breadcrumbs.html +0 -55
  500. wagtail/admin/tests/pages/test_dashboard.py +0 -172
  501. wagtail/contrib/redirects/templates/wagtailredirects/results.html +0 -23
  502. wagtail/documents/templates/wagtaildocs/documents/list.html +0 -2
  503. wagtail/search/tests/test_postgres_stemming.py +0 -40
  504. wagtail/sites/templates/wagtailsites/create.html +0 -7
  505. wagtail/sites/templates/wagtailsites/edit.html +0 -7
  506. wagtail/snippets/templates/wagtailsnippets/snippets/revisions/_actions.html +0 -36
  507. wagtail/users/templates/wagtailusers/users/list.html +0 -62
  508. wagtail/users/urls/users.py +0 -12
  509. {wagtail-6.0.1.dist-info → wagtail-6.1rc1.dist-info}/LICENSE +0 -0
  510. {wagtail-6.0.1.dist-info → wagtail-6.1rc1.dist-info}/WHEEL +0 -0
  511. {wagtail-6.0.1.dist-info → wagtail-6.1rc1.dist-info}/entry_points.txt +0 -0
  512. {wagtail-6.0.1.dist-info → wagtail-6.1rc1.dist-info}/top_level.txt +0 -0
@@ -8,7 +8,7 @@ msgid ""
8
8
  msgstr ""
9
9
  "Project-Id-Version: PACKAGE VERSION\n"
10
10
  "Report-Msgid-Bugs-To: \n"
11
- "POT-Creation-Date: 2024-01-24 13:51+0000\n"
11
+ "POT-Creation-Date: 2024-04-18 17:28+0100\n"
12
12
  "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13
13
  "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
14
14
  "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -66,7 +66,7 @@ msgstr ""
66
66
  msgid "Enter the same password as above, for verification."
67
67
  msgstr ""
68
68
 
69
- #: forms.py:103 forms.py:240
69
+ #: forms.py:103 forms.py:240 views/users.py:95
70
70
  msgid "Administrator"
71
71
  msgstr ""
72
72
 
@@ -78,7 +78,7 @@ msgstr ""
78
78
  msgid "A group with that name already exists."
79
79
  msgstr ""
80
80
 
81
- #: forms.py:369
81
+ #: forms.py:371
82
82
  msgid "You cannot have multiple permission records for the same page."
83
83
  msgstr ""
84
84
 
@@ -152,11 +152,23 @@ msgstr ""
152
152
  msgid "admin theme"
153
153
  msgstr ""
154
154
 
155
- #: models.py:101
155
+ #: models.py:88
156
+ msgid "Default"
157
+ msgstr ""
158
+
159
+ #: models.py:89
160
+ msgid "Snug"
161
+ msgstr ""
162
+
163
+ #: models.py:92
164
+ msgid "density"
165
+ msgstr ""
166
+
167
+ #: models.py:112
156
168
  msgid "user profile"
157
169
  msgstr ""
158
170
 
159
- #: models.py:102
171
+ #: models.py:113
160
172
  msgid "user profiles"
161
173
  msgstr ""
162
174
 
@@ -201,7 +213,7 @@ msgstr[1] ""
201
213
  #: templates/wagtailusers/bulk_actions/confirm_bulk_delete.html:7
202
214
  #: templates/wagtailusers/groups/includes/formatted_permissions.html:32
203
215
  #: templates/wagtailusers/groups/includes/page_permissions_form.html:13
204
- #: views/bulk_actions/delete.py:9 wagtail_hooks.py:160
216
+ #: views/bulk_actions/delete.py:9
205
217
  msgid "Delete"
206
218
  msgstr ""
207
219
 
@@ -268,26 +280,22 @@ msgid ""
268
280
  "users."
269
281
  msgstr ""
270
282
 
271
- #: templates/wagtailusers/groups/confirm_delete.html:18 views/groups.py:152
283
+ #: templates/wagtailusers/groups/confirm_delete.html:18 views/groups.py:144
272
284
  msgid "Are you sure you want to delete this group?"
273
285
  msgstr ""
274
286
 
275
- #: templates/wagtailusers/groups/create.html:27 views/groups.py:74
287
+ #: templates/wagtailusers/groups/create.html:21 views/groups.py:100
276
288
  msgid "Add group"
277
289
  msgstr ""
278
290
 
279
- #: templates/wagtailusers/groups/edit.html:11
280
- msgid "View users in this group"
281
- msgstr ""
282
-
283
- #: templates/wagtailusers/groups/edit.html:38
284
- #: templates/wagtailusers/users/edit.html:56
285
- #: templates/wagtailusers/users/edit.html:77
291
+ #: templates/wagtailusers/groups/edit.html:26
292
+ #: templates/wagtailusers/users/edit.html:48
293
+ #: templates/wagtailusers/users/edit.html:69
286
294
  msgid "Save"
287
295
  msgstr ""
288
296
 
289
- #: templates/wagtailusers/groups/edit.html:41 views/groups.py:115
290
- #: views/groups.py:151
297
+ #: templates/wagtailusers/groups/edit.html:29 views/groups.py:116
298
+ #: views/groups.py:143
291
299
  msgid "Delete group"
292
300
  msgstr ""
293
301
 
@@ -297,9 +305,8 @@ msgid "Object permissions"
297
305
  msgstr ""
298
306
 
299
307
  #: templates/wagtailusers/groups/includes/formatted_permissions.html:29
300
- #: templates/wagtailusers/groups/includes/formatted_permissions.html:122
301
- #: templates/wagtailusers/users/list.html:9
302
- #: templates/wagtailusers/users/list.html:13 views/groups.py:66
308
+ #: templates/wagtailusers/groups/includes/formatted_permissions.html:166
309
+ #: views/groups.py:92 views/users.py:149
303
310
  msgid "Name"
304
311
  msgstr ""
305
312
 
@@ -329,7 +336,39 @@ msgid "Custom permissions"
329
336
  msgstr ""
330
337
 
331
338
  #: templates/wagtailusers/groups/includes/formatted_permissions.html:112
339
+ msgid "Toggle all"
340
+ msgstr ""
341
+
332
342
  #: templates/wagtailusers/groups/includes/formatted_permissions.html:115
343
+ msgid "Toggle all add permissions"
344
+ msgstr ""
345
+
346
+ #: templates/wagtailusers/groups/includes/formatted_permissions.html:119
347
+ msgid "Toggle all change permissions"
348
+ msgstr ""
349
+
350
+ #: templates/wagtailusers/groups/includes/formatted_permissions.html:123
351
+ msgid "Toggle all delete permissions"
352
+ msgstr ""
353
+
354
+ #: templates/wagtailusers/groups/includes/formatted_permissions.html:128
355
+ msgid "Toggle all publish permissions"
356
+ msgstr ""
357
+
358
+ #: templates/wagtailusers/groups/includes/formatted_permissions.html:134
359
+ msgid "Toggle all lock permissions"
360
+ msgstr ""
361
+
362
+ #: templates/wagtailusers/groups/includes/formatted_permissions.html:140
363
+ msgid "Toggle all unlock permissions"
364
+ msgstr ""
365
+
366
+ #: templates/wagtailusers/groups/includes/formatted_permissions.html:146
367
+ msgid "Toggle all custom permissions"
368
+ msgstr ""
369
+
370
+ #: templates/wagtailusers/groups/includes/formatted_permissions.html:156
371
+ #: templates/wagtailusers/groups/includes/formatted_permissions.html:159
333
372
  msgid "Other permissions"
334
373
  msgstr ""
335
374
 
@@ -361,80 +400,41 @@ msgstr ""
361
400
  msgid "Are you sure you want to delete this user?"
362
401
  msgstr ""
363
402
 
364
- #: templates/wagtailusers/users/create.html:17
365
- #: templates/wagtailusers/users/edit.html:17
403
+ #: templates/wagtailusers/users/create.html:9
404
+ #: templates/wagtailusers/users/edit.html:9
366
405
  msgid "Account"
367
406
  msgstr ""
368
407
 
369
- #: templates/wagtailusers/users/create.html:19
370
- #: templates/wagtailusers/users/create.html:53
371
- #: templates/wagtailusers/users/edit.html:19
408
+ #: templates/wagtailusers/users/create.html:11
409
+ #: templates/wagtailusers/users/create.html:45
410
+ #: templates/wagtailusers/users/edit.html:11
372
411
  msgid "Roles"
373
412
  msgstr ""
374
413
 
375
- #: templates/wagtailusers/users/create.html:69 views/users.py:157
414
+ #: templates/wagtailusers/users/create.html:61 views/users.py:266
376
415
  msgid "Add user"
377
416
  msgstr ""
378
417
 
379
- #: templates/wagtailusers/users/edit.html:58
380
- #: templates/wagtailusers/users/edit.html:79 views/users.py:254
418
+ #: templates/wagtailusers/users/edit.html:50
419
+ #: templates/wagtailusers/users/edit.html:71 views/users.py:340
381
420
  msgid "Delete user"
382
421
  msgstr ""
383
422
 
384
- #: templates/wagtailusers/users/index.html:15
423
+ #: templates/wagtailusers/users/index.html:12
385
424
  msgid "Select all users in listing"
386
425
  msgstr ""
387
426
 
388
- #: templates/wagtailusers/users/index_results.html:10
389
- #, python-format
390
- msgid "Sorry, no users match \"<em>%(query_string)s</em>\""
427
+ #: templates/wagtailusers/users/index_results.html:6
428
+ msgid "Sorry, no users match your query"
391
429
  msgstr ""
392
430
 
393
- #: templates/wagtailusers/users/index_results.html:14
394
- #, python-format
395
- msgid ""
396
- "The %(group_name)s group has no users configured. Why not <a "
397
- "href=\"%(wagtailusers_add_url)s\">add some</a>?"
398
- msgstr ""
399
-
400
- #: templates/wagtailusers/users/index_results.html:17
431
+ #: templates/wagtailusers/users/index_results.html:8
401
432
  #, python-format
402
433
  msgid ""
403
434
  "There are no users configured. Why not <a "
404
435
  "href=\"%(wagtailusers_add_url)s\">add some</a>?"
405
436
  msgstr ""
406
437
 
407
- #: templates/wagtailusers/users/list.html:20
408
- #: templates/wagtailusers/users/list.html:24
409
- msgid "Username"
410
- msgstr ""
411
-
412
- #: templates/wagtailusers/users/list.html:28
413
- msgid "Access level"
414
- msgstr ""
415
-
416
- #: templates/wagtailusers/users/list.html:29
417
- msgid "Status"
418
- msgstr ""
419
-
420
- #: templates/wagtailusers/users/list.html:30
421
- msgid "Last Login"
422
- msgstr ""
423
-
424
- #: templates/wagtailusers/users/list.html:48
425
- msgid "Admin"
426
- msgstr ""
427
-
428
- #: templates/wagtailusers/users/list.html:51
429
- #: views/bulk_actions/set_active_state.py:11
430
- msgid "Active"
431
- msgstr ""
432
-
433
- #: templates/wagtailusers/users/list.html:54
434
- #: views/bulk_actions/set_active_state.py:11
435
- msgid "Inactive"
436
- msgstr ""
437
-
438
438
  #: utils.py:53
439
439
  #, python-format
440
440
  msgid "user %(id)s (deleted)"
@@ -462,6 +462,15 @@ msgid_plural "%(num_parent_objects)d users have been deleted"
462
462
  msgstr[0] ""
463
463
  msgstr[1] ""
464
464
 
465
+ #: views/bulk_actions/set_active_state.py:11 views/users.py:118
466
+ #: views/users.py:174
467
+ msgid "Active"
468
+ msgstr ""
469
+
470
+ #: views/bulk_actions/set_active_state.py:11 views/users.py:176
471
+ msgid "Inactive"
472
+ msgstr ""
473
+
465
474
  #: views/bulk_actions/set_active_state.py:12
466
475
  msgid "Mark as active"
467
476
  msgstr ""
@@ -484,74 +493,93 @@ msgid_plural "%(num_parent_objects)d users have been marked as inactive"
484
493
  msgstr[0] ""
485
494
  msgstr[1] ""
486
495
 
487
- #: views/groups.py:56 wagtail_hooks.py:100
496
+ #: views/groups.py:82 wagtail_hooks.py:93
488
497
  msgid "Groups"
489
498
  msgstr ""
490
499
 
491
- #: views/groups.py:57
500
+ #: views/groups.py:83
492
501
  msgid "Add a group"
493
502
  msgstr ""
494
503
 
495
- #: views/groups.py:58
504
+ #: views/groups.py:84
496
505
  msgid "Search groups"
497
506
  msgstr ""
498
507
 
499
- #: views/groups.py:75
508
+ #: views/groups.py:101
500
509
  #, python-format
501
510
  msgid "Group '%(object)s' created."
502
511
  msgstr ""
503
512
 
504
- #: views/groups.py:113
513
+ #: views/groups.py:114
505
514
  #, python-format
506
515
  msgid "Group '%(object)s' updated."
507
516
  msgstr ""
508
517
 
509
- #: views/groups.py:114
518
+ #: views/groups.py:115
510
519
  msgid "The group could not be saved due to errors."
511
520
  msgstr ""
512
521
 
513
- #: views/groups.py:150
522
+ #: views/groups.py:123
523
+ msgid "View users in this group"
524
+ msgstr ""
525
+
526
+ #: views/groups.py:142
514
527
  #, python-format
515
528
  msgid "Group '%(object)s' deleted."
516
529
  msgstr ""
517
530
 
518
- #: views/users.py:78
531
+ #: views/users.py:99 views/users.py:185
532
+ msgid "Last login"
533
+ msgstr ""
534
+
535
+ #: views/users.py:105
536
+ msgid "Group"
537
+ msgstr ""
538
+
539
+ #: views/users.py:135
519
540
  msgid "Add a user"
520
541
  msgstr ""
521
542
 
522
- #: views/users.py:86 wagtail_hooks.py:80 wagtail_hooks.py:138
543
+ #: views/users.py:138 wagtail_hooks.py:73 wagtail_hooks.py:131
523
544
  msgid "Users"
524
545
  msgstr ""
525
546
 
526
- #: views/users.py:156
527
- #, python-format
528
- msgid "User '%(object)s' created."
547
+ #: views/users.py:159
548
+ msgid "Username"
529
549
  msgstr ""
530
550
 
531
- #: views/users.py:189
532
- #, python-format
533
- msgid "User '%(object)s' updated."
551
+ #: views/users.py:166
552
+ msgid "Admin"
534
553
  msgstr ""
535
554
 
536
- #: views/users.py:191
537
- msgid "The user could not be saved due to errors."
555
+ #: views/users.py:167
556
+ msgid "Access level"
538
557
  msgstr ""
539
558
 
540
- #: views/users.py:256
559
+ #: views/users.py:178
560
+ msgid "Status"
561
+ msgstr ""
562
+
563
+ #: views/users.py:230
541
564
  #, python-format
542
- msgid "User '%(object)s' deleted."
565
+ msgid "More options for '%(title)s'"
543
566
  msgstr ""
544
567
 
545
- #: wagtail_hooks.py:149
546
- msgid "Edit"
568
+ #: views/users.py:265
569
+ #, python-format
570
+ msgid "User '%(object)s' created."
547
571
  msgstr ""
548
572
 
549
- #: wagtail_hooks.py:153
573
+ #: views/users.py:287
550
574
  #, python-format
551
- msgid "Edit user '%(name)s'"
575
+ msgid "User '%(object)s' updated."
552
576
  msgstr ""
553
577
 
554
- #: wagtail_hooks.py:164
578
+ #: views/users.py:288
579
+ msgid "The user could not be saved due to errors."
580
+ msgstr ""
581
+
582
+ #: views/users.py:341
555
583
  #, python-format
556
- msgid "Delete user '%(name)s'"
584
+ msgid "User '%(object)s' deleted."
557
585
  msgstr ""
@@ -8,8 +8,8 @@
8
8
  # Axel Haustant, 2016
9
9
  # Benoît Vogel <contact@spicy-informatique.com>, 2017
10
10
  # Bertrand Bordage <bordage.bertrand@gmail.com>, 2015-2018
11
- # fpoulain <fpoulain@metrodore.fr>, 2018
12
- # fpoulain <fpoulain@metrodore.fr>, 2018
11
+ # 69c761fa404d2f74d5a7a2904d9e6f47_dc2dbc9 <f37077798760362881f9d396b6e22ec7_1878>, 2018
12
+ # 69c761fa404d2f74d5a7a2904d9e6f47_dc2dbc9 <f37077798760362881f9d396b6e22ec7_1878>, 2018
13
13
  # incognitae <pierre@onoffdesign.com>, 2016
14
14
  # Léo <leo@naeka.fr>, 2016
15
15
  # Loic Teixeira, 2018,2020-2023
@@ -18,8 +18,8 @@ msgstr ""
18
18
  "Content-Type: text/plain; charset=UTF-8\n"
19
19
  "Content-Transfer-Encoding: 8bit\n"
20
20
  "Language: he_IL\n"
21
- "Plural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % "
22
- "1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\n"
21
+ "Plural-Forms: nplurals=3; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % "
22
+ "1 == 0) ? 1: 2;\n"
23
23
 
24
24
  msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
25
25
  msgstr "ערך זה יכול להכיל אותיות, ספרות והתווים @/./+/-/_ בלבד"
@@ -4,7 +4,7 @@
4
4
  #
5
5
  # Translators:
6
6
  # Dino Aljević <dino8890@protonmail.com>, 2020
7
- # Dino Aljević <dino8890@protonmail.com>, 2020-2023
7
+ # Dino Aljević <dino8890@protonmail.com>, 2020-2024
8
8
  # Luka Matijević <lumatijev@gmail.com>, 2015
9
9
  # Matt Westcott <matthew@torchbox.com>, 2021
10
10
  msgid ""
@@ -13,7 +13,7 @@ msgstr ""
13
13
  "Report-Msgid-Bugs-To: \n"
14
14
  "POT-Creation-Date: 2024-01-24 13:51+0000\n"
15
15
  "PO-Revision-Date: 2014-02-19 11:54+0000\n"
16
- "Last-Translator: Dino Aljević <dino8890@protonmail.com>, 2020-2023\n"
16
+ "Last-Translator: Dino Aljević <dino8890@protonmail.com>, 2020-2024\n"
17
17
  "Language-Team: Croatian (Croatia) (http://app.transifex.com/torchbox/wagtail/"
18
18
  "language/hr_HR/)\n"
19
19
  "MIME-Version: 1.0\n"
@@ -374,6 +374,9 @@ msgstr[0] "%(num_parent_objects)d korisnik je izbrisan"
374
374
  msgstr[1] "%(num_parent_objects)d korisnika je izbrisano"
375
375
  msgstr[2] "%(num_parent_objects)d korisnika je izbrisano"
376
376
 
377
+ msgid "Mark as active"
378
+ msgstr "Označi kao aktivnog"
379
+
377
380
  msgid "Change the active state for selected users"
378
381
  msgstr "Promijeni aktivno stanje odabranim korisnicima"
379
382
 
@@ -438,3 +441,11 @@ msgstr "Korisnik '%(object)s' je izbrisan."
438
441
 
439
442
  msgid "Edit"
440
443
  msgstr "Uredi"
444
+
445
+ #, python-format
446
+ msgid "Edit user '%(name)s'"
447
+ msgstr "Uredi korisnika '%(name)s'"
448
+
449
+ #, python-format
450
+ msgid "Delete user '%(name)s'"
451
+ msgstr "Izbriši korisnika '%(name)s'"
@@ -0,0 +1,23 @@
1
+ # Generated by Django 4.2.9 on 2024-04-11 08:38
2
+
3
+ from django.db import migrations, models
4
+
5
+
6
+ class Migration(migrations.Migration):
7
+
8
+ dependencies = [
9
+ ("wagtailusers", "0012_userprofile_theme"),
10
+ ]
11
+
12
+ operations = [
13
+ migrations.AddField(
14
+ model_name="userprofile",
15
+ name="density",
16
+ field=models.CharField(
17
+ choices=[("default", "Default"), ("snug", "Snug")],
18
+ default="default",
19
+ max_length=40,
20
+ verbose_name="density",
21
+ ),
22
+ ),
23
+ ]
wagtail/users/models.py CHANGED
@@ -72,15 +72,26 @@ class UserProfile(models.Model):
72
72
 
73
73
  dismissibles = models.JSONField(default=dict, blank=True)
74
74
 
75
- class AdminThemes(models.TextChoices):
75
+ class AdminColorThemes(models.TextChoices):
76
76
  SYSTEM = "system", _("System default")
77
77
  LIGHT = "light", _("Light")
78
78
  DARK = "dark", _("Dark")
79
79
 
80
80
  theme = models.CharField(
81
81
  verbose_name=_("admin theme"),
82
- choices=AdminThemes.choices,
83
- default=AdminThemes.SYSTEM,
82
+ choices=AdminColorThemes.choices,
83
+ default=AdminColorThemes.SYSTEM,
84
+ max_length=40,
85
+ )
86
+
87
+ class AdminDensityThemes(models.TextChoices):
88
+ DEFAULT = "default", _("Default")
89
+ SNUG = "snug", _("Snug")
90
+
91
+ density = models.CharField(
92
+ verbose_name=_("density"),
93
+ choices=AdminDensityThemes.choices,
94
+ default=AdminDensityThemes.DEFAULT,
84
95
  max_length=40,
85
96
  )
86
97
 
@@ -1,12 +1,6 @@
1
- {% extends "wagtailadmin/generic/base.html" %}
1
+ {% extends "wagtailadmin/generic/create.html" %}
2
2
  {% load wagtailusers_tags i18n wagtailadmin_tags %}
3
3
 
4
- {% block extra_css %}
5
- {{ block.super }}
6
-
7
- {{ form_media.css }}
8
- {% endblock %}
9
-
10
4
  {% block main_content %}
11
5
  <form action="{% url 'wagtailusers_groups:add' %}" method="POST" novalidate>
12
6
  {% csrf_token %}
@@ -1,18 +1,6 @@
1
- {% extends "wagtailadmin/generic/base.html" %}
1
+ {% extends "wagtailadmin/generic/edit.html" %}
2
2
  {% load wagtailusers_tags wagtailadmin_tags i18n %}
3
3
 
4
- {% block extra_css %}
5
- {{ block.super }}
6
-
7
- {{ form_media.css }}
8
- {% endblock %}
9
-
10
- {% block main_header %}
11
- {% trans "View users in this group" as users_str %}
12
- {% url 'wagtailusers_groups:users' group.id as group_users_url %}
13
- {% include "wagtailadmin/shared/header.html" with title=page_title action_icon="user" action_url=group_users_url action_text=users_str subtitle=page_subtitle icon="group" %}
14
- {% endblock %}
15
-
16
4
  {% block main_content %}
17
5
  <form action="{% url 'wagtailusers_groups:edit' group.id %}" method="POST" novalidate>
18
6
  {% csrf_token %}
@@ -5,7 +5,7 @@
5
5
  <fieldset>
6
6
  <legend class="w-sr-only">{% trans "Object permissions" %}</legend>
7
7
 
8
- <table class="listing">
8
+ <table class="listing" data-controller="w-bulk">
9
9
  <colgroup>
10
10
  <col />
11
11
  <col width="10%" />
@@ -96,7 +96,7 @@
96
96
  <fieldset class="w-p-0">
97
97
  <legend class="w-sr-only">{% trans "Custom permissions" %}</legend>
98
98
  {% for custom_perm in content_perms_dict.custom %}
99
- {% include "wagtailadmin/shared/forms/single_checkbox.html" with name="permissions" value=custom_perm.perm.id checked=custom_perm.selected text=custom_perm.name %}
99
+ {% include "wagtailadmin/shared/forms/single_checkbox.html" with name="permissions" value=custom_perm.perm.id checked=custom_perm.selected text=custom_perm.name attrs=custom_perm.attrs %}
100
100
  {% endfor %}
101
101
  </fieldset>
102
102
  {% endif %}
@@ -105,6 +105,50 @@
105
105
  </tr>
106
106
  {% endfor %}
107
107
  </tbody>
108
+ <tfoot>
109
+ <tr>
110
+ <th scope="row">
111
+ <input id="toggle-all" type="checkbox" data-action="w-bulk#toggleAll" data-w-bulk-target="all">
112
+ <label for="toggle-all" >{% trans "Toggle all" %}</label>
113
+ </th>
114
+ <td>
115
+ <label for="toggle-all-add" class="visuallyhidden">{% trans "Toggle all add permissions" %}</label>
116
+ <input id="toggle-all-add" type="checkbox" data-action="w-bulk#toggleAll" data-w-bulk-target="all" data-w-bulk-group-param="add">
117
+ </td>
118
+ <td>
119
+ <label for="toggle-all-change" class="visuallyhidden">{% trans "Toggle all change permissions" %}</label>
120
+ <input id="toggle-all-change" type="checkbox" data-action="w-bulk#toggleAll" data-w-bulk-target="all" data-w-bulk-group-param="change">
121
+ </td>
122
+ <td>
123
+ <label for="toggle-all-delete" class="visuallyhidden">{% trans "Toggle all delete permissions" %}</label>
124
+ <input id="toggle-all-delete" type="checkbox" data-action="w-bulk#toggleAll" data-w-bulk-target="all" data-w-bulk-group-param="delete">
125
+ </td>
126
+ {% if extra_perms_exist.publish %}
127
+ <td>
128
+ <label for="toggle-all-publish" class="visuallyhidden">{% trans "Toggle all publish permissions" %}</label>
129
+ <input id="toggle-all-publish" type="checkbox" data-action="w-bulk#toggleAll" data-w-bulk-target="all" data-w-bulk-group-param="publish">
130
+ </td>
131
+ {% endif %}
132
+ {% if extra_perms_exist.lock %}
133
+ <td>
134
+ <label for="toggle-all-lock" class="visuallyhidden">{% trans "Toggle all lock permissions" %}</label>
135
+ <input id="toggle-all-lock" type="checkbox" data-action="w-bulk#toggleAll" data-w-bulk-target="all" data-w-bulk-group-param="lock">
136
+ </td>
137
+ {% endif %}
138
+ {% if extra_perms_exist.unlock %}
139
+ <td>
140
+ <label for="toggle-all-unlock" class="visuallyhidden">{% trans "Toggle all unlock permissions" %}</label>
141
+ <input id="toggle-all-unlock" type="checkbox" data-action="w-bulk#toggleAll" data-w-bulk-target="all" data-w-bulk-group-param="unlock">
142
+ </td>
143
+ {% endif %}
144
+ {% if extra_perms_exist.custom %}
145
+ <td>
146
+ <label for="toggle-all-custom" class="visuallyhidden">{% trans "Toggle all custom permissions" %}</label>
147
+ <input id="toggle-all-custom" type="checkbox" data-action="w-bulk#toggleAll" data-w-bulk-target="all" data-w-bulk-group-param="custom">
148
+ </td>
149
+ {% endif %}
150
+ </tr>
151
+ </tfoot>
108
152
  </table>
109
153
  </fieldset>
110
154
  {% endpanel %}
@@ -1,6 +1,3 @@
1
1
  {% load wagtailadmin_tags %}
2
2
  <script src="{% versioned_static 'wagtailadmin/js/expanding-formset.js' %}"></script>
3
- <script src="{% versioned_static 'wagtailadmin/js/modal-workflow.js' %}"></script>
4
3
  <script src="{% versioned_static 'wagtailusers/js/group-form.js' %}"></script>
5
-
6
- {{ form_media.js }}
@@ -2,15 +2,7 @@
2
2
  {% load wagtailadmin_tags wagtailimages_tags %}
3
3
  {% load i18n %}
4
4
 
5
- {% block main_header %}
6
- {% include "wagtailadmin/shared/header.html" with title=page_title icon=header_icon merged=1 only %}
7
- {% endblock %}
8
-
9
- {% block content %}
10
- {% block header %}
11
- {{ block.super }}
12
- {% endblock %}
13
-
5
+ {% block main_content %}
14
6
  <div class="w-tabs" data-tabs>
15
7
  <div class="w-tabs__wrapper">
16
8
  <div role="tablist" class="w-tabs__list">
@@ -73,8 +65,3 @@
73
65
  </form>
74
66
  </div>
75
67
  {% endblock %}
76
-
77
- {% block extra_js %}
78
- {{ block.super }}
79
- {% include "wagtailadmin/pages/_editor_js.html" %}
80
- {% endblock %}
@@ -2,15 +2,7 @@
2
2
  {% load wagtailimages_tags wagtailadmin_tags %}
3
3
  {% load i18n %}
4
4
 
5
- {% block main_header %}
6
- {% include "wagtailadmin/shared/header.html" with title=page_title subtitle=page_subtitle icon=header_icon merged=1 only %}
7
- {% endblock %}
8
-
9
- {% block content %}
10
- {% block header %}
11
- {{ block.super }}
12
- {% endblock %}
13
-
5
+ {% block main_content %}
14
6
  <div class="w-tabs" data-tabs>
15
7
  <div class="w-tabs__wrapper">
16
8
  <div role="tablist" class="w-tabs__list">
@@ -85,8 +77,3 @@
85
77
  </form>
86
78
  </div>
87
79
  {% endblock %}
88
-
89
- {% block extra_js %}
90
- {{ block.super }}
91
- {% include "wagtailadmin/pages/_editor_js.html" %}
92
- {% endblock %}