summaryrefslogtreecommitdiff
path: root/ishtar_common/views.py
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@peacefrogs.net>2013-04-04 12:48:06 +0200
committerÉtienne Loks <etienne.loks@peacefrogs.net>2013-04-04 12:48:06 +0200
commitc693630090f670ca33981dcdf0b135fdd7432972 (patch)
treecc236b69e01cd80ce378bb932b619bb7835a215f /ishtar_common/views.py
parentf6f70c2d270644a520c6f2f1bcf718839c5f489c (diff)
downloadIshtar-c693630090f670ca33981dcdf0b135fdd7432972.tar.bz2
Ishtar-c693630090f670ca33981dcdf0b135fdd7432972.zip
Operations: search operations by dates (refs #1187)
Diffstat (limited to 'ishtar_common/views.py')
-rw-r--r--ishtar_common/views.py15
1 files changed, 13 insertions, 2 deletions
diff --git a/ishtar_common/views.py b/ishtar_common/views.py
index 4a1a656d9..83833e517 100644
--- a/ishtar_common/views.py
+++ b/ishtar_common/views.py
@@ -173,7 +173,7 @@ HIERARCHIC_LEVELS = 5
HIERARCHIC_FIELDS = ['period', 'unit', 'material_type']
PRIVATE_FIELDS = ('id', 'history_modifier', 'order')
def get_item(model, func_name, default_name, extra_request_keys=[],
- base_request={}, bool_fields=[]):
+ base_request={}, bool_fields=[], dated_fields=[]):
"""
Generic treatment of tables
"""
@@ -213,7 +213,18 @@ def get_item(model, func_name, default_name, extra_request_keys=[],
dct.pop(k)
else:
dct[k] = dct[k] == u"2" and True or False
-
+ for k in dated_fields:
+ if k in dct:
+ if not dct[k]:
+ dct.pop(k)
+ try:
+ items = dct[k].split('/')
+ assert len(items) == 3
+ dct[k] = datetime.date(*map(lambda x: int(x),
+ reversed(items))
+ ).strftime('%Y-%m-%d')
+ except AssertionError:
+ dct.pop(k)
# manage hierarchic conditions
or_reqs = []
for req in dct.copy():