Exemplo n.º 1
0
class PowerConnectionImportForm(BulkImportForm, BootstrapMixin):
    csv = CSVDataField(csv_form=PowerConnectionCSVForm)

    def clean(self):
        records = self.cleaned_data.get('csv')
        if not records:
            return

        connection_list = []

        for i, record in enumerate(records, start=1):
            form = self.fields['csv'].csv_form(data=record)
            if form.is_valid():
                power_port = PowerPort.objects.get(
                    device=form.cleaned_data['device'],
                    name=form.cleaned_data['power_port'])
                power_port.power_outlet = PowerOutlet.objects.get(
                    device=form.cleaned_data['pdu'],
                    name=form.cleaned_data['power_outlet'])
                if form.cleaned_data['status'] == 'planned':
                    power_port.connection_status = CONNECTION_STATUS_PLANNED
                else:
                    power_port.connection_status = CONNECTION_STATUS_CONNECTED
                connection_list.append(power_port)
            else:
                for field, errors in form.errors.items():
                    for e in errors:
                        self.add_error('csv',
                                       "Record {} {}: {}".format(i, field, e))

        self.cleaned_data['csv'] = connection_list
Exemplo n.º 2
0
class InterfaceConnectionImportForm(BulkImportForm, BootstrapMixin):
    csv = CSVDataField(csv_form=InterfaceConnectionCSVForm)

    def clean(self):
        records = self.cleaned_data.get('csv')
        if not records:
            return

        connection_list = []

        for i, record in enumerate(records, start=1):
            form = self.fields['csv'].csv_form(data=record)
            if form.is_valid():
                interface_a = Interface.objects.get(
                    device=form.cleaned_data['device_a'],
                    name=form.cleaned_data['interface_a'])
                interface_b = Interface.objects.get(
                    device=form.cleaned_data['device_b'],
                    name=form.cleaned_data['interface_b'])
                connection = InterfaceConnection(interface_a=interface_a,
                                                 interface_b=interface_b)
                if form.cleaned_data['status'] == 'planned':
                    connection.connection_status = CONNECTION_STATUS_PLANNED
                else:
                    connection.connection_status = CONNECTION_STATUS_CONNECTED
                connection_list.append(connection)
            else:
                for field, errors in form.errors.items():
                    for e in errors:
                        self.add_error('csv',
                                       "Record {} {}: {}".format(i, field, e))

        self.cleaned_data['csv'] = connection_list
Exemplo n.º 3
0
class PrefixImportForm(BulkImportForm, BootstrapMixin):
    csv = CSVDataField(csv_form=PrefixFromCSVForm)
Exemplo n.º 4
0
class AggregateImportForm(BulkImportForm, BootstrapMixin):
    csv = CSVDataField(csv_form=AggregateFromCSVForm)
Exemplo n.º 5
0
 class ImportForm(BootstrapMixin, Form):
     csv = CSVDataField(from_form=self.model_form,
                        widget=Textarea(attrs=self.widget_attrs))
Exemplo n.º 6
0
Arquivo: forms.py Projeto: puck/netbox
class ProviderImportForm(BulkImportForm, BootstrapMixin):
    csv = CSVDataField(csv_form=ProviderFromCSVForm)
Exemplo n.º 7
0
Arquivo: forms.py Projeto: puck/netbox
class CircuitImportForm(BulkImportForm, BootstrapMixin):
    csv = CSVDataField(csv_form=CircuitFromCSVForm)
Exemplo n.º 8
0
class SecretImportForm(BulkImportForm, BootstrapMixin):
    private_key = forms.CharField(widget=forms.HiddenInput())
    csv = CSVDataField(
        csv_form=SecretFromCSVForm,
        widget=forms.Textarea(attrs={'class': 'requires-private-key'}))
Exemplo n.º 9
0
class RackImportForm(BulkImportForm, BootstrapMixin):
    csv = CSVDataField(csv_form=RackFromCSVForm)
Exemplo n.º 10
0
class SecretImportForm(BulkImportForm, BootstrapMixin):
    private_key = forms.CharField(widget=forms.HiddenInput())
    csv = CSVDataField(csv_form=SecretFromCSVForm)
Exemplo n.º 11
0
class VRFImportForm(BootstrapMixin, BulkImportForm):
    csv = CSVDataField(csv_form=VRFFromCSVForm)
Exemplo n.º 12
0
Arquivo: forms.py Projeto: zh-h/netbox
class SecretImportForm(BootstrapMixin, BulkImportForm):
    csv = CSVDataField(
        csv_form=SecretFromCSVForm,
        widget=forms.Textarea(attrs={'class': 'requires-session-key'}))
Exemplo n.º 13
0
class TenantImportForm(BootstrapMixin, BulkImportForm):
    csv = CSVDataField(csv_form=TenantFromCSVForm)
Exemplo n.º 14
0
 class ImportForm(BootstrapMixin, Form):
     csv = CSVDataField(fields=fields, required_fields=required_fields)
Exemplo n.º 15
0
class DeviceImportForm(BulkImportForm, BootstrapMixin):
    csv = CSVDataField(csv_form=DeviceFromCSVForm)
Exemplo n.º 16
0
class IPAddressImportForm(BulkImportForm, BootstrapMixin):
    csv = CSVDataField(csv_form=IPAddressFromCSVForm)
Exemplo n.º 17
0
class VLANImportForm(BulkImportForm, BootstrapMixin):
    csv = CSVDataField(csv_form=VLANFromCSVForm)
Exemplo n.º 18
0
 class ImportForm(BootstrapMixin, Form):
     csv = CSVDataField(fields=fields,
                        required_fields=required_fields,
                        widget=Textarea(attrs=self.widget_attrs))