From c5cac316c3e6cf5662152ada9c74f54a3ded26c4 Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Thu, 5 Nov 2015 11:53:44 -0500 Subject: [PATCH] (js) Fix all-day dates covering a timezone change --- UI/WebServerResources/js/Common/utils.js | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/UI/WebServerResources/js/Common/utils.js b/UI/WebServerResources/js/Common/utils.js index 0928aead7..aab65da30 100644 --- a/UI/WebServerResources/js/Common/utils.js +++ b/UI/WebServerResources/js/Common/utils.js @@ -213,9 +213,18 @@ Date.prototype.stringWithSeparator = function(separator) { }; Date.prototype.addDays = function(nbrDays) { - var milliSeconds = this.getTime(); - milliSeconds += 86400000 * nbrDays; + var initialDate, milliSeconds, dstOffset; + + milliSeconds = this.getTime(); + initialDate = new Date(milliSeconds); + milliSeconds += 86400000 * nbrDays; + this.setTime(milliSeconds); + + dstOffset = this.getTimezoneOffset() - initialDate.getTimezoneOffset(); + if (dstOffset !== 0) { + milliSeconds = this.getTime() + dstOffset*60*1000; this.setTime(milliSeconds); + } }; Date.prototype.addHours = function(nbrHours) {