summaryrefslogtreecommitdiff
path: root/ishtar/ishtar_base/widgets.py
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@peacefrogs.net>2011-07-10 18:13:41 +0200
committerÉtienne Loks <etienne.loks@peacefrogs.net>2011-07-10 18:13:41 +0200
commit571aa094f71d152df9a8ce60cd41a0bcad64bd0b (patch)
treee72a63cac8e6ed0292332b43dee80bb3aa23cc6e /ishtar/ishtar_base/widgets.py
parent08e5ccfd174c4faf8c590bd4bd4e3663de40799f (diff)
downloadIshtar-571aa094f71d152df9a8ce60cd41a0bcad64bd0b.tar.bz2
Ishtar-571aa094f71d152df9a8ce60cd41a0bcad64bd0b.zip
Correct multiple jquery date-picker behaviour on a single page (closes #527)
Diffstat (limited to 'ishtar/ishtar_base/widgets.py')
-rw-r--r--ishtar/ishtar_base/widgets.py26
1 files changed, 6 insertions, 20 deletions
diff --git a/ishtar/ishtar_base/widgets.py b/ishtar/ishtar_base/widgets.py
index 5d46cb625..acd7dc427 100644
--- a/ishtar/ishtar_base/widgets.py
+++ b/ishtar/ishtar_base/widgets.py
@@ -71,26 +71,12 @@ if settings.SURFACE_UNIT == 'square-metre':
AreaWidget = SquareMeterWidget
class JQueryDate(forms.TextInput):
- def render(self, name, value=None, attrs=None):
- rendered = super(JQueryDate, self).render(name, value, attrs)
- rendered += """
-<script type="text/javascript"><!--//
- $(function() {
- $("#id_%(name)s").datepicker($.datepicker.regional["%(country)s"]);
- var val = $("#id_%(name)s").val();
- if(val){
- var dtp = $.datepicker.parseDate('yy-mm-dd', val);
- val = $.datepicker.formatDate(
- $.datepicker.regional["%(country)s"]['dateFormat'],
- dtp);
- $("#id_%(name)s").val(val);
- }
- });
-//--></script>
-""" % {"name":name, "country":settings.COUNTRY}
- return rendered
+ def __init__(self, *args, **kwargs):
+ super(JQueryDate, self).__init__(*args, **kwargs)
+ if 'class' not in self.attrs:
+ self.attrs['class'] = ''
+ self.attrs['class'] = 'date-pickup'
-class JQueryDate(forms.TextInput):
def render(self, name, value=None, attrs=None):
rendered = super(JQueryDate, self).render(name, value, attrs)
# use window.onload to be sure that datepicker don't interfere
@@ -98,7 +84,7 @@ class JQueryDate(forms.TextInput):
rendered += """
<script type="text/javascript"><!--//
$(window).load(function() {
- $("#id_%(name)s").datepicker($.datepicker.regional["%(country)s"]);
+ $(".date-pickup").datepicker($.datepicker.regional["%(country)s"]);
var val = $("#id_%(name)s").val();
if(val){
var dt = $.datepicker.parseDate('yy-mm-dd', val);