MCPcopy
hub / github.com/retspen/webvirtcloud / AddNetPool

Class AddNetPool

networks/forms.py:6–43  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

4
5
6class AddNetPool(forms.Form):
7 name = forms.CharField(error_messages={'required': _('No pool name has been entered')},
8 max_length=20)
9 subnet = forms.CharField(error_messages={'required': _('No subnet has been entered')},
10 max_length=20)
11 forward = forms.CharField(max_length=100)
12 dhcp = forms.BooleanField(required=False)
13 fixed = forms.BooleanField(required=False)
14 bridge_name = forms.CharField(max_length=20, required=False)
15 openvswitch = forms.BooleanField(required=False)
16
17 def clean_name(self):
18 name = self.cleaned_data['name']
19 have_symbol = re.match('^[a-zA-Z0-9\.\_\-]+$', name)
20 if not have_symbol:
21 raise forms.ValidationError(_('The pool name must not contain any special characters'))
22 elif len(name) > 20:
23 raise forms.ValidationError(_('The pool name must not exceed 20 characters'))
24 return name
25
26 def clean_subnet(self):
27 subnet = self.cleaned_data['subnet']
28 have_symbol = re.match('^[0-9./]+$', subnet)
29 if not have_symbol:
30 raise forms.ValidationError(_('The pool subnet must not contain any special characters'))
31 elif len(subnet) > 20:
32 raise forms.ValidationError(_('The pool subnet must not exceed 20 characters'))
33 return subnet
34
35 def clean_bridge_name(self):
36 bridge_name = self.cleaned_data['bridge_name']
37 if self.cleaned_data['forward'] == 'bridge':
38 have_symbol = re.match('^[a-zA-Z0-9\.\_\:\-]+$', bridge_name)
39 if not have_symbol:
40 raise forms.ValidationError(_('The pool bridge name must not contain any special characters'))
41 elif len(bridge_name) > 20:
42 raise forms.ValidationError(_('The pool bridge name must not exceed 20 characters'))
43 return bridge_name

Callers 1

networksFunction · 0.90

Calls

no outgoing calls

Tested by

no test coverage detected