Django

Code

Show
Ignore:
Timestamp:
12/17/07 02:05:27 (1 year ago)
Author:
mtredinnick
Message:

Fixed #5871 -- Factored out the validation errors in localflavor form fields. Brings them into line with the standard newforms fields. Patch from Jan Rademaker.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • django/trunk/django/contrib/localflavor/de/forms.py

    r5876 r6926  
    1111 
    1212class DEZipCodeField(RegexField): 
     13    default_error_messages = { 
     14        'invalid': ugettext('Enter a zip code in the format XXXXX.'), 
     15    } 
    1316    def __init__(self, *args, **kwargs): 
    1417        super(DEZipCodeField, self).__init__(r'^\d{5}$', 
    15             max_length=None, min_length=None, 
    16             error_message=ugettext('Enter a zip code in the format XXXXX.'), 
    17                     *args, **kwargs) 
     18            max_length=None, min_length=None, *args, **kwargs) 
    1819 
    1920class DEStateSelect(Select): 
     
    3738    Algorithm is documented at http://de.wikipedia.org/wiki/Personalausweis 
    3839    """ 
     40    default_error_messages = { 
     41        'invalid': ugettext('Enter a valid German identity card number in XXXXXXXXXXX-XXXXXXX-XXXXXXX-X format.'), 
     42    } 
     43 
    3944    def has_valid_checksum(self, number): 
    4045        given_number, given_checksum = number[:-1], number[-1] 
     
    5863    def clean(self, value): 
    5964        super(DEIdentityCardNumberField, self).clean(value) 
    60         error_msg = ugettext('Enter a valid German identity card number in XXXXXXXXXXX-XXXXXXX-XXXXXXX-X format.') 
    6165        if value in EMPTY_VALUES: 
    6266            return u'' 
    6367        match = re.match(id_re, value) 
    6468        if not match: 
    65             raise ValidationError(error_msg
     69            raise ValidationError(self.error_messages['invalid']
    6670 
    6771        gd = match.groupdict() 
     
    7074 
    7175        if residence == '0000000000' or birthday == '0000000' or validity == '0000000': 
    72             raise ValidationError(error_msg
     76            raise ValidationError(self.error_messages['invalid']
    7377 
    7478        all_digits = u"%s%s%s%s" % (residence, birthday, validity, checksum) 
    7579        if not self.has_valid_checksum(residence) or not self.has_valid_checksum(birthday) or \ 
    7680            not self.has_valid_checksum(validity) or not self.has_valid_checksum(all_digits): 
    77                 raise ValidationError(error_msg
     81                raise ValidationError(self.error_messages['invalid']
    7882 
    7983        return u'%s%s-%s-%s-%s' % (residence, origin, birthday, validity, checksum)