summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2021-02-11 16:55:12 +0100
committerÉtienne Loks <etienne.loks@iggdrasil.net>2021-02-28 12:15:24 +0100
commita2cff1951871f2a59cb3c252d759358bff5f5fa4 (patch)
treedab32e80f0cee35c8597f8eb5f5432f2de814f89
parent922adb6548078da98db30000bb0bf4ea17a40be5 (diff)
downloadIshtar-a2cff1951871f2a59cb3c252d759358bff5f5fa4.tar.bz2
Ishtar-a2cff1951871f2a59cb3c252d759358bff5f5fa4.zip
Container: generate index by location not responsibility
-rw-r--r--archaeological_warehouse/models.py24
-rw-r--r--example_project/settings.py3
-rw-r--r--ishtar_common/data_importer.py2
-rw-r--r--ishtar_common/models_imports.py1
4 files changed, 11 insertions, 19 deletions
diff --git a/archaeological_warehouse/models.py b/archaeological_warehouse/models.py
index 25a57c4ae..db08c3467 100644
--- a/archaeological_warehouse/models.py
+++ b/archaeological_warehouse/models.py
@@ -1380,20 +1380,12 @@ class Container(DocumentItem, Merge, LightHistorizedItem,
q = q.exclude(id=self.id)
if self.index and not q.count():
return
- if settings.ISHTAR_CONTAINER_INDEX == "general":
- q = Container.objects
- if q.count():
- self.index = int(
- q.all().aggregate(Max("index"))["index__max"] or 0) + 1
- else:
- self.index = 1
- else: # default is index by warehouse
- q = Container.objects.filter(location=self.location)
- if q.count():
- self.index = int(
- q.all().aggregate(Max("index"))["index__max"]) + 1
- else:
- self.index = 1
+ q = Container.objects.filter(location=self.location)
+ if q.count():
+ self.index = int(
+ q.all().aggregate(Max("index"))["index__max"]) + 1
+ else:
+ self.index = 1
if not self.cached_division:
self.cached_division = self._generate_cached_division()
@@ -1418,8 +1410,8 @@ class Container(DocumentItem, Merge, LightHistorizedItem,
if not self.index and not self.container_type.stationary:
self.skip_history_when_saving = True
q = Container.objects.filter(
- responsibility=self.responsibility).exclude(
- pk=self.pk).order_by('-index')
+ location=self.location
+ ).exclude(pk=self.pk).order_by('-index')
self.index = q.all()[0].index + 1 if q.count() else 1
updated = True
diff --git a/example_project/settings.py b/example_project/settings.py
index d7c382f71..8e2ad2e01 100644
--- a/example_project/settings.py
+++ b/example_project/settings.py
@@ -293,9 +293,6 @@ ISHTAR_SEARCH_LANGUAGE = "french"
ISHTAR_SECURE = True
-# index by warehouse or on the whole database
-ISHTAR_CONTAINER_INDEX = 'warehouse' # or "general"
-
ISHTAR_DPTS = []
MAX_ATTEMPTS = 1 # django background tasks
diff --git a/ishtar_common/data_importer.py b/ishtar_common/data_importer.py
index f48651ac7..b0d6a539d 100644
--- a/ishtar_common/data_importer.py
+++ b/ishtar_common/data_importer.py
@@ -1182,6 +1182,8 @@ class Importer(object):
obj, created = self.get_object(self.OBJECT_CLS, data)
if self.simulate:
return data
+ # print(data)
+ # print(self._defaults)
if self.import_instance:
self.import_instance.add_imported_line(self.idx_line)
diff --git a/ishtar_common/models_imports.py b/ishtar_common/models_imports.py
index 3bb6c50b8..b3b64bd65 100644
--- a/ishtar_common/models_imports.py
+++ b/ishtar_common/models_imports.py
@@ -726,6 +726,7 @@ TARGET_MODELS = [
('ishtar_common.models.PersonType', _("Person type")),
('TitleType', _("Title")),
('SourceType', _("Source type")),
+ ('ishtar_common.models.SourceType', _("Source type")),
('AuthorType', _("Author type")),
('Format', _("Format")),
('ishtar_common.models.Format', _("Format")),