summaryrefslogtreecommitdiff
path: root/ishtar_common
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2023-09-25 19:04:37 +0200
committerÉtienne Loks <etienne.loks@iggdrasil.net>2023-09-25 19:04:37 +0200
commit594c025a3f66c699f4b2a7add12781b7b6ad03e7 (patch)
tree71a30b2e8f1f859ede206f9dcea9478e95c77c6c /ishtar_common
parentf858d5a16a610fc6a9dfbc47b749a6949a6ea51b (diff)
downloadIshtar-594c025a3f66c699f4b2a7add12781b7b6ad03e7.tar.bz2
Ishtar-594c025a3f66c699f4b2a7add12781b7b6ad03e7.zip
🐛 Federation: instead of deleting excluded fields, set them to null - distant sheets: add missing default permission check
Diffstat (limited to 'ishtar_common')
-rw-r--r--ishtar_common/models_common.py6
-rw-r--r--ishtar_common/views_item.py2
2 files changed, 6 insertions, 2 deletions
diff --git a/ishtar_common/models_common.py b/ishtar_common/models_common.py
index 83245f0ff..4ab97cf58 100644
--- a/ishtar_common/models_common.py
+++ b/ishtar_common/models_common.py
@@ -3154,9 +3154,11 @@ class SerializeItem:
for field in self._meta.get_fields():
field_name = field.name
- if field_name in self.SERIALIZE_EXCLUDE or field_name in exclude:
+ if field_name in self.SERIALIZE_EXCLUDE:
continue
- if field.many_to_one or field.one_to_one:
+ elif field_name in exclude:
+ full_result[field_name] = ""
+ elif field.many_to_one or field.one_to_one:
try:
value = getattr(self, field_name)
except (MultipleObjectsReturned, ObjectDoesNotExist):
diff --git a/ishtar_common/views_item.py b/ishtar_common/views_item.py
index 70ae0f2d0..eba83275e 100644
--- a/ishtar_common/views_item.py
+++ b/ishtar_common/views_item.py
@@ -330,6 +330,8 @@ def show_source_item(request, source_id, model, name, base_dct, extra_dct):
permissions = ["permission_view_document"]
for p in permissions:
dct[p] = True
+ dct["permission_change_own_document"] = False
+ dct["permission_change_document"] = False
tpl = loader.get_template(f"ishtar/sheet_{name}_window.html")
content = tpl.render(dct, request)