From 89ff92664ff06a974e37c15ab663394271ac4a10 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Thu, 7 Nov 2024 14:59:01 +0100 Subject: ✨ update permission script - admin: delete "owns" groups when non relevent MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ishtar_common/models_common.py | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) (limited to 'ishtar_common/models_common.py') diff --git a/ishtar_common/models_common.py b/ishtar_common/models_common.py index ed2d46305..dc48fa9e5 100644 --- a/ishtar_common/models_common.py +++ b/ishtar_common/models_common.py @@ -2466,8 +2466,12 @@ class GeoVectorData(Imported, OwnPerms): sub_q = cls._construct_query_own( "", model._get_query_owns_dicts(ishtaruser) ) + if not sub_q: + continue q2 = Q( - source_id__in=list(sub_q.values_list("id", flat=True)), + source_id__in=list( + model.objects.filter(sub_q).values_list("id", flat=True) + ), source_content_type__app_label=app_label, source_content_type__model=model_name.lower(), ) @@ -3127,6 +3131,17 @@ class PermissionRequest(models.Model): return f"{self.model} - {self.name}" +def post_save_permission_request(sender, **kwargs): + permission_request = kwargs["instance"] + IshtarUser = apps.get_model("ishtar_common", "IshtarUser") + IshtarUser.objects.filter( + person__profiles__profile_type__permission_requests__pk=permission_request.pk + ).update(need_permission_update=True) + + +post_save.connect(post_save_permission_request, sender=PermissionRequest) + + class SerializeItem: SERIALIZE_EXCLUDE = ["search_vector"] SERIALIZE_PROPERTIES = [ -- cgit v1.2.3