kopia lustrzana https://github.com/wagtail/wagtail
Deprecate PagePermissionPolicy.revisions_for_moderation
rodzic
e57a57dbaa
commit
40e9739297
|
|
@ -104,7 +104,7 @@ class PagesForModerationPanel(Component):
|
|||
context = super().get_context_data(parent_context)
|
||||
revisions = (
|
||||
PagePermissionPolicy()
|
||||
.revisions_for_moderation(request.user)
|
||||
._revisions_for_moderation(request.user)
|
||||
.select_related("user")
|
||||
.order_by("-created_at")
|
||||
)
|
||||
|
|
|
|||
|
|
@ -1,9 +1,12 @@
|
|||
import warnings
|
||||
|
||||
from django.contrib.auth import get_permission_codename, get_user_model
|
||||
from django.db.models import CharField, Q
|
||||
from django.db.models.functions import Cast
|
||||
|
||||
from wagtail.models import GroupPagePermission, Page, Revision
|
||||
from wagtail.permission_policies.base import OwnershipPermissionPolicy
|
||||
from wagtail.utils.deprecation import RemovedInWagtail60Warning
|
||||
|
||||
|
||||
class PagePermissionPolicy(OwnershipPermissionPolicy):
|
||||
|
|
@ -215,7 +218,7 @@ class PagePermissionPolicy(OwnershipPermissionPolicy):
|
|||
explorable_pages = explorable_pages.filter(path__startswith=fca_page.path)
|
||||
return explorable_pages
|
||||
|
||||
def revisions_for_moderation(self, user):
|
||||
def _revisions_for_moderation(self, user):
|
||||
# Deal with the trivial cases first...
|
||||
if not user.is_active:
|
||||
return Revision.objects.none()
|
||||
|
|
@ -242,3 +245,10 @@ class PagePermissionPolicy(OwnershipPermissionPolicy):
|
|||
Cast("pk", output_field=CharField()), flat=True
|
||||
)
|
||||
)
|
||||
|
||||
def revisions_for_moderation(self, user):
|
||||
warnings.warn(
|
||||
"The PagePermissionPolicy.revisions_for_moderation() method is deprecated.",
|
||||
RemovedInWagtail60Warning,
|
||||
)
|
||||
return self._revisions_for_moderation(user)
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@ from wagtail.models import GroupPagePermission, Page, get_default_page_content_t
|
|||
from wagtail.permission_policies.pages import PagePermissionPolicy
|
||||
from wagtail.test.utils import WagtailTestUtils
|
||||
from wagtail.tests.test_permission_policies import PermissionPolicyTestUtils
|
||||
from wagtail.utils.deprecation import RemovedInWagtail60Warning
|
||||
|
||||
|
||||
class PermissionPolicyTestCase(PermissionPolicyTestUtils, WagtailTestUtils, TestCase):
|
||||
|
|
@ -519,3 +520,16 @@ class TestPagePermissionPolicy(PermissionPolicyTestCase):
|
|||
),
|
||||
[self.superuser],
|
||||
)
|
||||
|
||||
def test_get_revisions_for_moderation(self):
|
||||
# RemovedInWagtail60Warning
|
||||
# Remove this test when the deprecation period for the legacy
|
||||
# moderation system ends.
|
||||
with self.assertWarnsMessage(
|
||||
RemovedInWagtail60Warning,
|
||||
"The PagePermissionPolicy.revisions_for_moderation() method is deprecated.",
|
||||
):
|
||||
revisions = self.policy.revisions_for_moderation(self.superuser)
|
||||
|
||||
revision = self.reports_page.save_revision(submitted_for_moderation=True)
|
||||
self.assertCountEqual(revisions, [revision])
|
||||
|
|
|
|||
Ładowanie…
Reference in New Issue