From a82d3f88b64994fab5f37cfc7bc8967616d0a71d Mon Sep 17 00:00:00 2001 From: Tim Richardson Date: Mon, 24 Nov 2014 23:34:00 +1100 Subject: [PATCH 1/3] boolean widgets in the SQLFORM.grid search widget should be "off" if unchecked. --- gluon/sqlhtml.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/gluon/sqlhtml.py b/gluon/sqlhtml.py index 4bac53c4..f4d6f31e 100644 --- a/gluon/sqlhtml.py +++ b/gluon/sqlhtml.py @@ -1878,7 +1878,15 @@ class SQLFORM(FORM): function %(prefix)s_build_query(aggregator,a) { var b=a.replace('.','-'); var option = jQuery('#%(field_id)s_'+b+' select').val(); - var value = jQuery('#%(value_id)s_'+b).val().replace('"','\\\\"'); + var value; + var $value_item = jQuery('#%(value_id)s_'+b); + if ($value_item.is(':checkbox')){ + if ($value_item.is(':checked')) + value = "on"; + else value = 'off'; + } + else + { value = $value_item.val().replace('"','\\\\"')} var s=a+' '+option+' "'+value+'"'; var k=jQuery('#%(keywords_id)s'); var v=k.val(); From 7a6bdf7cbdeda631d6c2d92154aaa94b2bbd1c66 Mon Sep 17 00:00:00 2001 From: Tim Richardson Date: Mon, 24 Nov 2014 23:40:45 +1100 Subject: [PATCH 2/3] consistent quotes --- gluon/sqlhtml.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gluon/sqlhtml.py b/gluon/sqlhtml.py index f4d6f31e..60b658dc 100644 --- a/gluon/sqlhtml.py +++ b/gluon/sqlhtml.py @@ -1882,7 +1882,7 @@ class SQLFORM(FORM): var $value_item = jQuery('#%(value_id)s_'+b); if ($value_item.is(':checkbox')){ if ($value_item.is(':checked')) - value = "on"; + value = 'on'; else value = 'off'; } else From 556609f5a23b7879115290a3934e84cf940c7f37 Mon Sep 17 00:00:00 2001 From: Tim Richardson Date: Wed, 26 Nov 2014 13:51:59 +1100 Subject: [PATCH 3/3] Use 'True' and 'False' for booleans --- gluon/sqlhtml.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gluon/sqlhtml.py b/gluon/sqlhtml.py index 60b658dc..98816566 100644 --- a/gluon/sqlhtml.py +++ b/gluon/sqlhtml.py @@ -1842,7 +1842,7 @@ class SQLFORM(FORM): value_input = SQLFORM.widgets.integer.widget(field, field.default, _id=_id,_class='form-control') else: value_input = INPUT( - _type='text', _id=_id, + _type='text', _id=_id, _class=(field.type or '')+' form-control') new_button = INPUT( @@ -1882,8 +1882,8 @@ class SQLFORM(FORM): var $value_item = jQuery('#%(value_id)s_'+b); if ($value_item.is(':checkbox')){ if ($value_item.is(':checked')) - value = 'on'; - else value = 'off'; + value = 'True'; + else value = 'False'; } else { value = $value_item.val().replace('"','\\\\"')}