diff options
Diffstat (limited to 'ishtar_common')
-rw-r--r-- | ishtar_common/models.py | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/ishtar_common/models.py b/ishtar_common/models.py index 1850f86c8..6eb36acdb 100644 --- a/ishtar_common/models.py +++ b/ishtar_common/models.py @@ -3893,11 +3893,18 @@ class Document(OwnPerms, ImageModel, FullSearch, Imported): def get_query_owns(cls, ishtaruser): Operation = cls.operations.rel.related_model ArchaeologicalSite = cls.sites.rel.related_model - q = cls._construct_query_own( - 'operations__', Operation._get_query_owns_dicts(ishtaruser) - ) | cls._construct_query_own( - 'sites__', ArchaeologicalSite._get_query_owns_dicts(ishtaruser) + query_own_list = ( + ('operations__', Operation._get_query_owns_dicts(ishtaruser)), + ('sites__', ArchaeologicalSite._get_query_owns_dicts(ishtaruser)), ) + q = None + for prefix, owns in query_own_list: + subq = cls._construct_query_own(prefix, owns) + if subq: + if not q: + q = subq + else: + q |= subq return q def get_associated_operation(self): |