Sort settings by namespace label and by global name second.

Signed-off-by: Roberto Rosario <roberto.rosario.gonzalez@gmail.com>
This commit is contained in:
Roberto Rosario
2017-07-13 21:27:10 -04:00
parent a026fc9ae6
commit 32056761c8
2 changed files with 9 additions and 4 deletions

View File

@@ -9,6 +9,7 @@
Defaults to mayan/error.log.
- Add support logging request exceptions.
- Add document list item view.
- Sort setting by namespace label and by global name second.
2.5.2 (2017-07-08)
==================

View File

@@ -32,7 +32,7 @@ class Namespace(object):
@classmethod
def get_all(cls):
return cls._registry.values()
return sorted(cls._registry.values(), key=lambda x: x.label)
@classmethod
def get(cls, name):
@@ -54,15 +54,19 @@ class Namespace(object):
self.name = name
self.label = label
self.__class__._registry[name] = self
self.settings = []
self._settings = []
def add_setting(self, **kwargs):
return Setting(namespace=self, **kwargs)
def invalidate_cache(self):
for setting in self.settings:
for setting in self._settings:
setting.invalidate_cache()
@property
def settings(self):
return sorted(self._settings, key=lambda x: x.global_name)
@python_2_unicode_compatible
class Setting(object):
@@ -88,7 +92,7 @@ class Setting(object):
self.default = default
self.help_text = help_text
self.loaded = False
namespace.settings.append(self)
namespace._settings.append(self)
self.__class__._registry[global_name] = self
def __str__(self):