From: Dan Vanderkam Date: Tue, 15 Oct 2013 04:06:45 +0000 (-0400) Subject: fix up date formatting change X-Git-Tag: v1.1.0~80^2~5 X-Git-Url: https://adrianiainlam.tk/git/?a=commitdiff_plain;h=7b2dfd06807ae75a6a1aff7f36511b341475c063;p=dygraphs.git fix up date formatting change --- diff --git a/dygraph.js b/dygraph.js index ac2bcfd..f5e834f 100644 --- a/dygraph.js +++ b/dygraph.js @@ -193,28 +193,12 @@ Dygraph.numberAxisLabelFormatter = function(x, granularity, opts, g) { }; /** - * Convert a JS date (millis since epoch) to YYYY/MM/DD - * @param {Number} date The JavaScript date (ms since epoch) - * @return {String} A date of the form "YYYY/MM/DD" + * @type {!Array.} * @private + * @constant */ -Dygraph.dateString_ = function(date) { - var zeropad = Dygraph.zeropad; - var d = new Date(date); +Dygraph.SHORT_MONTH_NAMES_ = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']; - // Get the year: - var year = "" + d.getFullYear(); - // Get a 0 padded month string - var month = zeropad(d.getMonth() + 1); //months are 0-offset, sigh - // Get a 0 padded day string - var day = zeropad(d.getDate()); - - var ret = ""; - var frac = d.getHours() * 3600 + d.getMinutes() * 60 + d.getSeconds(); - if (frac) ret = " " + Dygraph.hmsString_(date); - - return year + "/" + month + "/" + day + ret; -}; /** * Convert a JS date to a string appropriate to display on an axis that @@ -226,13 +210,15 @@ Dygraph.dateString_ = function(date) { */ Dygraph.dateAxisFormatter = function(date, granularity) { if (granularity >= Dygraph.DECADAL) { - return date.strftime('%Y'); + return '' + date.getFullYear(); } else if (granularity >= Dygraph.MONTHLY) { - return date.strftime('%b %y'); + return Dygraph.SHORT_MONTH_NAMES_[date.getMonth()] + ' ' + date.getFullYear(); } else { var frac = date.getHours() * 3600 + date.getMinutes() * 60 + date.getSeconds() + date.getMilliseconds(); if (frac === 0 || granularity >= Dygraph.DAILY) { - return new Date(date.getTime() + 3600*1000).strftime('%d%b'); + // e.g. '21Jan' (%d%b) + var nd = new Date(date.getTime() + 3600*1000); + return Dygraph.zeropad(nd.getDate()) + SHORT_MONTH_NAMES[nd.getMonth()]; } else { return Dygraph.hmsString_(date.getTime()); }