From d308ccf601c9949fdbec59da8020648fdc9930b3 Mon Sep 17 00:00:00 2001 From: "Rares Vernica (cessna, fedora)" Date: Thu, 19 Jan 2017 10:55:48 -0800 Subject: [PATCH 1/2] Fix Reset to default for DateTime, #185 --- constance/admin.py | 1 + .../constance/includes/results_list.html | 20 ++++++++++++++++--- 2 files changed, 18 insertions(+), 3 deletions(-) diff --git a/constance/admin.py b/constance/admin.py index 6315364..1dcc403 100644 --- a/constance/admin.py +++ b/constance/admin.py @@ -180,6 +180,7 @@ class ConstanceAdmin(admin.ModelAdmin): 'form_field': form[name], 'is_checkbox': isinstance( form[name].field.widget, forms.CheckboxInput), + 'is_datetime': isinstance(default, datetime), } return config_value diff --git a/constance/templates/admin/constance/includes/results_list.html b/constance/templates/admin/constance/includes/results_list.html index 372bbe3..b79feb5 100644 --- a/constance/templates/admin/constance/includes/results_list.html +++ b/constance/templates/admin/constance/includes/results_list.html @@ -21,9 +21,23 @@ {{ item.form_field }}
Reset to default + {% if item.is_datetime %} + d = new Date( + {{ item.raw_default|date:"Y" }}, + {{ item.raw_default|date:"n" }} - 1, + {{ item.raw_default|date:"j" }}, + {{ item.raw_default|time:"H" }}, + {{ item.raw_default|time:"i" }}, + {{ item.raw_default|time:"s" }}); + document.getElementById('{{ item.form_field.auto_id }}_0').value = + d.strftime(get_format('DATE_INPUT_FORMATS')[0]); + document.getElementById('{{ item.form_field.auto_id }}_1').value = + d.strftime(get_format('TIME_INPUT_FORMATS')[0]); + {% else %} + document.getElementById('{{ item.form_field.auto_id }}').{% if item.is_checkbox %}checked = + {% if item.raw_default %} true {% else %} false {% endif %} + {% else %}value = '{{ item.default|escapejs }}'{% endif %} + {% endif %}; return false;">Reset to default {% if item.modified %} From 0f7a6e8f55a4168301a6e806767ec12f55b93e99 Mon Sep 17 00:00:00 2001 From: Rares Vernica Date: Mon, 20 Feb 2017 10:57:12 -0800 Subject: [PATCH 2/2] Account for server timezone for Date object --- .../admin/constance/includes/results_list.html | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/constance/templates/admin/constance/includes/results_list.html b/constance/templates/admin/constance/includes/results_list.html index b79feb5..68a6129 100644 --- a/constance/templates/admin/constance/includes/results_list.html +++ b/constance/templates/admin/constance/includes/results_list.html @@ -22,17 +22,23 @@