Changeset 6926 for django/trunk/django/contrib/localflavor/br
- Timestamp:
- 12/17/07 02:05:27 (1 year ago)
- Files:
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
django/trunk/django/contrib/localflavor/br/forms.py
r6183 r6926 18 18 19 19 class BRZipCodeField(RegexField): 20 default_error_messages = { 21 'invalid': _('Enter a zip code in the format XXXXX-XXX.'), 22 } 23 20 24 def __init__(self, *args, **kwargs): 21 25 super(BRZipCodeField, self).__init__(r'^\d{5}-\d{3}$', 22 max_length=None, min_length=None, 23 error_message=_('Enter a zip code in the format XXXXX-XXX.'), 24 *args, **kwargs) 26 max_length=None, min_length=None, *args, **kwargs) 25 27 26 28 class BRPhoneNumberField(Field): 29 default_error_messages = { 30 'invalid': _('Phone numbers must be in XX-XXXX-XXXX format.'), 31 } 32 27 33 def clean(self, value): 28 34 super(BRPhoneNumberField, self).clean(value) … … 33 39 if m: 34 40 return u'%s-%s-%s' % (m.group(1), m.group(2), m.group(3)) 35 raise ValidationError( _('Phone numbers must be in XX-XXXX-XXXX format.'))41 raise ValidationError(self.error_messages['invalid']) 36 42 37 43 class BRStateSelect(Select): … … 49 55 """ 50 56 widget = Select 57 default_error_messages = { 58 'invalid': _(u'Select a valid brazilian state. That state is not one of the available states.'), 59 } 51 60 52 61 def __init__(self, required=True, widget=None, label=None, … … 66 75 valid_values = set([smart_unicode(k) for k, v in self.widget.choices]) 67 76 if value not in valid_values: 68 raise ValidationError(_(u'Select a valid brazilian state.' 69 u' That state is not one' 70 u' of the available states.')) 77 raise ValidationError(self.error_messages['invalid']) 71 78 return value 72 79 … … 84 91 http://en.wikipedia.org/wiki/Cadastro_de_Pessoas_F%C3%ADsicas 85 92 """ 93 default_error_messages = { 94 'invalid': _("Invalid CPF number."), 95 'max_digits': _("This field requires at most 11 digits or 14 characters."), 96 'digits_only': _("This field requires only numbers."), 97 } 98 86 99 def __init__(self, *args, **kwargs): 87 100 super(BRCPFField, self).__init__(max_length=14, min_length=11, *args, **kwargs) … … 101 114 int(value) 102 115 except ValueError: 103 raise ValidationError( _("This field requires only numbers."))116 raise ValidationError(self.error_messages['digits_only']) 104 117 if len(value) != 11: 105 raise ValidationError( _("This field requires at most 11 digits or 14 characters."))118 raise ValidationError(self.error_messages['max_digits']) 106 119 orig_dv = value[-2:] 107 120 … … 113 126 value = value[:-1] + str(new_2dv) 114 127 if value[-2:] != orig_dv: 115 raise ValidationError( _("Invalid CPF number."))128 raise ValidationError(self.error_messages['invalid']) 116 129 117 130 return orig_value 118 131 119 132 class BRCNPJField(Field): 133 default_error_messages = { 134 'invalid': _("Invalid CNPJ number."), 135 'digits_only': _("This field requires only numbers."), 136 'max_digits': _("This field requires at least 14 digits"), 137 } 138 120 139 def clean(self, value): 121 140 """ … … 132 151 int(value) 133 152 except ValueError: 134 raise ValidationError( "This field requires only numbers.")153 raise ValidationError(self.error_messages['digits_only']) 135 154 if len(value) != 14: 136 raise ValidationError( 137 _("This field requires at least 14 digits")) 155 raise ValidationError(self.error_messages['max_digits']) 138 156 orig_dv = value[-2:] 139 157 … … 145 163 value = value[:-1] + str(new_2dv) 146 164 if value[-2:] != orig_dv: 147 raise ValidationError( _("Invalid CNPJ number."))165 raise ValidationError(self.error_messages['invalid']) 148 166 149 167 return orig_value 150
