diff --git a/CHANGELOG.txt b/CHANGELOG.txt index 472744ebe980..b2babd0a2d09 100644 --- a/CHANGELOG.txt +++ b/CHANGELOG.txt @@ -10,6 +10,7 @@ Changelog * Maintenance: Update Eslint, Prettier & Jest npm packages (LB (Ben) Johnston) * Maintenance: Add npm scripts for TypeScript checks and formatting SCSS files (LB (Ben) Johnston) * Maintenance: Run tests in parallel in some of the CI setup (Sage Abdullah) + * Maintenance: Remove unused WorkflowStatus view, urlpattern, and workflow-status.js (Storm Heg) 5.1 (01.08.2023) diff --git a/client/src/entrypoints/admin/workflow-status.js b/client/src/entrypoints/admin/workflow-status.js deleted file mode 100644 index 389510c31b25..000000000000 --- a/client/src/entrypoints/admin/workflow-status.js +++ /dev/null @@ -1,13 +0,0 @@ -import $ from 'jquery'; - -$(() => { - /* Interface to view the workflow status from the explorer / editor */ - // eslint-disable-next-line func-names - $('button[data-action-workflow-status]').on('click', function () { - // eslint-disable-next-line no-undef - ModalWorkflow({ - url: this.getAttribute('data-url'), - }); - return false; - }); -}); diff --git a/client/webpack.config.js b/client/webpack.config.js index 446212518024..4f405d1f5ded 100644 --- a/client/webpack.config.js +++ b/client/webpack.config.js @@ -58,7 +58,6 @@ module.exports = function exports(env, argv) { 'userbar', 'wagtailadmin', 'workflow-action', - 'workflow-status', 'bulk-actions', ], 'images': [ diff --git a/docs/releases/5.2.md b/docs/releases/5.2.md index 4f654e90e224..b8e3a3a5467c 100644 --- a/docs/releases/5.2.md +++ b/docs/releases/5.2.md @@ -31,6 +31,7 @@ depth: 1 * Update Eslint, Prettier & Jest npm packages (LB (Ben) Johnston) * Add npm scripts for TypeScript checks and formatting SCSS files (LB (Ben) Johnston) * Run tests in parallel in some of the CI setup (Sage Abdullah) + * Remove unused WorkflowStatus view, urlpattern, and workflow-status.js (Storm Heg) ## Upgrade considerations - changes affecting all projects diff --git a/wagtail/admin/templates/wagtailadmin/pages/_editor_js.html b/wagtail/admin/templates/wagtailadmin/pages/_editor_js.html index a0f2a33b559b..4e7123388805 100644 --- a/wagtail/admin/templates/wagtailadmin/pages/_editor_js.html +++ b/wagtail/admin/templates/wagtailadmin/pages/_editor_js.html @@ -25,5 +25,4 @@ - {% hook_output 'insert_editor_js' %} diff --git a/wagtail/admin/urls/pages.py b/wagtail/admin/urls/pages.py index 776b58ccddaa..bd354b2cbbfb 100644 --- a/wagtail/admin/urls/pages.py +++ b/wagtail/admin/urls/pages.py @@ -87,11 +87,6 @@ workflow.PreviewRevisionForTask.as_view(), name="workflow_preview", ), - path( - "workflow/status//", - workflow.WorkflowStatus.as_view(), - name="workflow_status", - ), path( "moderation//approve/", moderation.approve_moderation, diff --git a/wagtail/admin/views/generic/workflow.py b/wagtail/admin/views/generic/workflow.py index f71170a004f4..36014ee518bb 100644 --- a/wagtail/admin/views/generic/workflow.py +++ b/wagtail/admin/views/generic/workflow.py @@ -214,42 +214,6 @@ def get_context_data(self, **kwargs): } -class WorkflowStatus(BaseObjectMixin, View): - workflow_history_url_name = None - revisions_compare_url_name = None - - def setup(self, request, *args, **kwargs): - super().setup(request, *args, **kwargs) - self.workflow_state = self.object.current_workflow_state - - def dispatch(self, request, *args, **kwargs): - if not self.workflow_state: - raise PermissionDenied - return super().dispatch(request, *args, **kwargs) - - def get_workflow_history_url(self): - return reverse(self.workflow_history_url_name, args=(quote(self.object.pk),)) - - def get(self, request, *args, **kwargs): - return render_modal_workflow( - request, - "wagtailadmin/workflows/workflow_status.html", - None, - self.get_context_data(), - ) - - def get_context_data(self, **kwargs): - return { - "object": self.object, - "workflow_state": self.workflow_state, - "current_task_state": self.workflow_state.current_task_state, - "workflow_tasks": self.workflow_state.all_tasks_with_state(), - "workflow_history_url": self.get_workflow_history_url(), - "revisions_compare_url_name": self.revisions_compare_url_name, - **kwargs, - } - - class PreviewRevisionForTask(BaseObjectMixin, View): def setup(self, request, *args, task_id, **kwargs): super().setup(request, *args, **kwargs) diff --git a/wagtail/admin/views/pages/workflow.py b/wagtail/admin/views/pages/workflow.py index d46c6f16f8ca..f9d512116842 100644 --- a/wagtail/admin/views/pages/workflow.py +++ b/wagtail/admin/views/pages/workflow.py @@ -1,8 +1,6 @@ -from django.utils.decorators import method_decorator from django.utils.translation import gettext as _ from wagtail.admin import messages -from wagtail.admin.auth import user_has_any_page_permission, user_passes_test from wagtail.admin.utils import get_latest_str from wagtail.admin.views.generic import workflow from wagtail.models import Page @@ -42,12 +40,6 @@ class ConfirmWorkflowCancellation( template_name = "wagtailadmin/pages/confirm_workflow_cancellation.html" -@method_decorator(user_passes_test(user_has_any_page_permission), name="dispatch") -class WorkflowStatus(WorkflowPageViewMixin, workflow.WorkflowStatus): - workflow_history_url_name = "wagtailadmin_pages:workflow_history" - revisions_compare_url_name = "wagtailadmin_pages:revisions_compare" - - class PreviewRevisionForTask(WorkflowPageViewMixin, workflow.PreviewRevisionForTask): def add_error_message(self): messages.error( diff --git a/wagtail/snippets/tests/test_workflows.py b/wagtail/snippets/tests/test_workflows.py index 100b4bfc98e6..a8a9bb0af332 100644 --- a/wagtail/snippets/tests/test_workflows.py +++ b/wagtail/snippets/tests/test_workflows.py @@ -283,26 +283,6 @@ def test_get_detail_with_bad_permissions(self): self.assertRedirects(response, reverse("wagtailadmin_home")) -class TestWorkflowStatus(BaseWorkflowsTestCase): - def setUp(self): - super().setUp() - self.object.text = "Edited!" - self.object.save_revision() - self.workflow_state = self.workflow.start(self.object, self.user) - - def test_get_workflow_status(self): - response = self.client.get(self.get_url("workflow_status")) - self.assertEqual(response.status_code, 200) - self.assertTemplateUsed(response, "wagtailadmin/workflows/workflow_status.html") - - # Should show link to workflow history page - self.assertContains(response, self.get_url("workflow_history")) - - # Should show the currently in progress workflow - self.assertContains(response, "Moderators approval") - self.assertContains(response, "In progress") - - class TestConfirmWorkflowCancellation(BaseWorkflowsTestCase): def setUp(self): super().setUp() diff --git a/wagtail/snippets/views/snippets.py b/wagtail/snippets/views/snippets.py index 9933602ab528..3611df60673e 100644 --- a/wagtail/snippets/views/snippets.py +++ b/wagtail/snippets/views/snippets.py @@ -600,10 +600,6 @@ class ConfirmWorkflowCancellationView(workflow.ConfirmWorkflowCancellation): pass -class WorkflowStatusView(PermissionCheckedMixin, workflow.WorkflowStatus): - permission_required = "change" - - class WorkflowPreviewView(workflow.PreviewRevisionForTask): pass @@ -787,9 +783,6 @@ class SnippetViewSet(ModelViewSet): #: The view class to use for confirming the cancellation of a workflow; must be a subclass of ``wagtail.snippet.views.snippets.ConfirmWorkflowCancellationView``. confirm_workflow_cancellation_view_class = ConfirmWorkflowCancellationView - #: The view class to use for rendering the workflow status modal; must be a subclass of ``wagtail.snippet.views.snippets.WorkflowStatusView``. - workflow_status_view_class = WorkflowStatusView - #: The view class to use for previewing a revision for a specific task; must be a subclass of ``wagtail.snippet.views.snippets.WorkflowPreviewView``. workflow_preview_view_class = WorkflowPreviewView @@ -1152,15 +1145,6 @@ def collect_workflow_action_data_view(self): def confirm_workflow_cancellation_view(self): return self.confirm_workflow_cancellation_view_class.as_view(model=self.model) - @property - def workflow_status_view(self): - return self.workflow_status_view_class.as_view( - model=self.model, - permission_policy=self.permission_policy, - workflow_history_url_name=self.get_url_name("workflow_history"), - revisions_compare_url_name=self.get_url_name("revisions_compare"), - ) - @property def workflow_preview_view(self): return self.workflow_preview_view_class.as_view(model=self.model) @@ -1479,11 +1463,6 @@ def get_urlpatterns(self): self.confirm_workflow_cancellation_view, name="confirm_workflow_cancellation", ), - path( - "workflow/status//", - self.workflow_status_view, - name="workflow_status", - ), path( "workflow_history//", self.workflow_history_view,