From 60d157717fc520281ffbf3737bd35274c511df6e Mon Sep 17 00:00:00 2001 From: Roberto Rosario Date: Fri, 25 Aug 2017 04:14:19 -0400 Subject: [PATCH] Sort WorkflowAction classes from the get_all() method. Signed-off-by: Roberto Rosario --- mayan/apps/document_states/classes.py | 6 +++++- mayan/apps/document_states/forms.py | 4 ++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/mayan/apps/document_states/classes.py b/mayan/apps/document_states/classes.py index cdf1cb37e1..f86a8100c2 100644 --- a/mayan/apps/document_states/classes.py +++ b/mayan/apps/document_states/classes.py @@ -50,7 +50,11 @@ class WorkflowAction(six.with_metaclass(WorkflowActionMetaclass, WorkflowActionB @classmethod def get_all(cls): - return cls._registry + return sorted(cls._registry.values(), key=lambda x: x.label) + + @classmethod + def id(cls): + return '{}.{}'.format(cls.__module__, cls.__name__) @staticmethod def initialize(): diff --git a/mayan/apps/document_states/forms.py b/mayan/apps/document_states/forms.py index 84d23d4559..47ae7d6747 100644 --- a/mayan/apps/document_states/forms.py +++ b/mayan/apps/document_states/forms.py @@ -24,8 +24,8 @@ class WorkflowActionSelectionForm(forms.Form): self.fields['klass'].choices = [ ( - key, klass.label - ) for key, klass in WorkflowAction.get_all().items() + klass.id(), klass.label + ) for klass in WorkflowAction.get_all() ]