diff options
Diffstat (limited to 'ishtar_common/views.py')
| -rw-r--r-- | ishtar_common/views.py | 7 | 
1 files changed, 5 insertions, 2 deletions
diff --git a/ishtar_common/views.py b/ishtar_common/views.py index 6c0f0696a..dc72b8d12 100644 --- a/ishtar_common/views.py +++ b/ishtar_common/views.py @@ -173,7 +173,8 @@ HIERARCHIC_LEVELS = 5  HIERARCHIC_FIELDS = ['periods', '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=[], dated_fields=[]): +            base_request={}, bool_fields=[], reversed_bool_fields=[], +            dated_fields=[]):      """      Generic treatment of tables      """ @@ -207,12 +208,14 @@ def get_item(model, func_name, default_name, extra_request_keys=[],                  dct = request.session[func_name]          else:              request.session[func_name] = dct -        for k in bool_fields: +        for k in (list(bool_fields) + list(reversed_bool_fields)):              if k in dct:                  if dct[k] == u"1":                      dct.pop(k)                  else:                      dct[k] = dct[k] == u"2" and True or False +                    if k in reversed_bool_fields: +                        dct[k] = not dct[k]          for k in dated_fields:              if k in dct:                  if not dct[k]:  | 
