|
|
@@ -10,6 +10,7 @@ from ipam.models import ASN, VRF, VLANTranslationPolicy
|
|
|
from netbox.choices import *
|
|
|
from netbox.forms import NetBoxModelFilterSetForm
|
|
|
from tenancy.forms import ContactModelFilterForm, TenancyFilterForm
|
|
|
+from tenancy.models import Tenant
|
|
|
from users.models import User
|
|
|
from utilities.forms import BOOLEAN_WITH_BLANK_CHOICES, FilterForm, add_blank_choice
|
|
|
from utilities.forms.fields import ColorField, DynamicModelMultipleChoiceField, TagFilterField
|
|
|
@@ -120,6 +121,11 @@ class DeviceComponentFilterForm(NetBoxModelFilterSetForm):
|
|
|
required=False,
|
|
|
label=_('Device role')
|
|
|
)
|
|
|
+ tenant_id = DynamicModelMultipleChoiceField(
|
|
|
+ queryset=Tenant.objects.all(),
|
|
|
+ required=False,
|
|
|
+ label=_('Tenant')
|
|
|
+ )
|
|
|
device_id = DynamicModelMultipleChoiceField(
|
|
|
queryset=Device.objects.all(),
|
|
|
required=False,
|
|
|
@@ -128,7 +134,8 @@ class DeviceComponentFilterForm(NetBoxModelFilterSetForm):
|
|
|
'location_id': '$location_id',
|
|
|
'virtual_chassis_id': '$virtual_chassis_id',
|
|
|
'device_type_id': '$device_type_id',
|
|
|
- 'role_id': '$role_id'
|
|
|
+ 'role_id': '$role_id',
|
|
|
+ 'tenant_id': '$tenant_id'
|
|
|
},
|
|
|
label=_('Device')
|
|
|
)
|
|
|
@@ -1317,7 +1324,8 @@ class ConsolePortFilterForm(PathEndpointFilterForm, DeviceComponentFilterForm):
|
|
|
FieldSet('name', 'label', 'type', 'speed', name=_('Attributes')),
|
|
|
FieldSet('region_id', 'site_group_id', 'site_id', 'location_id', 'rack_id', name=_('Location')),
|
|
|
FieldSet(
|
|
|
- 'device_type_id', 'device_role_id', 'device_id', 'device_status', 'virtual_chassis_id', name=_('Device')
|
|
|
+ 'tenant_id', 'device_type_id', 'device_role_id', 'device_id', 'device_status', 'virtual_chassis_id',
|
|
|
+ name=_('Device')
|
|
|
),
|
|
|
FieldSet('cabled', 'connected', 'occupied', name=_('Connection')),
|
|
|
)
|
|
|
@@ -1341,7 +1349,7 @@ class ConsoleServerPortFilterForm(PathEndpointFilterForm, DeviceComponentFilterF
|
|
|
FieldSet('name', 'label', 'type', 'speed', name=_('Attributes')),
|
|
|
FieldSet('region_id', 'site_group_id', 'site_id', 'location_id', 'rack_id', name=_('Location')),
|
|
|
FieldSet(
|
|
|
- 'device_type_id', 'device_role_id', 'device_id', 'device_status', 'virtual_chassis_id',
|
|
|
+ 'tenant_id', 'device_type_id', 'device_role_id', 'device_id', 'device_status', 'virtual_chassis_id',
|
|
|
name=_('Device')
|
|
|
),
|
|
|
FieldSet('cabled', 'connected', 'occupied', name=_('Connection')),
|
|
|
@@ -1366,7 +1374,8 @@ class PowerPortFilterForm(PathEndpointFilterForm, DeviceComponentFilterForm):
|
|
|
FieldSet('name', 'label', 'type', name=_('Attributes')),
|
|
|
FieldSet('region_id', 'site_group_id', 'site_id', 'location_id', 'rack_id', name=_('Location')),
|
|
|
FieldSet(
|
|
|
- 'device_type_id', 'device_role_id', 'device_id', 'device_status', 'virtual_chassis_id', name=_('Device')
|
|
|
+ 'tenant_id', 'device_type_id', 'device_role_id', 'device_id', 'device_status', 'virtual_chassis_id',
|
|
|
+ name=_('Device')
|
|
|
),
|
|
|
FieldSet('cabled', 'connected', 'occupied', name=_('Connection')),
|
|
|
)
|
|
|
@@ -1385,7 +1394,7 @@ class PowerOutletFilterForm(PathEndpointFilterForm, DeviceComponentFilterForm):
|
|
|
FieldSet('name', 'label', 'type', 'color', 'status', name=_('Attributes')),
|
|
|
FieldSet('region_id', 'site_group_id', 'site_id', 'location_id', 'rack_id', name=_('Location')),
|
|
|
FieldSet(
|
|
|
- 'device_type_id', 'device_role_id', 'device_id', 'device_status', 'virtual_chassis_id',
|
|
|
+ 'tenant_id', 'device_type_id', 'device_role_id', 'device_id', 'device_status', 'virtual_chassis_id',
|
|
|
name=_('Device')
|
|
|
),
|
|
|
FieldSet('cabled', 'connected', 'occupied', name=_('Connection')),
|
|
|
@@ -1418,7 +1427,8 @@ class InterfaceFilterForm(PathEndpointFilterForm, DeviceComponentFilterForm):
|
|
|
FieldSet('rf_role', 'rf_channel', 'rf_channel_width', 'tx_power', name=_('Wireless')),
|
|
|
FieldSet('region_id', 'site_group_id', 'site_id', 'location_id', 'rack_id', name=_('Location')),
|
|
|
FieldSet(
|
|
|
- 'device_type_id', 'device_role_id', 'device_id', 'device_status', 'virtual_chassis_id', 'vdc_id',
|
|
|
+ 'tenant_id', 'device_type_id', 'device_role_id', 'device_id', 'device_status', 'virtual_chassis_id',
|
|
|
+ 'vdc_id',
|
|
|
name=_('Device')
|
|
|
),
|
|
|
FieldSet('cabled', 'connected', 'occupied', name=_('Connection')),
|
|
|
@@ -1539,7 +1549,8 @@ class FrontPortFilterForm(CabledFilterForm, DeviceComponentFilterForm):
|
|
|
FieldSet('name', 'label', 'type', 'color', name=_('Attributes')),
|
|
|
FieldSet('region_id', 'site_group_id', 'site_id', 'location_id', 'rack_id', name=_('Location')),
|
|
|
FieldSet(
|
|
|
- 'device_type_id', 'device_role_id', 'device_id', 'device_status', 'virtual_chassis_id', name=_('Device')
|
|
|
+ 'tenant_id', 'device_type_id', 'device_role_id', 'device_id', 'device_status', 'virtual_chassis_id',
|
|
|
+ name=_('Device')
|
|
|
),
|
|
|
FieldSet('cabled', 'occupied', name=_('Cable')),
|
|
|
)
|
|
|
@@ -1563,7 +1574,7 @@ class RearPortFilterForm(CabledFilterForm, DeviceComponentFilterForm):
|
|
|
FieldSet('name', 'label', 'type', 'color', name=_('Attributes')),
|
|
|
FieldSet('region_id', 'site_group_id', 'site_id', 'location_id', 'rack_id', name=_('Location')),
|
|
|
FieldSet(
|
|
|
- 'device_type_id', 'device_role_id', 'device_id', 'device_status', 'virtual_chassis_id',
|
|
|
+ 'tenant_id', 'device_type_id', 'device_role_id', 'device_id', 'device_status', 'virtual_chassis_id',
|
|
|
name=_('Device')
|
|
|
),
|
|
|
FieldSet('cabled', 'occupied', name=_('Cable')),
|
|
|
@@ -1587,7 +1598,7 @@ class ModuleBayFilterForm(DeviceComponentFilterForm):
|
|
|
FieldSet('name', 'label', 'position', name=_('Attributes')),
|
|
|
FieldSet('region_id', 'site_group_id', 'site_id', 'location_id', 'rack_id', name=_('Location')),
|
|
|
FieldSet(
|
|
|
- 'device_type_id', 'device_role_id', 'device_id', 'device_status', 'virtual_chassis_id',
|
|
|
+ 'tenant_id', 'device_type_id', 'device_role_id', 'device_id', 'device_status', 'virtual_chassis_id',
|
|
|
name=_('Device')
|
|
|
),
|
|
|
)
|
|
|
@@ -1605,7 +1616,7 @@ class DeviceBayFilterForm(DeviceComponentFilterForm):
|
|
|
FieldSet('name', 'label', name=_('Attributes')),
|
|
|
FieldSet('region_id', 'site_group_id', 'site_id', 'location_id', 'rack_id', name=_('Location')),
|
|
|
FieldSet(
|
|
|
- 'device_type_id', 'device_role_id', 'device_id', 'device_status', 'virtual_chassis_id',
|
|
|
+ 'tenant_id', 'device_type_id', 'device_role_id', 'device_id', 'device_status', 'virtual_chassis_id',
|
|
|
name=_('Device')
|
|
|
),
|
|
|
)
|
|
|
@@ -1622,7 +1633,7 @@ class InventoryItemFilterForm(DeviceComponentFilterForm):
|
|
|
),
|
|
|
FieldSet('region_id', 'site_group_id', 'site_id', 'location_id', 'rack_id', name=_('Location')),
|
|
|
FieldSet(
|
|
|
- 'device_type_id', 'device_role_id', 'device_id', 'device_status', 'virtual_chassis_id',
|
|
|
+ 'tenant_id', 'device_type_id', 'device_role_id', 'device_id', 'device_status', 'virtual_chassis_id',
|
|
|
name=_('Device')
|
|
|
),
|
|
|
)
|