Commit graph

9531 commits

Author SHA1 Message Date
Matt Westcott
590bea3b7b Revert "Fix submenu footer blocking items in admin" (#5606)
This change causes the footer to no longer be bottom-aligned when the menu is shorter than window height.

This reverts commit a459e91692.
2020-01-17 12:58:20 +00:00
Andy Chosak
349fca66f3 Fix: Properly save ordering of nested InlinePanels
The order of nested InlinePanels (recently formally added in 5566)
doesn't get saved properly due to some now-invalid assumptions in the JS
selector code.

Currently, Wagtail users can use the editor up/down arrows to order
InlinePanel elements that contain child InlinePanels, but these may not
be properly saved.

Before InlinePanel nesting was supported, it was a safer bet that a
child panel would only contain one hidden input named "-ORDER". With
nesting, however, a parent panel will also contain hidden inputs named
like this for its child panels. This breaks the logic used in the
ordering code.

This change modifies the logic to use the jQuery `.children()` selector
instead of `.next()`, ensuring that we reference the correct adjacent
panel item.

An easy way to test this against current master is to use the Wagtail
testapp test models that exercise this behavior:

1. `wagtail start testwagtail` to create a new project.
2. `cd testwagtail`
3. Edit testwagtail/settings/base.py to add the Wagtail test
application `'wagtail.tests.testapp'` to the list of `INSTALLED_APPS`.
For the admin to work properly with this app, you also need to add
`'wagtail.contrib.settings'` to that list and copy the definition of
`WAGTAILADMIN_RICH_TEXT_EDITORS` from wagtail/tests/settings.py.
4. `./manage.py migrate` to create your local database.
5. `./manage.py createsuperuser` to create an admin user.
6. Create a new Event Page
(http://localhost:8000/admin/pages/add/tests/eventpage/3/).
7. Fill in all required items, and then add multiple speakers under
"Speaker Lineup". For each speaker, add at least one Award. Save the
page.
8. Try using the up/down arrows to reorder the speakers (the parent
InlinePanel), and save the page.
9. Note that when the page reloads, the ordering hasn't been saved. If
you debug using the developer tools, you'll notice that this is because
the code being modified here selects the child panel items instead of
the adjacent parent panel item.
2020-01-15 16:43:32 +00:00
Ascani Carlo
4864920555 Fix update_index throwing AttributeError when value is None (#5757) 2020-01-14 11:33:25 +00:00
Dan Braghis
c4a0ec2c4f Use sensitive_post_parameters on password reset form (#5760) 2020-01-14 11:13:21 +00:00
Matt Westcott
1e44186f32 Reword upgrade note about removal of Page/Site from Django admin 2020-01-08 15:50:05 +00:00
Matt Westcott
e927f6269a Release note for #5634 2020-01-08 15:43:34 +00:00
Matt Westcott
e5f2611cc1 Move edit locking upgrade considerations note to 2.8 2020-01-08 15:20:25 +00:00
Matt Westcott
3f27014a86 Merge branch 'author-specific-locking' of https://github.com/jacobtoppm/wagtail into kaedroho-author-specific-locking 2020-01-08 15:05:59 +00:00
Matt Westcott
8c456a4e17 Renumber migrations for author page locking 2020-01-08 15:05:28 +00:00
Matt Westcott
ee8eda8353 Merge branch 'author-specific-locking' of https://github.com/kaedroho/wagtail into kaedroho-author-specific-locking 2020-01-08 15:02:19 +00:00
Matt Westcott
7fdb06c86c Fill in release date for 2.7.1 2020-01-08 10:39:45 +00:00
Matt Westcott
8c49f2e68d Release notes for #5694 2020-01-07 17:03:09 +00:00
jacobtm
9fbeff41b3 Update reference to , add basic tests for locked pages report, and update to cope with missing UserPagePermissionsProxy.permissions if inactive or superuser 2020-01-07 17:00:17 +00:00
Alex Tomkins
f4273fa683 Move all usage of versioned_static to media methods (#5694) 2020-01-07 16:46:57 +00:00
Matt Westcott
ac72dec52a Add test case for tag field inside InlinePanel
Fixes #5414 - thanks to @johannesvogel for the original test case.
2020-01-07 15:39:10 +00:00
jacobtm
df194b40f3 Display locked pages report only if user has 'unlock any page' permission for consistency with rfc 2020-01-07 14:57:00 +00:00
jacobtm
8a6165add8 Account for missing locked_at 2020-01-03 11:05:55 +00:00
jacobtm
3de77ba5d7 Add can_unlock_pages to UserPagePermissionsProxy and use to add permissions checks to locked pages report 2020-01-02 11:59:26 +00:00
jacobtm
7a6ec88838 Make locked pages listing compatible with translation 2020-01-02 11:03:45 +00:00
jacobtm
7421590dc7 Document reports submenu hooks 2020-01-02 09:47:52 +00:00
jacobtm
99cb3154cc Correct model reference for page, page cannot be edited when locked is True, rather than False 2020-01-02 09:41:42 +00:00
Matt Westcott
f7530cf5e3
Clarify that compatibility details seen on Github may not match the latest release
Ref: #5747
2019-12-28 20:35:51 +00:00
Matt Westcott
c72a4e0941 Fix test to accept both orderings of the cache-control header 2019-12-18 15:59:26 +00:00
Johannes Vogel
4a1b337461 add etag support for documents 2019-12-18 15:28:23 +00:00
Matt Westcott
110101d96e Make Django 3.0 support official 2019-12-17 14:24:31 +00:00
Matt Westcott
c31d426910 Update tox/travis test matrix for Django 3.0 final 2019-12-17 12:43:46 +00:00
Janneke Janssen
146853914e Add verbose_name_plural to form submission due to translation mismatch 2019-12-17 12:28:56 +00:00
Nick Smith
7acf4889db Move wagtail_urls to the end of template urls.py (#5733)
The `wagtail_urls` patterns is a catch-all list of urlpatterns, and will
prevent any patterns later in the list from being matched. The default
case when Django is in debug mode for local development is to use
`django-admin.py runserver`, and in this case the static patterns in the
example [are redundant][1]. However for anyone using a different server
for local development, this makes them work again.

[1]: https://docs.djangoproject.com/en/3.0/howto/static-files/#serving-static-files-during-development
2019-12-17 12:24:24 +00:00
Andy Chosak
cbd0882354 Fixes minor typo in code comments
Easiest PR I ever opened.
2019-12-17 11:56:03 +00:00
Tom Usher
8238a33888 Add index on PageRevision approved_go_live_at field (#5725) 2019-12-03 09:08:14 +00:00
Karl Hobley
5cfa3b09e5 Added a missing merge migration 2019-12-02 16:16:31 +00:00
Matt Westcott
4001516a27 Add formal support for nested InlinePanels
Fixes #1952 and #5511
2019-12-02 10:20:45 +10:00
Benedikt Willi
233e7f5189 Add ability to filter image index by a tag
- Fixed error when searching and filtering by tag at the same time
2019-12-02 09:54:35 +10:00
Dan Swain
749d0172e5 Documentation - include {{ block.super }} example in modelAdmin 2019-12-02 09:43:33 +10:00
Dan Swain
5a8c4edba5 Documentation - add StreamFieldPanel to available panel types 2019-12-01 19:13:11 +10:00
Andreas Bernacca
4945acf2db Update document size & hash when changing document file
Resolves #5704
2019-12-01 19:00:57 +10:00
Andreas Bernacca
5a8f468c2d Fix layout issue when using FieldRowPanel with a heading
Resolves #5691
2019-12-01 18:20:44 +10:00
Pete Andrew
abd8320dc3 Update links in docs to point at stable Django version 2019-12-01 13:19:40 +10:00
Matt Westcott
d65532dd0f Mention the need to inherit from PermissionsMixin in custom user model docs 2019-11-28 12:35:30 +00:00
Matt Westcott
dd664218b1 add clarifying comment about passing a single page type 2019-11-28 11:51:00 +00:00
Matt Westcott
1d8f85c1c5 Add upgrade considerations note for rename of API endpoint classes 2019-11-28 11:21:18 +00:00
Karl Hobley
f0de04f0bd Refactor get_base_queryset to no longer take models as a parameter 2019-11-28 10:33:55 +00:00
Karl Hobley
6af0b20152 Mention definition renaming feature in MovedDefinitionHandler docstring 2019-11-28 09:05:39 +00:00
Karl Hobley
56a6fb17e8 Add back endpoints files with deprecation warnings 2019-11-28 09:00:56 +00:00
Karl Hobley
36d440d2dd Rename endpoints modules to views 2019-11-28 09:00:56 +00:00
Karl Hobley
673864d28b Use get_base_queryset in related pages fields
Eg, children, descendants and parent

This fixes a very minor bug in the admin API where the "parent" field
wasn't being populated if it that page was outside of the default site.
2019-11-28 09:00:35 +00:00
Karl Hobley
a2b97737eb Add get_base_queryset method to PagesAPIEndpoint
This method provides a single place to define a base queryset to be used
as a base for filtering but also in the descendant_of and child_of
filters.

This improves parity between the Admin API and public API as well.
2019-11-28 09:00:35 +00:00
Karl Hobley
05f2f14a3d Remove _v1 suffix from Admin API URL namespace 2019-11-28 09:00:35 +00:00
Karl Hobley
33b6d82033 Rename Admin API endpoint to "main" 2019-11-28 09:00:35 +00:00
Karl Hobley
4e5587918a Move ForExplorerFilter into Admin API implementation
Not generally useful in the Public API
2019-11-28 09:00:35 +00:00