summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2024-02-27 15:23:50 +0100
committerÉtienne Loks <etienne.loks@iggdrasil.net>2024-04-16 16:42:33 +0200
commit81696e2c35a2f94e7a4461eaf635fa006370ce6b (patch)
tree01c309a9be8ae8a64c67fdba0433ae2ea5d4b45a
parentcf09c147bce926102d995b51278d2d533ec3c888 (diff)
downloadIshtar-81696e2c35a2f94e7a4461eaf635fa006370ce6b.tar.bz2
Ishtar-81696e2c35a2f94e7a4461eaf635fa006370ce6b.zip
🐛 Fix consultation permissions on the contents of a container (#5767)
-rw-r--r--archaeological_finds/models_finds.py22
-rw-r--r--changelog/en/changelog_2022-06-15.md1
-rw-r--r--changelog/fr/changelog_2023-01-25.md7
3 files changed, 20 insertions, 10 deletions
diff --git a/archaeological_finds/models_finds.py b/archaeological_finds/models_finds.py
index c65e2cbbe..d22d43ae3 100644
--- a/archaeological_finds/models_finds.py
+++ b/archaeological_finds/models_finds.py
@@ -2922,33 +2922,37 @@ class Find(
return new
@classmethod
- def get_query_owns(cls, ishtaruser):
+ def _get_query_owns(cls, ishtaruser, prefix=""):
q = (
cls._construct_query_own(
- "container__location__", Warehouse._get_query_owns_dicts(ishtaruser)
+ f"{prefix}container__location__", Warehouse._get_query_owns_dicts(ishtaruser)
)
| cls._construct_query_own(
- "container__responsible__", Warehouse._get_query_owns_dicts(ishtaruser)
+ f"{prefix}container__responsible__", Warehouse._get_query_owns_dicts(ishtaruser)
)
| cls._construct_query_own(
- "base_finds__context_record__operation__",
+ f"{prefix}base_finds__context_record__operation__",
Operation._get_query_owns_dicts(ishtaruser),
)
| cls._construct_query_own(
- "basket__",
+ f"{prefix}basket__",
[{"shared_with": ishtaruser, "shared_write_with": ishtaruser}],
)
| cls._construct_query_own(
"",
[
- {"history_creator": ishtaruser.user_ptr},
- {"base_finds__context_record__operation__end_date__isnull": True},
+ {f"{prefix}history_creator": ishtaruser.user_ptr},
+ {f"{prefix}base_finds__context_record__operation__end_date__isnull": True},
],
)
)
return q
@classmethod
+ def get_query_owns(cls, ishtaruser):
+ return cls._get_query_owns(ishtaruser)
+
+ @classmethod
def get_owns(
cls, user, menu_filtr=None, limit=None, values=None, get_short_menu_class=None
):
@@ -3534,6 +3538,10 @@ class FindInsideContainer(models.Model):
managed = False
db_table = "find_inside_container"
+ @classmethod
+ def get_query_owns(cls, ishtaruser):
+ return Find._get_query_owns(ishtaruser, prefix="find__")
+
for attr in Find.HISTORICAL_M2M:
m2m_changed.connect(m2m_historization_changed, sender=getattr(Find, attr).through)
diff --git a/changelog/en/changelog_2022-06-15.md b/changelog/en/changelog_2022-06-15.md
index 0b9b883ba..1d50019fc 100644
--- a/changelog/en/changelog_2022-06-15.md
+++ b/changelog/en/changelog_2022-06-15.md
@@ -60,6 +60,7 @@ v4.0.XX - 2099-12-31
- fix missing columns (#5677)
- improve values format
- context record relations graph - fix '\n' string (#5500)
+- fix consultation permissions on the contents of a container (#5767)
v4.0.75 - 2024-04-16
--------------------
diff --git a/changelog/fr/changelog_2023-01-25.md b/changelog/fr/changelog_2023-01-25.md
index fa2d29019..41c16fd70 100644
--- a/changelog/fr/changelog_2023-01-25.md
+++ b/changelog/fr/changelog_2023-01-25.md
@@ -1,8 +1,8 @@
v4.0.XX - 2099-12-31
--------------------
-- musée...
-- notices bio
+- Module musée
+- Ajout des notices biographiques
### Fonctionnalités/améliorations ###
- formulaire géographique :
@@ -60,7 +60,8 @@ v4.0.XX - 2099-12-31
- imports - CSV de résultat :
- correction de colonnes manquantes (#5677)
- amélioration du formatage des valeurs
-- relations d'unité d'enregistrements - correction du caractère '\n' (#5500)
+- graphe de relations entre unité d'enregistrements - correction du caractère '\n' (#5500)
+- correction des droits de consultation sur le contenu d'un contenant (#5767)
v4.0.75 - 2024-04-16
--------------------