diff options
Diffstat (limited to 'ishtar/ishtar_base/views.py')
| -rw-r--r-- | ishtar/ishtar_base/views.py | 20 | 
1 files changed, 12 insertions, 8 deletions
diff --git a/ishtar/ishtar_base/views.py b/ishtar/ishtar_base/views.py index e32b9dba5..8a3ecb05f 100644 --- a/ishtar/ishtar_base/views.py +++ b/ishtar/ishtar_base/views.py @@ -219,14 +219,17 @@ def get_item(model, func_name, default_name, extra_request_keys=[],              query = query & or_req          items = model.objects.filter(query)          q = request_items.get('sidx') -        # manage tables +        # manage sort tables          if q and q in request_keys: -            k = request_keys[q] -            if k.endswith("__pk"): -                k = k[:-len("__pk")] + "__label" -            q = request_items.get('sord') -            sign = q and q == u'desc' and "-" or '' -            items = items.order_by(sign + k) +            ks = request_keys[q] +            if type(ks) not in (list, tuple): +                ks = [k] +            for k in ks: +                if k.endswith("__pk"): +                    k = k[:-len("__pk")] + "__label" +                q = request_items.get('sord') +                sign = q and q == u'desc' and "-" or '' +                items = items.order_by(sign + k)          datas = []          if old:              items = [item.get_previous(old) for item in items] @@ -429,7 +432,8 @@ def autocomplete_operation(request, non_closed=True):  get_operation = get_item(models.Operation, 'get_operation', 'operation',        bool_fields = ['end_date__isnull'], -      extra_request_keys={'end_date':'end_date__isnull'}) +      extra_request_keys={'end_date':'end_date__isnull', +                          'year_index':('year', 'operation_code')})  show_operation = show_item(models.Operation, 'operation')  revert_operation = revert_item(models.Operation)  | 
