def clean(self, value): value = super(ITVatNumberField, self).clean(value) if value == u'': return value try: vat_number = int(value) except ValueError: raise ValidationError(self.error_messages['invalid']) vat_number = str(vat_number).zfill(11) check_digit = vat_number_check_digit(vat_number[0:10]) if not vat_number[10] == check_digit: raise ValidationError(self.error_messages['invalid']) return smart_unicode(vat_number)
def clean(self, value): value = super(ITVatNumberField, self).clean(value) if value == u'': return value err_msg = gettext(u'Enter a valid VAT number.') try: vat_number = int(value) except ValueError: raise ValidationError(err_msg) vat_number = str(vat_number).zfill(11) check_digit = vat_number_check_digit(vat_number[0:10]) if not vat_number[10] == check_digit: raise ValidationError(err_msg) return smart_unicode(vat_number)