1 """ |
1 """ |
2 Australian-specific Form helpers |
2 Australian-specific Form helpers |
3 """ |
3 """ |
4 |
4 |
5 from django.newforms import ValidationError |
5 from django.forms import ValidationError |
6 from django.newforms.fields import Field, RegexField, Select, EMPTY_VALUES |
6 from django.forms.fields import Field, RegexField, Select, EMPTY_VALUES |
7 from django.newforms.util import smart_unicode |
7 from django.forms.util import smart_unicode |
8 from django.utils.translation import ugettext |
8 from django.utils.translation import ugettext_lazy as _ |
9 import re |
9 import re |
10 |
10 |
11 PHONE_DIGITS_RE = re.compile(r'^(\d{10})$') |
11 PHONE_DIGITS_RE = re.compile(r'^(\d{10})$') |
12 |
12 |
13 class AUPostCodeField(RegexField): |
13 class AUPostCodeField(RegexField): |
14 """Australian post code field.""" |
14 """Australian post code field.""" |
15 default_error_messages = { |
15 default_error_messages = { |
16 'invalid': ugettext('Enter a 4 digit post code.'), |
16 'invalid': _('Enter a 4 digit post code.'), |
17 } |
17 } |
18 |
18 |
19 def __init__(self, *args, **kwargs): |
19 def __init__(self, *args, **kwargs): |
20 super(AUPostCodeField, self).__init__(r'^\d{4}$', |
20 super(AUPostCodeField, self).__init__(r'^\d{4}$', |
21 max_length=None, min_length=None, *args, **kwargs) |
21 max_length=None, min_length=None, *args, **kwargs) |