|
23 | 23 | phone_re = re.compile(r'^\+?[0-9 ]*(\([0-9]+\))?[0-9 -]+( ?x ?[0-9]+)?$') |
24 | 24 | phone_error_message = """Phone numbers may have a leading "+", and otherwise only contain numbers [0-9]; dash, period or space; parentheses, and an optional extension number indicated by 'x'.""" |
25 | 25 |
|
26 | | -if django.VERSION[0] == 0: |
27 | | - |
28 | | - def ipr_detail_form_callback(field, **kwargs): |
29 | | - if field.name == "licensing_option": |
30 | | - return forms.IntegerField(widget=forms.RadioSelect(choices=models.LICENSE_CHOICES), required=False, **kwargs) |
31 | | - if field.name in ["is_pending", "applies_to_all"]: |
32 | | - return forms.IntegerField(widget=forms.RadioSelect(choices=((1, "YES"), (2, "NO"))), required=False, **kwargs) |
33 | | - if field.name in ("rfc_number", "id_document_tag"): #, 'legacy_url_0','legacy_url_1','legacy_title_1','legacy_url_2','legacy_title_2'): |
34 | | - return None |
35 | | - return field.formfield(**kwargs) |
36 | | - |
37 | | - def ipr_contact_form_callback(field, **kwargs): |
38 | | - if field.name in ('ipr', 'contact_type'): |
39 | | - return None |
40 | | - if field.name == "telephone": |
41 | | - return forms.RegexField(phone_re, error_message=phone_error_message, **kwargs) |
42 | | - if field.name == "fax": |
43 | | - return forms.RegexField(phone_re, error_message=phone_error_message, required=False, **kwargs) |
44 | | - return field.formfield(**kwargs) |
45 | | - # TODO: |
46 | | - # Add rfc existence validation for RFC field |
47 | | - # Add draft existence validation for Drafts field |
48 | | - |
49 | | - # Get base form classes for our models |
50 | | - BaseIprForm = forms.form_for_model(models.IprDetail, formfield_callback=ipr_detail_form_callback) |
51 | | - BaseContactForm = forms.form_for_model(models.IprContact, formfield_callback=ipr_contact_form_callback) |
52 | | - |
53 | | -else: |
54 | | - # Django 1.x |
55 | | - |
56 | | - from django.forms import ModelForm |
57 | | - class BaseIprForm(ModelForm): |
58 | | - licensing_option = forms.IntegerField(widget=forms.RadioSelect(choices=models.LICENSE_CHOICES), required=False) |
59 | | - is_pending = forms.IntegerField(widget=forms.RadioSelect(choices=((1, "YES"), (2, "NO"))), required=False) |
60 | | - applies_to_all = forms.IntegerField(widget=forms.RadioSelect(choices=((1, "YES"), (2, "NO"))), required=False) |
61 | | - class Meta: |
62 | | - model = models.IprDetail |
63 | | - exclude = ('rfc_document', 'id_document_tag') # 'legacy_url_0','legacy_url_1','legacy_title_1','legacy_url_2','legacy_title_2') |
64 | | - |
65 | | - class BaseContactForm(ModelForm): |
66 | | - telephone = forms.RegexField(phone_re, error_message=phone_error_message) |
67 | | - fax = forms.RegexField(phone_re, error_message=phone_error_message, required=False) |
68 | | - class Meta: |
69 | | - model = models.IprContact |
70 | | - exclude = ('ipr', 'contact_type') |
| 26 | +from django.forms import ModelForm |
| 27 | + |
| 28 | +class BaseIprForm(ModelForm): |
| 29 | + licensing_option = forms.IntegerField(widget=forms.RadioSelect(choices=models.LICENSE_CHOICES), required=False) |
| 30 | + is_pending = forms.IntegerField(widget=forms.RadioSelect(choices=((1, "YES"), (2, "NO"))), required=False) |
| 31 | + applies_to_all = forms.IntegerField(widget=forms.RadioSelect(choices=((1, "YES"), (2, "NO"))), required=False) |
| 32 | + class Meta: |
| 33 | + model = models.IprDetail |
| 34 | + exclude = ('rfc_document', 'id_document_tag') # 'legacy_url_0','legacy_url_1','legacy_title_1','legacy_url_2','legacy_title_2') |
| 35 | + |
| 36 | +class BaseContactForm(ModelForm): |
| 37 | + telephone = forms.RegexField(phone_re, error_message=phone_error_message) |
| 38 | + fax = forms.RegexField(phone_re, error_message=phone_error_message, required=False) |
| 39 | + class Meta: |
| 40 | + model = models.IprContact |
| 41 | + exclude = ('ipr', 'contact_type') |
71 | 42 |
|
72 | 43 | # Some subclassing: |
73 | 44 |
|
|
0 commit comments