LP1813088: Coerce Values to String in egGridValueFilter
authorJason Stephenson <jason@sigio.com>
Thu, 26 Mar 2020 14:47:46 +0000 (10:47 -0400)
committerChris Sharp <csharp@georgialibraries.org>
Fri, 1 May 2020 17:27:03 +0000 (13:27 -0400)
Coerce values to string in the switch for Boolean columns in the main
egGridValueFilter function.  This came about after an IRC conversation
with Mike Rylander who suggested this as a possible fix.  It should
when field values are strings, integers, or Booleans.

Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Open-ILS/web/js/ui/default/staff/services/grid.js

index 83a1ebb..ce84caa 100644 (file)
@@ -2337,15 +2337,14 @@ angular.module('egGridMod',
     var GVF = function(value, column, item) {
         switch(column.datatype) {
             case 'bool':
     var GVF = function(value, column, item) {
         switch(column.datatype) {
             case 'bool':
-                switch(value) {
-                    // Browser will translate true/false for us
+                switch(''+value) {
                     case 't' : 
                     case '1' :  // legacy
                     case 't' : 
                     case '1' :  // legacy
-                    case true:
+                    case 'true':
                         return egStrings.YES;
                     case 'f' : 
                     case '0' :  // legacy
                         return egStrings.YES;
                     case 'f' : 
                     case '0' :  // legacy
-                    case false:
+                    case 'false':
                         return egStrings.NO;
                     // value may be null,  '', etc.
                     default : return '';
                         return egStrings.NO;
                     // value may be null,  '', etc.
                     default : return '';