summaryrefslogtreecommitdiff
path: root/archaeological_finds/models_finds.py
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2025-02-14 17:49:37 +0100
committerÉtienne Loks <etienne.loks@iggdrasil.net>2025-02-19 14:43:48 +0100
commit4f60b4805a7eac04c2a8ec2116a245dbeec3c822 (patch)
tree561f87e11ae60c96320523c80c6317ff8f1d2f99 /archaeological_finds/models_finds.py
parent94f357939957dc8a5de453224913dbecdc4dc9db (diff)
downloadIshtar-4f60b4805a7eac04c2a8ec2116a245dbeec3c822.tar.bz2
Ishtar-4f60b4805a7eac04c2a8ec2116a245dbeec3c822.zip
✨ generate_permissions
manage: - possession (direct, creation, basket) - heritage - areas association - requests ({USER} special syntax)
Diffstat (limited to 'archaeological_finds/models_finds.py')
-rw-r--r--archaeological_finds/models_finds.py12
1 files changed, 11 insertions, 1 deletions
diff --git a/archaeological_finds/models_finds.py b/archaeological_finds/models_finds.py
index 9ba25cc83..ece7d08b8 100644
--- a/archaeological_finds/models_finds.py
+++ b/archaeological_finds/models_finds.py
@@ -37,6 +37,7 @@ from ishtar_common.utils import (
m2m_historization_changed,
pgettext_lazy,
post_save_geo,
+ SearchAltName,
ugettext_lazy as _
)
@@ -67,7 +68,6 @@ from ishtar_common.models import (
Person,
post_save_cache,
QuickAction,
- SearchAltName,
SearchVectorConfig,
ValueGetter,
)
@@ -2006,6 +2006,12 @@ class Find(
"excavation_ids",
"weight_string",
]
+ UPPER_PERMISSIONS = [
+ (Operation, "base_finds__context_record__operation_id"),
+ (ContextRecord, "base_finds__context_record_id"),
+ (("archaeological_warehouse", "Warehouse"), "container__location_id"),
+ (("archaeological_warehouse", "Warehouse"), "container_ref__responsibility_id"),
+ ]
SHEET_ALTERNATIVES = [("museum", "museum_find")]
objects = UUIDModelManager()
@@ -2991,6 +2997,10 @@ class Find(
return new
@classmethod
+ def get_limit_to_area_query(cls, town_ids):
+ return Q(base_finds__context_record__operation__towns__pk__in=town_ids)
+
+ @classmethod
def _get_query_owns(cls, ishtaruser, prefix=""):
q = (
cls._construct_query_own(