diff options
author | Étienne Loks <etienne.loks@iggdrasil.net> | 2017-01-29 17:47:02 +0100 |
---|---|---|
committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2017-01-29 17:47:02 +0100 |
commit | 46af1fc5f7d61d5bcfc516ba5fb645e5892a31a0 (patch) | |
tree | 2ecae8d0ce091985d6839784b9d4b406a6455632 /archaeological_files | |
parent | 0e9d38a6ed4dce4c23e6dfc59869d9d652e6dcfa (diff) | |
parent | 36928455883bd9366afe8bbd0c48076866df5802 (diff) | |
download | Ishtar-46af1fc5f7d61d5bcfc516ba5fb645e5892a31a0.tar.bz2 Ishtar-46af1fc5f7d61d5bcfc516ba5fb645e5892a31a0.zip |
Merge branch 'master' into v0.9
Conflicts:
archaeological_warehouse/migrations/0020_generate_cache_lbl_for_containers.py
Diffstat (limited to 'archaeological_files')
-rw-r--r-- | archaeological_files/models.py | 21 |
1 files changed, 14 insertions, 7 deletions
diff --git a/archaeological_files/models.py b/archaeological_files/models.py index 638b19d18..15e65579c 100644 --- a/archaeological_files/models.py +++ b/archaeological_files/models.py @@ -340,12 +340,16 @@ class File(ClosedItem, BaseHistorizedItem, OwnPerms, ValueGetter, cache.set(cache_key, has_adminact, settings.CACHE_TIMEOUT) return has_adminact - def get_short_menu_class(self): - cache_key, val = get_cache(self.__class__, [self.pk, - 'short_class_name']) + @classmethod + def get_short_menu_class(cls, pk): + cache_key, val = get_cache(cls, [pk, 'short_class_name']) if val: return val - return self.update_short_menu_class(cache_key) + q = cls.objects.filter(pk=pk) + if not q.count(): + return '' + item = q.all()[0] + return item.update_short_menu_class(cache_key) def update_short_menu_class(self, cache_key=None): if not cache_key: @@ -366,9 +370,12 @@ class File(ClosedItem, BaseHistorizedItem, OwnPerms, ValueGetter, return cls @classmethod - def get_owns(cls, user, menu_filtr=None, limit=None): - owns = super(File, cls).get_owns(user, limit=limit) - return sorted(owns, key=lambda x: x.cached_label) + def get_owns(cls, user, menu_filtr=None, limit=None, values=None, + get_short_menu_class=False): + owns = super(File, cls).get_owns( + user, limit=limit, values=values, + get_short_menu_class=get_short_menu_class) + return cls._return_get_owns(owns, values, get_short_menu_class) def get_values(self, prefix=''): values = super(File, self).get_values(prefix=prefix) |