summaryrefslogtreecommitdiff
path: root/archaeological_finds
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2018-10-17 17:33:30 +0200
committerÉtienne Loks <etienne.loks@iggdrasil.net>2018-10-24 12:06:09 +0200
commit12677a8856f7503e908d965ca2034c6afccda838 (patch)
treec8c33449dc1ad25f195839068fa1fdd6125931ec /archaeological_finds
parentdddba4f6f64680a047d99292f8acf65ae57238cf (diff)
downloadIshtar-12677a8856f7503e908d965ca2034c6afccda838.tar.bz2
Ishtar-12677a8856f7503e908d965ca2034c6afccda838.zip
Find: search last modified and modified by
Diffstat (limited to 'archaeological_finds')
-rw-r--r--archaeological_finds/forms.py4
-rw-r--r--archaeological_finds/migrations/0035_auto_20181017_1642.py72
-rw-r--r--archaeological_finds/models_finds.py11
3 files changed, 85 insertions, 2 deletions
diff --git a/archaeological_finds/forms.py b/archaeological_finds/forms.py
index cf08e1a19..610c309d0 100644
--- a/archaeological_finds/forms.py
+++ b/archaeological_finds/forms.py
@@ -52,7 +52,7 @@ from bootstrap_datepicker.widgets import DatePicker
from ishtar_common import widgets
from ishtar_common.forms import CustomForm, CustomFormSearch, FormSet, \
FloatField, reverse_lazy, TableSelect, get_now, FinalForm, \
- ManageOldType, FieldType, IshtarForm, FormHeader, QAForm
+ ManageOldType, FieldType, IshtarForm, FormHeader, QAForm, HistorySelect
from ishtar_common.forms_common import get_town_field
from ishtar_common.models import valid_id, valid_ids, get_current_profile, \
SpatialReferenceSystem, Area, OperationType
@@ -585,7 +585,7 @@ DatingFormSet.form_admin_name = _(u"Find - 040 - Dating")
DatingFormSet.form_slug = "find-040-dating"
-class FindSelect(CustomForm, TableSelect):
+class FindSelect(HistorySelect):
_model = models.Find
form_admin_name = _(u"Find - 001 - Search")
diff --git a/archaeological_finds/migrations/0035_auto_20181017_1642.py b/archaeological_finds/migrations/0035_auto_20181017_1642.py
new file mode 100644
index 000000000..d8515bdb5
--- /dev/null
+++ b/archaeological_finds/migrations/0035_auto_20181017_1642.py
@@ -0,0 +1,72 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.11.10 on 2018-10-17 16:42
+from __future__ import unicode_literals
+
+from django.db import migrations, models
+import virtualtime
+
+from ishtar_common.utils_migrations import reinit_last_modified
+
+
+def migrate_codes(apps, schema_editor):
+ models = ['Find', 'BaseFind', 'Property', 'Treatment', 'TreatmentFile',
+ 'Property']
+ reinit_last_modified(
+ apps, 'archaeological_finds', models
+ )
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('archaeological_finds', '0034_auto_20180814_1133'),
+ ]
+
+ operations = [
+ migrations.AddField(
+ model_name='basefind',
+ name='last_modified',
+ field=models.DateTimeField(default=virtualtime.virtual_datetime.now),
+ ),
+ migrations.AddField(
+ model_name='find',
+ name='last_modified',
+ field=models.DateTimeField(default=virtualtime.virtual_datetime.now),
+ ),
+ migrations.AddField(
+ model_name='historicalbasefind',
+ name='last_modified',
+ field=models.DateTimeField(default=virtualtime.virtual_datetime.now),
+ ),
+ migrations.AddField(
+ model_name='historicalfind',
+ name='last_modified',
+ field=models.DateTimeField(default=virtualtime.virtual_datetime.now),
+ ),
+ migrations.AddField(
+ model_name='historicaltreatment',
+ name='last_modified',
+ field=models.DateTimeField(default=virtualtime.virtual_datetime.now),
+ ),
+ migrations.AddField(
+ model_name='historicaltreatmentfile',
+ name='last_modified',
+ field=models.DateTimeField(default=virtualtime.virtual_datetime.now),
+ ),
+ migrations.AddField(
+ model_name='property',
+ name='last_modified',
+ field=models.DateTimeField(default=virtualtime.virtual_datetime.now),
+ ),
+ migrations.AddField(
+ model_name='treatment',
+ name='last_modified',
+ field=models.DateTimeField(default=virtualtime.virtual_datetime.now),
+ ),
+ migrations.AddField(
+ model_name='treatmentfile',
+ name='last_modified',
+ field=models.DateTimeField(default=virtualtime.virtual_datetime.now),
+ ),
+ migrations.RunPython(migrate_codes)
+ ]
diff --git a/archaeological_finds/models_finds.py b/archaeological_finds/models_finds.py
index 26993aa32..3a1d44f36 100644
--- a/archaeological_finds/models_finds.py
+++ b/archaeological_finds/models_finds.py
@@ -680,6 +680,8 @@ class Find(BulkUpdatedItem, ValueGetter, BaseHistorizedItem, OwnPerms,
'cr_relation_types':
'base_finds__context_record__',
}
+
+ DATED_FIELDS = ['last_modified__gte']
BASE_REQUEST = {'downstream_treatment__isnull': True}
EXTRA_REQUEST_KEYS = {
'base_finds__context_record':
@@ -860,6 +862,15 @@ class Find(BulkUpdatedItem, ValueGetter, BaseHistorizedItem, OwnPerms,
pgettext_lazy("key for text search", u"operation"),
'base_finds__context_record__operation__cached_label__icontains'
),
+ 'history_modifier': (
+ pgettext_lazy("key for text search", u"last-modified-by"),
+ 'history_modifier__ishtaruser__person__cached_label__icontains'
+ ),
+ 'modified_since': (
+ pgettext_lazy("key for text search", u"modified-since"),
+ 'last_modified__gte'
+
+ ),
}
for v in ALT_NAMES.values():
for language_code, language_lbl in settings.LANGUAGES: