diff --git a/HISTORY.rst b/HISTORY.rst index 2a9646c0c0..d42863a004 100644 --- a/HISTORY.rst +++ b/HISTORY.rst @@ -286,6 +286,8 @@ * Improve search negation logic. * Add support for search field transformations. * Disable hiding page navigation on idle. +* Display namespace in the transition trigger view. +* Sort events list in the transition trigger view. 3.1.11 (2019-04-XX) =================== diff --git a/docs/releases/3.2.rst b/docs/releases/3.2.rst index 712b30cab1..8bd8157e82 100644 --- a/docs/releases/3.2.rst +++ b/docs/releases/3.2.rst @@ -715,6 +715,8 @@ Other changes outside of quotes are now interpreted as negation. - Add support for search field transformations. - Disable hiding page navigation on idle. +- Display namespace in the transition trigger view. +- Sort events list in the transition trigger view. Removals diff --git a/mayan/apps/document_states/forms.py b/mayan/apps/document_states/forms.py index c0eeea3544..cc7c76953b 100644 --- a/mayan/apps/document_states/forms.py +++ b/mayan/apps/document_states/forms.py @@ -113,6 +113,10 @@ class WorkflowTransitionForm(forms.ModelForm): class WorkflowTransitionTriggerEventRelationshipForm(forms.Form): + namespace = forms.CharField( + label=_('Namespace'), required=False, + widget=forms.TextInput(attrs={'readonly': 'readonly'}) + ) label = forms.CharField( label=_('Label'), required=False, widget=forms.TextInput(attrs={'readonly': 'readonly'}) @@ -130,6 +134,7 @@ class WorkflowTransitionTriggerEventRelationshipForm(forms.Form): *args, **kwargs ) + self.fields['namespace'].initial = self.initial['event_type'].namespace self.fields['label'].initial = self.initial['event_type'].label relationship = self.initial['transition'].trigger_events.filter( diff --git a/mayan/apps/document_states/views/workflow_views.py b/mayan/apps/document_states/views/workflow_views.py index b3f4445303..423134e0b1 100644 --- a/mayan/apps/document_states/views/workflow_views.py +++ b/mayan/apps/document_states/views/workflow_views.py @@ -685,9 +685,6 @@ class SetupWorkflowTransitionTriggerEventListView(ExternalObjectMixin, FormView) SetupWorkflowTransitionTriggerEventListView, self ).form_valid(form=form) - def get_object(self): - return self.external_object - def get_extra_context(self): return { 'form_display_mode_table': True, @@ -713,6 +710,11 @@ class SetupWorkflowTransitionTriggerEventListView(ExternalObjectMixin, FormView) name__in=event_type_ids ) + # Sort queryset in Python by namespace, then by label + event_type_queryset = sorted( + event_type_queryset, key=lambda x: (x.namespace, x.label) + ) + for event_type in event_type_queryset: initial.append({ 'transition': obj, @@ -720,6 +722,9 @@ class SetupWorkflowTransitionTriggerEventListView(ExternalObjectMixin, FormView) }) return initial + def get_object(self): + return self.external_object + def get_post_action_redirect(self): return reverse( viewname='document_states:setup_workflow_transition_list',