27 from django
import forms
28 from django.utils.translation
import ugettext_lazy
as _
30 from wi.utils
import parsing
31 from wi.utils.forms
import attrs_dict, BetterForm
32 from wi.utils.states
import image_platforms_reversed
33 from wi.utils.widgets
import SelectWithDisabled
42 name = forms.CharField(widget=forms.TextInput(attrs=dict(attrs_dict, maxlength=45)),
45 description = forms.CharField(required=
False,
46 widget=forms.Textarea(attrs=dict(attrs_dict, maxlength=512, rows=3, cols=20)),
47 label=_(
'Disk description'))
50 rest_data = kwargs.pop(
'rest_data')
51 super(EditDiskForm, self).
__init__(*args, **kwargs)
53 self.fields[
'disk_controller'] = forms.ChoiceField(choices=parsing.parse_generic_enabled(rest_data,
'disk_controllers'),
54 widget=SelectWithDisabled(attrs=dict()),
56 self.fields[
'disk_controller'].widget.attrs[
'class'] =
'medium'
63 return int(self.cleaned_data[
'disk_controller'])
71 size = forms.IntegerField(max_value=2000000, min_value=2, label=_(
'Disk size [MB]'))
74 super(AddDiskForm, self).
__init__(*args, **kwargs)
75 rest_data = kwargs.pop(
'rest_data')
77 self.fields[
'filesystem'] = forms.ChoiceField(choices=parsing.parse_generic(rest_data,
'supported_filesystems'),
78 widget=SelectWithDisabled(attrs=dict()),
79 label=_(
'File system'))
80 self.fields[
'filesystem'].widget.attrs[
'class'] =
'medium'
87 return int(self.cleaned_data[
'filesystem'])
100 fieldsets = ((
'description', {
'fields': (
'name',
'description'),
'legend': _(
'Disk description')}),
101 (
'settings', {
'fields': (
'path',
'disk_controller',
'filesystem'),
'legend': _(
'Settings')}),)
106 name = forms.CharField(widget=forms.TextInput(attrs=dict(attrs_dict, maxlength=45)),
108 description = forms.CharField(required=
False,
109 widget=forms.Textarea(attrs=dict(attrs_dict, maxlength=512, rows=3, cols=20)),
110 label=_(
'Description'))
111 path = forms.CharField(widget=forms.Textarea(attrs=dict(attrs_dict, maxlength=500, rows=3, cols=20)),
112 label=_(
'Link to disk image (http:// or ftp://)'))
115 rest_data = kwargs.pop(
'rest_data')
116 super(UploadDiskForm, self).
__init__(*args, **kwargs)
118 self.fields[
'disk_controller'] = forms.ChoiceField(choices=parsing.parse_generic_enabled(rest_data,
'disk_controllers'),
119 widget=SelectWithDisabled(attrs=dict()),
121 self.fields[
'disk_controller'].widget.attrs[
'class'] =
'medium'
128 return int(self.cleaned_data[
'disk_controller'])
137 platform = forms.ChoiceField(choices=image_platforms_reversed.items(),
141 rest_data = kwargs.pop(
'rest_data')
142 super(ConvertImageForm, self).
__init__(*args, **kwargs)
143 self.fields[
'platform'].widget.attrs[
'class'] =
'medium'
145 self.fields[
'disk_controller'] = forms.ChoiceField(choices=parsing.parse_generic_enabled(rest_data,
'disk_controllers'),
146 widget=SelectWithDisabled(attrs=dict()),
148 self.fields[
'disk_controller'].widget.attrs[
'class'] =
'medium'
150 self.fields[
'video_device'] = forms.ChoiceField(choices=parsing.parse_generic(rest_data,
'video_devices'),
151 widget=SelectWithDisabled(attrs=dict()),
153 self.fields[
'video_device'].widget.attrs[
'class'] =
'medium'
155 self.fields[
'network_device'] = forms.ChoiceField(choices=parsing.parse_generic(rest_data,
'network_devices'),
156 widget=SelectWithDisabled(attrs=dict()),
158 self.fields[
'network_device'].widget.attrs[
'class'] =
'medium'
165 return int(self.cleaned_data[
'disk_controller'])
172 return int(self.cleaned_data[
'video_device'])
179 return int(self.cleaned_data[
'network_device'])
186 return int(self.cleaned_data[
'platform'])