From 00c03cf3fd262aa230791f1c9e63ba673201dcaf Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Wed, 23 Oct 2019 15:19:31 +0200 Subject: Documents: form - save modifier and creator - fix own permissions - fix own select --- ishtar_common/models.py | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) (limited to 'ishtar_common/models.py') diff --git a/ishtar_common/models.py b/ishtar_common/models.py index f3ef8103c..ffa5323dd 100644 --- a/ishtar_common/models.py +++ b/ishtar_common/models.py @@ -5318,12 +5318,14 @@ class Document(BaseHistorizedItem, QRCodeItem, OwnPerms, ImageModel, @classmethod def get_query_owns(cls, ishtaruser): - Operation = cls.operations.rel.related_model - ArchaeologicalSite = cls.sites.rel.related_model - query_own_list = ( - ('operations__', Operation._get_query_owns_dicts(ishtaruser)), - ('sites__', ArchaeologicalSite._get_query_owns_dicts(ishtaruser)), - ) + query_own_list = [] + for rel_model in cls.RELATED_MODELS: + klass = getattr(cls, rel_model).rel.related_model + q_own_dct = klass._get_query_owns_dicts(ishtaruser) + if q_own_dct: + query_own_list.append( + (rel_model + "__", q_own_dct) + ) q = None for prefix, owns in query_own_list: subq = cls._construct_query_own(prefix, owns) @@ -5332,6 +5334,9 @@ class Document(BaseHistorizedItem, QRCodeItem, OwnPerms, ImageModel, q = subq else: q |= subq + q |= cls._construct_query_own('', [ + {'history_creator': ishtaruser.user_ptr} + ]) return q def get_associated_operation(self): -- cgit v1.2.3