diff --git a/lib/query.js b/lib/query.js index 50983b6e..4e8af8c3 100644 --- a/lib/query.js +++ b/lib/query.js @@ -318,6 +318,14 @@ var parseBinaryFloat64 = function(value) { return parseFloat(value, 52, 11); } +var parseDate = function(value) { + var sign = parseBits(value, 1); + var rawValue = parseBits(value, 63, 1); + + // discard usecs and shift from 2000 to 1970 + return new Date((((sign == 0) ? 1 : -1) * rawValue / 1000) + 946684800000); +} + // To help we test dateParser Query.dateParser = dateParser; @@ -334,8 +342,8 @@ var dataTypeParsers = { 700: parseBinaryFloat32, 701: parseBinaryFloat64, // 1009: arrayParser, - 1114: parseBinaryInt64, // TOFIX: dateParser, - 1184: dateParser + 1114: parseDate, + //1184: parseBinaryInt64 // 1700: parseFloat, };