@@ -9,12 +9,15 @@ var help = require("./helper.js");
99var assign = require ( "lodash/assign" ) ;
1010var defaults = require ( "lodash/defaults" ) ;
1111var unique = require ( "lodash/uniq" ) ;
12- var separators ;
12+ var SessionStore = require ( "../stores/SessionStore" ) ;
13+
14+ var curOffset = Date . create ( ) . getTimezoneOffset ( ) ;
15+ var tz_pattern = / ( ( \+ | \- ) \d \d \: ? \d \d ) / gi;
1316
1417// We need this to get the current locale's thousands separator
1518// Check for localStorage in case we are testing from node
1619if ( typeof ( localStorage ) !== 'undefined' ) {
17- separators = require ( "../stores/ SessionStore" ) . get ( "separators" ) ;
20+ separators = SessionStore . get ( "separators" ) ;
1821} else {
1922 separators = {
2023 decimal : "." ,
@@ -40,7 +43,7 @@ function parseDelimInput(input, opts) {
4043 var _defaultOpts = defaults ( opts , {
4144 delimiter : parseUtils . detectDelimiter ( input ) ,
4245 type : opts . type ,
43- inputTZ : "Z"
46+ inputTZ : SessionStore . get ( "nowOffset" )
4447 } ) ;
4548
4649 if ( opts . checkForDate === false ) {
@@ -97,12 +100,10 @@ function cast_data(input, columnNames, stripCharsRegex, opts) {
97100 var all_index_types = [ ] ;
98101 var all_entry_values = [ ] ;
99102
100- var tz_pattern = / ( [ + - ] \d \d : * \d \d ) / gi ;
101- var found_timezones = input . match ( tz_pattern ) ;
103+ var found_timezones = tz_pattern . test ( input ) ;
104+ var offset = opts . inputTZ !== null ? - help . TZOffsetToMinutes ( opts . inputTZ ) : curOffset ;
102105
103106 var data = dsv . parse ( input , function ( d , ii ) {
104- var curOffset = Date . create ( ) . getTimezoneOffset ( ) ;
105- var offset = opts . inputTZ !== null ? - help . TZOffsetToMinutes ( opts . inputTZ ) : curOffset ;
106107 each ( columnNames , function ( column , i ) {
107108 if ( i === 0 ) {
108109 //first column
0 commit comments