def clean(self, value): locale=get_current_language() if value != "": try: value = parse_time(value, locale=locale) except: raise forms.ValidationError(self.error_messages['invalid']) return super(TimeField, self).clean(value)
def clean(self, value): locale=get_current_language() if value != "": try: value = force_unicode(parse_decimal(value, locale=locale)) except NumberFormatError: raise forms.ValidationError(self.error_messages['invalid']) return super(FloatField, self).clean(value)
def render(self, name, value, attrs=None): from babel.numbers import parse_decimal from babel.numbers import format_decimal from babel.numbers import NumberFormatError locale=get_current_language() if value is None: value = "" if value and isinstance(value, basestring): try: value = parse_decimal(value, locale=locale) except NumberFormatError: pass if value is not "" and not isinstance(value, basestring): value = format_decimal(value, self.format, locale=locale) return super(DecimalWidget, self).render(name, value, attrs)
def __init__(self, format="medium", *args, **kwargs): super(TimeField, self).__init__(*args, **kwargs) locale=get_current_language() self.format = self.widget.format = format self.time_format = get_time_format(locale=locale) self.time_example = format_time(datetime.datetime.now(), locale=locale)
def render(self, name, value, attrs=None): locale=get_current_language() if value is None: value = "" if value and isinstance(value, basestring): try: value = parse_time(value, locale=locale) except: pass if value is not "" and not isinstance(value, basestring): value = format_time(value, locale=locale) return super(TimeWidget, self).render(name, value, attrs)