Perform check in contribute_to_class so that we can skip it for fake models in migrations.
Also bump the deprecation up to RemovedInWagtail40Warning (since it's a multi-stage deprecation that will be strung out for too long otherwise)
* Return comment count to header toggle with placeholder styling
* Fix comment count styling, adjust sidebar sizing and comment toggle space
* Remove comment spacing fix for now
Add client-side logic to confirm a duplicate upload
Add template shown when a duplicate image is found via modal upload
Style duplicate upload template shown in modal
Add test for duplicate image upload in modal chooser
Avoid loading all duplicates in memory and use f-string
Make template fragments translatable and use image templatetag to render images
Use class selector instead of direct element one
Set primary button to 'Use existing and delete new' on duplicate upload
Add utility function to find an image's potential duplicates
Add logic to detect duplicates on multiple images upload view
Add template shown when a user is prompted to confirm a duplicate upload
Add client-side logic to confirm a duplicate upload
Add/update styles
Add tests for duplicate image uploads
Index Image file_hash field
Ensure that a user can choose an image from duplicates returned by find_image_duplicates
Use CSS classes instead of HTML elements to hide edit form on duplicate upload
Add ImagesPermissionPolicy helper to retrieve the permission policy dynamically
This allows test cases that override the base image model to pick up the corresponding permission policy, should they need it.
Remove usage of sibling selector
Use wagtail image templatetag to generate image
Renamed ImagesPermissionPolicy to ImagesPermissionPolicyGetter
Fail loudly when setting permission policy and a wromg image model is provided
Add decorator to disconnect a signal's receiver during a test execution and use it in get_image_model tests
Improve warning message on duplicate upload in multiple upload view
Show matching form when confirming a duplicate upload
- resolves #1874
- ensure message is dynamic based on the setting TAG_SPACES_ALLOWED
- Update wagtail/admin/templates/wagtailadmin/widgets/tag_widget.html
* Remove dropdown behaviour when switcher legitimately only contains a single locale
* Don't omit listing when there are no child pages, because it's possible to land on a page with no children when switching locales
Addresses #7999. get_url_parts _should_ always return a valid result since we only run it on sites that the page belongs to, but if it doesn't, we don't want it to error out (since this is only a background task).
Fixes #8291. When results listings are generated as partial AJAX responses through the listing_results review, the 'next' parameter on those results should point back to the main 'index' view so that on return from the edit view, the user gets back a full page rather than a partial response.