From 8fc0f91395f31458ebeeaf44debd71c09829af0a Mon Sep 17 00:00:00 2001 From: SheetJS Date: Wed, 3 Apr 2013 20:50:41 -0400 Subject: [PATCH] Fixed xml parsing of '0' in date1904 --- bits/70_xlsx.js | 6 +++++- package.json | 2 +- xlsx.js | 6 +++++- 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/bits/70_xlsx.js b/bits/70_xlsx.js index d9395e7..2409ccc 100644 --- a/bits/70_xlsx.js +++ b/bits/70_xlsx.js @@ -440,7 +440,11 @@ function parseWB(data) { wb.WBView.forEach(function(w){for(var z in WBViewDef) if(null==w[z]) w[z]=WBViewDef[z]; }); wb.Sheets.forEach(function(w){for(var z in SheetDef) if(null==w[z]) w[z]=SheetDef[z]; }); - _ssfopts.date1904 = wb.WBProps.date1904; + switch(wb.WBProps.date1904) { + case '0': case 0: case 'false': case 'FALSE': _ssfopts.date1904=false;break; + case '1': case 1: case 'true': case 'TRUE': _ssfopts.date1904 = true; break; + default: throw "unrecognized date1904: " + wb.WBProps.date1904; + } return wb; } diff --git a/package.json b/package.json index e22e27f..03f0db7 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "xlsx", - "version": "0.2.1", + "version": "0.2.2", "author": "Niggler", "description": "(one day) a full-featured XLSX parser and writer. For now, primitive parser", "keywords": [ diff --git a/xlsx.js b/xlsx.js index ae9d4c6..29c06d9 100644 --- a/xlsx.js +++ b/xlsx.js @@ -664,7 +664,11 @@ function parseWB(data) { wb.WBView.forEach(function(w){for(var z in WBViewDef) if(null==w[z]) w[z]=WBViewDef[z]; }); wb.Sheets.forEach(function(w){for(var z in SheetDef) if(null==w[z]) w[z]=SheetDef[z]; }); - _ssfopts.date1904 = wb.WBProps.date1904; + switch(wb.WBProps.date1904) { + case '0': case 0: case 'false': case 'FALSE': _ssfopts.date1904=false;break; + case '1': case 1: case 'true': case 'TRUE': _ssfopts.date1904 = true; break; + default: throw "unrecognized date1904: " + wb.WBProps.date1904; + } return wb; }