diff options
Diffstat (limited to 'archaeological_warehouse/models.py')
| -rw-r--r-- | archaeological_warehouse/models.py | 13 | 
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) | \ | 
