From 0b6997aaada4329c22c05f26f27d67d07cf66087 Mon Sep 17 00:00:00 2001 From: Massimo Di Pierro Date: Sun, 4 Dec 2011 15:40:05 -0600 Subject: [PATCH] http://code.google.com/p/web2py/issues/detail?id=550, thanks Peter --- VERSION | 2 +- gluon/sqlhtml.py | 14 ++++++-------- 2 files changed, 7 insertions(+), 9 deletions(-) diff --git a/VERSION b/VERSION index b332a8d4..d5f69327 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -Version 1.99.3 (2011-12-04 15:26:39) dev +Version 1.99.3 (2011-12-04 15:40:01) dev diff --git a/gluon/sqlhtml.py b/gluon/sqlhtml.py index 17d7ffb5..f7af8d6e 100644 --- a/gluon/sqlhtml.py +++ b/gluon/sqlhtml.py @@ -1672,15 +1672,13 @@ class SQLFORM(FORM): order = request.vars.order or '' if sortable: if order and not order=='None': - if order[:1]=='~': - sign, rorder = '~', order[1:] + tablename,fieldname = order.split('~')[-1].split('.',1) + sort_field = db[tablename][fieldname] + exception = sort_field.type in ('date','datetime','time') + if exception: + orderby = (order[:1]=='~' and sort_field) or ~sort_field else: - sign, rorder = '', order - tablename,fieldname = rorder.split('.',1) - if sign=='~': - orderby=~db[tablename][fieldname] - else: - orderby=db[tablename][fieldname] + orderby = (order[:1]=='~' and ~sort_field) or sort_field head = TR(_class=ui.get('header','')) if selectable: