summaryrefslogtreecommitdiff
path: root/archaeological_warehouse/models.py
diff options
context:
space:
mode:
Diffstat (limited to 'archaeological_warehouse/models.py')
-rw-r--r--archaeological_warehouse/models.py13
1 files changed, 13 insertions, 0 deletions
diff --git a/archaeological_warehouse/models.py b/archaeological_warehouse/models.py
index ae1ef5e47..c80b4476b 100644
--- a/archaeological_warehouse/models.py
+++ b/archaeological_warehouse/models.py
@@ -536,6 +536,19 @@ class Container(LightHistorizedItem, OwnPerms):
def _get_base_image_path(self):
return self.responsible._get_base_image_path() + u"/" + self.external_id
+ def merge(self, item, keep_old=False):
+ locas = [
+ cl.division.division.txt_idx
+ for cl in ContainerLocalisation.objects.filter(container=self).all()
+ ]
+ for loca in ContainerLocalisation.objects.filter(container=item).all():
+ if loca.division.division.txt_idx not in locas:
+ loca.container = self
+ loca.save()
+ else:
+ loca.delete()
+ super(Container, self).merge(item, keep_old=keep_old)
+
@classmethod
def get_query_owns(cls, ishtaruser):
return Q(history_creator=ishtaruser.user_ptr) | \