Ticket #1508: sort_ordering_2.patch
| File sort_ordering_2.patch, 1.1 kB (added by roger.demetrescu, 1 year ago) |
|---|
-
turbogears/paginate.py
old new 322 322 def sort_ordering(ordering, sort_name): 323 323 """Rearrange ordering based on sort_name.""" 324 324 log.debug('sort called with %s and %s' % (ordering, sort_name)) 325 if sort_name not in ordering: 326 ordering[sort_name] = [-1, True] 327 if ordering[sort_name][0] == 0: 325 if ordering.setdefault(sort_name, [-1, True])[0] == 0: 328 326 # Flip 329 327 ordering[sort_name][1] = not ordering[sort_name][1] 330 328 else: 331 ordering[sort_name][0] = 0 332 for key in ordering.keys(): 333 if key != sort_name and ordering[key][0] < len(ordering) - 1: 334 ordering[key][0] += 1 329 ordering[sort_name][0] = -1 330 331 # re-sort dictionary 332 items = ordering.items() 333 items.sort(lambda x,y: cmp(x[1],y[1])) 334 for i,v in enumerate(items): 335 ordering[v[0]][0] = i 336 335 337 log.debug('sort results is %s and %s' % (ordering, sort_name)) 336 338 337 339 def sql_get_column(colname, var_data):