From e701f11e29f524e87f61a5528e3368b983babe55 Mon Sep 17 00:00:00 2001 From: Krzysztof Trzewiczek Date: Wed, 8 Aug 2012 18:27:52 +0200 Subject: [PATCH] [#96,backend/memory] Simplified types handling in range filter --- src/backend.memory.js | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/backend.memory.js b/src/backend.memory.js index b77ac7a8..adb7ff46 100644 --- a/src/backend.memory.js +++ b/src/backend.memory.js @@ -99,11 +99,12 @@ this.recline.Backend.Memory = this.recline.Backend.Memory || {}; break; case 'range': results = _.filter(results, function (doc) { - var start = filter.start; - var stop = filter.stop; - var value = doc[filter.field]; + // TODO handle different data types correctly + var number = !isNaN(parseFloat(filter.start, 10)); + var start = number ? parseFloat(filter.start, 10) : filter.start; + var stop = number ? parseFloat(filter.stop, 10) : filter.stop; + var value = number ? parseFloat(doc[filter.field]) : doc[filter.field]; - // implicit string to number casting is done in JS if needed return (value >= start && value <= stop); }); break;