summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSven Grunewaldt <strayer@olle-orks.org>2015-12-16 15:11:00 +0100
committerTim Graham <timograham@gmail.com>2015-12-17 14:35:40 -0500
commitbadeb56f833138fe637607fe3c7e4bfae3048e50 (patch)
tree0354cd1efb4e7a6b1b03feac17ffb43d572942ac
parentff077cd6496b6f82195e2dc040f70e19e7c206c9 (diff)
[1.9.x] Fixed #25845 -- Fixed incorrect timezone warnings in custom admin templates.
Backport of 9af40f5df13801ffadcc5ded7440e4616123959f from master
-rw-r--r--django/contrib/admin/static/admin/js/admin/DateTimeShortcuts.js4
-rw-r--r--docs/releases/1.9.1.txt4
-rw-r--r--js_tests/admin/DateTimeShortcuts.test.js4
3 files changed, 10 insertions, 2 deletions
diff --git a/django/contrib/admin/static/admin/js/admin/DateTimeShortcuts.js b/django/contrib/admin/static/admin/js/admin/DateTimeShortcuts.js
index d0acc23bb6..bc7e1879e3 100644
--- a/django/contrib/admin/static/admin/js/admin/DateTimeShortcuts.js
+++ b/django/contrib/admin/static/admin/js/admin/DateTimeShortcuts.js
@@ -21,7 +21,7 @@
init: function() {
var body = document.getElementsByTagName('body')[0];
var serverOffset = body.getAttribute('data-admin-utc-offset');
- if (serverOffset !== undefined) {
+ if (serverOffset) {
var localOffset = new Date().getTimezoneOffset() * -60;
DateTimeShortcuts.timezoneOffset = localOffset - serverOffset;
}
@@ -43,7 +43,7 @@
now: function() {
var body = document.getElementsByTagName('body')[0];
var serverOffset = body.getAttribute('data-admin-utc-offset');
- if (serverOffset !== undefined) {
+ if (serverOffset) {
var localNow = new Date();
var localOffset = localNow.getTimezoneOffset() * -60;
localNow.setTime(localNow.getTime() + 1000 * (serverOffset - localOffset));
diff --git a/docs/releases/1.9.1.txt b/docs/releases/1.9.1.txt
index 20fd723d2b..2e1aa7cbb1 100644
--- a/docs/releases/1.9.1.txt
+++ b/docs/releases/1.9.1.txt
@@ -46,3 +46,7 @@ Bugfixes
* Fixed ``TypedChoiceField`` change detection with nullable fields
(:ticket:`25942`).
+
+* Fixed incorrect timezone warnings in custom admin templates that don't have
+ a ``data-admin-utc-offset`` attribute in the ``body`` tag.
+ (:ticket:`25845`).
diff --git a/js_tests/admin/DateTimeShortcuts.test.js b/js_tests/admin/DateTimeShortcuts.test.js
index 2fc9d9a8c6..e993090233 100644
--- a/js_tests/admin/DateTimeShortcuts.test.js
+++ b/js_tests/admin/DateTimeShortcuts.test.js
@@ -16,4 +16,8 @@ test('init', function(assert) {
assert.equal(shortcuts.length, 1);
assert.equal(shortcuts.find('a:first').text(), 'Today');
assert.equal(shortcuts.find('a:last .date-icon').length, 1);
+
+ // To prevent incorrect timezone warnings on date/time widgets, timezoneOffset
+ // should be 0 when a timezone offset isn't set in the HTML body attribute.
+ assert.equal(DateTimeShortcuts.timezoneOffset, 0);
});