summaryrefslogtreecommitdiff
path: root/ishtar_common
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2017-03-30 19:27:00 +0200
committerÉtienne Loks <etienne.loks@iggdrasil.net>2017-03-30 19:27:00 +0200
commit073cbb5a6d2e39050e90bc4f9dd12db17043715f (patch)
tree9b9a2f7ce9dcf78a581ba41e55010afdacc264c2 /ishtar_common
parentfe0b07d939b7a27f60e928673743e19666b2366c (diff)
downloadIshtar-073cbb5a6d2e39050e90bc4f9dd12db17043715f.tar.bz2
Ishtar-073cbb5a6d2e39050e90bc4f9dd12db17043715f.zip
Access control: define get_query_own for persons
Diffstat (limited to 'ishtar_common')
-rw-r--r--ishtar_common/models.py12
1 files changed, 12 insertions, 0 deletions
diff --git a/ishtar_common/models.py b/ishtar_common/models.py
index 048af1294..66433747c 100644
--- a/ishtar_common/models.py
+++ b/ishtar_common/models.py
@@ -2770,6 +2770,18 @@ class Person(Address, Merge, OwnPerms, ValueGetter):
for fle in self.general_contractor.all():
fle.save() # force update of raw_general_contractor
+ @classmethod
+ def get_query_owns(cls, user):
+ return \
+ Q(operation_scientist_responsability__collaborators__ishtaruser
+ =user.ishtaruser) | \
+ Q(operation_scientist_responsability__scientist__ishtaruser
+ =user.ishtaruser) | \
+ Q(operation_collaborator__collaborators__ishtaruser
+ =user.ishtaruser) | \
+ Q(operation_collaborator__scientist__ishtaruser
+ =user.ishtaruser)
+
class IshtarUser(User):
TABLE_COLS = ('username', 'person__name', 'person__surname',