From c06b3374cef7abee6836d07d31e348197695b3df Mon Sep 17 00:00:00 2001 From: jeremystretch Date: Thu, 21 Oct 2021 15:29:52 -0400 Subject: [PATCH] #6497: Add missing tag fields to filter forms --- netbox/circuits/filtersets.py | 1 + netbox/circuits/forms/filtersets.py | 4 +--- netbox/dcim/filtersets.py | 7 +++++++ netbox/dcim/forms/filtersets.py | 24 +++++++---------------- netbox/ipam/filtersets.py | 3 +++ netbox/ipam/forms/filtersets.py | 12 ++++-------- netbox/tenancy/filtersets.py | 3 +++ netbox/tenancy/forms/filtersets.py | 6 +++--- netbox/virtualization/filtersets.py | 2 ++ netbox/virtualization/forms/filtersets.py | 8 ++------ netbox/wireless/filtersets.py | 1 + netbox/wireless/forms/filtersets.py | 4 +--- 12 files changed, 35 insertions(+), 40 deletions(-) diff --git a/netbox/circuits/filtersets.py b/netbox/circuits/filtersets.py index 15bc5a8b3..fd582dd99 100644 --- a/netbox/circuits/filtersets.py +++ b/netbox/circuits/filtersets.py @@ -111,6 +111,7 @@ class ProviderNetworkFilterSet(PrimaryModelFilterSet): class CircuitTypeFilterSet(OrganizationalModelFilterSet): + tag = TagFilter() class Meta: model = CircuitType diff --git a/netbox/circuits/forms/filtersets.py b/netbox/circuits/forms/filtersets.py index 63b654148..b29f8f772 100644 --- a/netbox/circuits/forms/filtersets.py +++ b/netbox/circuits/forms/filtersets.py @@ -79,14 +79,12 @@ class ProviderNetworkFilterForm(BootstrapMixin, CustomFieldModelFilterForm): class CircuitTypeFilterForm(BootstrapMixin, CustomFieldModelFilterForm): model = CircuitType - field_groups = [ - ['q'], - ] q = forms.CharField( required=False, widget=forms.TextInput(attrs={'placeholder': _('All Fields')}), label=_('Search') ) + tag = TagFilterField(model) class CircuitFilterForm(BootstrapMixin, TenancyFilterForm, CustomFieldModelFilterForm): diff --git a/netbox/dcim/filtersets.py b/netbox/dcim/filtersets.py index f6d8abb0a..e81bd5e43 100644 --- a/netbox/dcim/filtersets.py +++ b/netbox/dcim/filtersets.py @@ -72,6 +72,7 @@ class RegionFilterSet(OrganizationalModelFilterSet): to_field_name='slug', label='Parent region (slug)', ) + tag = TagFilter() class Meta: model = Region @@ -89,6 +90,7 @@ class SiteGroupFilterSet(OrganizationalModelFilterSet): to_field_name='slug', label='Parent site group (slug)', ) + tag = TagFilter() class Meta: model = SiteGroup @@ -208,6 +210,7 @@ class LocationFilterSet(OrganizationalModelFilterSet): to_field_name='slug', label='Location (slug)', ) + tag = TagFilter() class Meta: model = Location @@ -223,6 +226,7 @@ class LocationFilterSet(OrganizationalModelFilterSet): class RackRoleFilterSet(OrganizationalModelFilterSet): + tag = TagFilter() class Meta: model = RackRole @@ -388,6 +392,7 @@ class RackReservationFilterSet(PrimaryModelFilterSet, TenancyFilterSet): class ManufacturerFilterSet(OrganizationalModelFilterSet): + tag = TagFilter() class Meta: model = Manufacturer @@ -570,6 +575,7 @@ class DeviceBayTemplateFilterSet(ChangeLoggedModelFilterSet, DeviceTypeComponent class DeviceRoleFilterSet(OrganizationalModelFilterSet): + tag = TagFilter() class Meta: model = DeviceRole @@ -588,6 +594,7 @@ class PlatformFilterSet(OrganizationalModelFilterSet): to_field_name='slug', label='Manufacturer (slug)', ) + tag = TagFilter() class Meta: model = Platform diff --git a/netbox/dcim/forms/filtersets.py b/netbox/dcim/forms/filtersets.py index 5c776386a..6530b3b46 100644 --- a/netbox/dcim/forms/filtersets.py +++ b/netbox/dcim/forms/filtersets.py @@ -106,10 +106,6 @@ class DeviceComponentFilterForm(BootstrapMixin, CustomFieldModelFilterForm): class RegionFilterForm(BootstrapMixin, CustomFieldModelFilterForm): model = Region - field_groups = [ - ['q'], - ['parent_id'], - ] q = forms.CharField( required=False, widget=forms.TextInput(attrs={'placeholder': _('All Fields')}), @@ -121,14 +117,11 @@ class RegionFilterForm(BootstrapMixin, CustomFieldModelFilterForm): label=_('Parent region'), fetch_trigger='open' ) + tag = TagFilterField(model) class SiteGroupFilterForm(BootstrapMixin, CustomFieldModelFilterForm): model = SiteGroup - field_groups = [ - ['q'], - ['parent_id'], - ] q = forms.CharField( required=False, widget=forms.TextInput(attrs={'placeholder': _('All Fields')}), @@ -140,6 +133,7 @@ class SiteGroupFilterForm(BootstrapMixin, CustomFieldModelFilterForm): label=_('Parent group'), fetch_trigger='open' ) + tag = TagFilterField(model) class SiteFilterForm(BootstrapMixin, TenancyFilterForm, CustomFieldModelFilterForm): @@ -219,18 +213,17 @@ class LocationFilterForm(BootstrapMixin, TenancyFilterForm, CustomFieldModelFilt label=_('Parent'), fetch_trigger='open' ) + tag = TagFilterField(model) class RackRoleFilterForm(BootstrapMixin, CustomFieldModelFilterForm): model = RackRole - field_groups = [ - ['q'], - ] q = forms.CharField( required=False, widget=forms.TextInput(attrs={'placeholder': _('All Fields')}), label=_('Search') ) + tag = TagFilterField(model) class RackFilterForm(BootstrapMixin, TenancyFilterForm, CustomFieldModelFilterForm): @@ -371,14 +364,12 @@ class RackReservationFilterForm(BootstrapMixin, TenancyFilterForm, CustomFieldMo class ManufacturerFilterForm(BootstrapMixin, CustomFieldModelFilterForm): model = Manufacturer - field_groups = [ - ['q'], - ] q = forms.CharField( required=False, widget=forms.TextInput(attrs={'placeholder': _('All Fields')}), label=_('Search') ) + tag = TagFilterField(model) class DeviceTypeFilterForm(BootstrapMixin, CustomFieldModelFilterForm): @@ -456,14 +447,12 @@ class DeviceTypeFilterForm(BootstrapMixin, CustomFieldModelFilterForm): class DeviceRoleFilterForm(BootstrapMixin, CustomFieldModelFilterForm): model = DeviceRole - field_groups = [ - ['q'], - ] q = forms.CharField( required=False, widget=forms.TextInput(attrs={'placeholder': _('All Fields')}), label=_('Search') ) + tag = TagFilterField(model) class PlatformFilterForm(BootstrapMixin, CustomFieldModelFilterForm): @@ -479,6 +468,7 @@ class PlatformFilterForm(BootstrapMixin, CustomFieldModelFilterForm): label=_('Manufacturer'), fetch_trigger='open' ) + tag = TagFilterField(model) class DeviceFilterForm(BootstrapMixin, LocalConfigContextFilterForm, TenancyFilterForm, CustomFieldModelFilterForm): diff --git a/netbox/ipam/filtersets.py b/netbox/ipam/filtersets.py index 37a9299dc..56d23387f 100644 --- a/netbox/ipam/filtersets.py +++ b/netbox/ipam/filtersets.py @@ -118,6 +118,7 @@ class RouteTargetFilterSet(PrimaryModelFilterSet, TenancyFilterSet): class RIRFilterSet(OrganizationalModelFilterSet): + tag = TagFilter() class Meta: model = RIR @@ -179,6 +180,7 @@ class RoleFilterSet(OrganizationalModelFilterSet): method='search', label='Search', ) + tag = TagFilter() class Meta: model = Role @@ -636,6 +638,7 @@ class VLANGroupFilterSet(OrganizationalModelFilterSet): cluster = django_filters.NumberFilter( method='filter_scope' ) + tag = TagFilter() class Meta: model = VLANGroup diff --git a/netbox/ipam/forms/filtersets.py b/netbox/ipam/forms/filtersets.py index 8bc0f10fb..415664f62 100644 --- a/netbox/ipam/forms/filtersets.py +++ b/netbox/ipam/forms/filtersets.py @@ -91,10 +91,6 @@ class RouteTargetFilterForm(BootstrapMixin, TenancyFilterForm, CustomFieldModelF class RIRFilterForm(BootstrapMixin, CustomFieldModelFilterForm): model = RIR - field_groups = [ - ['q'], - ['is_private'], - ] q = forms.CharField( required=False, widget=forms.TextInput(attrs={'placeholder': _('All Fields')}), @@ -107,6 +103,7 @@ class RIRFilterForm(BootstrapMixin, CustomFieldModelFilterForm): choices=BOOLEAN_WITH_BLANK_CHOICES ) ) + tag = TagFilterField(model) class AggregateFilterForm(BootstrapMixin, TenancyFilterForm, CustomFieldModelFilterForm): @@ -138,14 +135,12 @@ class AggregateFilterForm(BootstrapMixin, TenancyFilterForm, CustomFieldModelFil class RoleFilterForm(BootstrapMixin, CustomFieldModelFilterForm): model = Role - field_groups = [ - ['q'], - ] q = forms.CharField( required=False, widget=forms.TextInput(attrs={'placeholder': _('All Fields')}), label=_('Search') ) + tag = TagFilterField(model) class PrefixFilterForm(BootstrapMixin, TenancyFilterForm, CustomFieldModelFilterForm): @@ -363,7 +358,7 @@ class IPAddressFilterForm(BootstrapMixin, TenancyFilterForm, CustomFieldModelFil class VLANGroupFilterForm(BootstrapMixin, CustomFieldModelFilterForm): field_groups = [ - ['q'], + ['q', 'tag'], ['region', 'sitegroup', 'site', 'location', 'rack'] ] model = VLANGroup @@ -402,6 +397,7 @@ class VLANGroupFilterForm(BootstrapMixin, CustomFieldModelFilterForm): label=_('Rack'), fetch_trigger='open' ) + tag = TagFilterField(model) class VLANFilterForm(BootstrapMixin, TenancyFilterForm, CustomFieldModelFilterForm): diff --git a/netbox/tenancy/filtersets.py b/netbox/tenancy/filtersets.py index f6d0ac72e..dd73edace 100644 --- a/netbox/tenancy/filtersets.py +++ b/netbox/tenancy/filtersets.py @@ -33,6 +33,7 @@ class TenantGroupFilterSet(OrganizationalModelFilterSet): to_field_name='slug', label='Tenant group (slug)', ) + tag = TagFilter() class Meta: model = TenantGroup @@ -118,6 +119,7 @@ class ContactGroupFilterSet(OrganizationalModelFilterSet): to_field_name='slug', label='Contact group (slug)', ) + tag = TagFilter() class Meta: model = ContactGroup @@ -125,6 +127,7 @@ class ContactGroupFilterSet(OrganizationalModelFilterSet): class ContactRoleFilterSet(OrganizationalModelFilterSet): + tag = TagFilter() class Meta: model = ContactRole diff --git a/netbox/tenancy/forms/filtersets.py b/netbox/tenancy/forms/filtersets.py index 69941701f..b693db68f 100644 --- a/netbox/tenancy/forms/filtersets.py +++ b/netbox/tenancy/forms/filtersets.py @@ -31,6 +31,7 @@ class TenantGroupFilterForm(BootstrapMixin, CustomFieldModelFilterForm): label=_('Parent group'), fetch_trigger='open' ) + tag = TagFilterField(model) class TenantFilterForm(BootstrapMixin, CustomFieldModelFilterForm): @@ -71,18 +72,17 @@ class ContactGroupFilterForm(BootstrapMixin, CustomFieldModelFilterForm): label=_('Parent group'), fetch_trigger='open' ) + tag = TagFilterField(model) class ContactRoleFilterForm(BootstrapMixin, CustomFieldModelFilterForm): model = ContactRole - field_groups = [ - ['q'], - ] q = forms.CharField( required=False, widget=forms.TextInput(attrs={'placeholder': _('All Fields')}), label=_('Search') ) + tag = TagFilterField(model) class ContactFilterForm(BootstrapMixin, CustomFieldModelFilterForm): diff --git a/netbox/virtualization/filtersets.py b/netbox/virtualization/filtersets.py index 3fc1da8ea..e2aac9b80 100644 --- a/netbox/virtualization/filtersets.py +++ b/netbox/virtualization/filtersets.py @@ -20,6 +20,7 @@ __all__ = ( class ClusterTypeFilterSet(OrganizationalModelFilterSet): + tag = TagFilter() class Meta: model = ClusterType @@ -27,6 +28,7 @@ class ClusterTypeFilterSet(OrganizationalModelFilterSet): class ClusterGroupFilterSet(OrganizationalModelFilterSet): + tag = TagFilter() class Meta: model = ClusterGroup diff --git a/netbox/virtualization/forms/filtersets.py b/netbox/virtualization/forms/filtersets.py index 0bb5c2bd7..1e8156c33 100644 --- a/netbox/virtualization/forms/filtersets.py +++ b/netbox/virtualization/forms/filtersets.py @@ -22,26 +22,22 @@ __all__ = ( class ClusterTypeFilterForm(BootstrapMixin, CustomFieldModelFilterForm): model = ClusterType - field_groups = [ - ['q'], - ] q = forms.CharField( required=False, widget=forms.TextInput(attrs={'placeholder': _('All Fields')}), label=_('Search') ) + tag = TagFilterField(model) class ClusterGroupFilterForm(BootstrapMixin, CustomFieldModelFilterForm): model = ClusterGroup - field_groups = [ - ['q'], - ] q = forms.CharField( required=False, widget=forms.TextInput(attrs={'placeholder': _('All Fields')}), label=_('Search') ) + tag = TagFilterField(model) class ClusterFilterForm(BootstrapMixin, TenancyFilterForm, CustomFieldModelFilterForm): diff --git a/netbox/wireless/filtersets.py b/netbox/wireless/filtersets.py index cffdcf046..654dd843f 100644 --- a/netbox/wireless/filtersets.py +++ b/netbox/wireless/filtersets.py @@ -25,6 +25,7 @@ class WirelessLANGroupFilterSet(OrganizationalModelFilterSet): queryset=WirelessLANGroup.objects.all(), to_field_name='slug' ) + tag = TagFilter() class Meta: model = WirelessLANGroup diff --git a/netbox/wireless/forms/filtersets.py b/netbox/wireless/forms/filtersets.py index 483d74a7c..b7eeec76b 100644 --- a/netbox/wireless/forms/filtersets.py +++ b/netbox/wireless/forms/filtersets.py @@ -29,6 +29,7 @@ class WirelessLANGroupFilterForm(BootstrapMixin, CustomFieldModelFilterForm): label=_('Parent group'), fetch_trigger='open' ) + tag = TagFilterField(model) class WirelessLANFilterForm(BootstrapMixin, CustomFieldModelFilterForm): @@ -71,9 +72,6 @@ class WirelessLANFilterForm(BootstrapMixin, CustomFieldModelFilterForm): class WirelessLinkFilterForm(BootstrapMixin, CustomFieldModelFilterForm): model = WirelessLink - field_groups = [ - ['q', 'tag'], - ] q = forms.CharField( required=False, widget=forms.TextInput(attrs={'placeholder': _('All Fields')}),