12589 fix boolean filters

This commit is contained in:
Arthur 2023-06-12 09:36:46 -07:00
parent 30a168a33e
commit 057fbf0ac4
2 changed files with 37 additions and 46 deletions

View File

@ -16,6 +16,10 @@ __all__ = (
class UserBulkEditForm(BootstrapMixin, forms.Form):
pk = forms.ModelMultipleChoiceField(
queryset=None, # Set from self.model on init
widget=forms.MultipleHiddenInput
)
first_name = forms.CharField(
max_length=150,
required=False
@ -43,8 +47,16 @@ class UserBulkEditForm(BootstrapMixin, forms.Form):
)
nullable_fields = ()
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.fields['pk'].queryset = self.model.objects.all()
class GroupBulkEditForm(NetBoxModelBulkEditForm):
class GroupBulkEditForm(BootstrapMixin, forms.Form):
pk = forms.ModelMultipleChoiceField(
queryset=None, # Set from self.model on init
widget=forms.MultipleHiddenInput
)
first_name = forms.CharField(
max_length=150,
required=False
@ -58,6 +70,10 @@ class GroupBulkEditForm(NetBoxModelBulkEditForm):
'asns', 'description', 'comments',
)
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.fields['pk'].queryset = self.model.objects.all()
class ObjectPermissionBulkEditForm(NetBoxModelBulkEditForm):
model = ObjectPermission

View File

@ -8,6 +8,7 @@ from ipam.models import ASN
from netbox.forms import NetBoxModelFilterSetForm
from tenancy.forms import TenancyFilterForm, ContactModelFilterForm
from users.models import NetBoxUser
from utilities.forms import BOOLEAN_WITH_BLANK_CHOICES, FilterForm, add_blank_choice
from utilities.forms.fields import DynamicModelMultipleChoiceField, TagFilterField
from utilities.forms.widgets import DatePicker, NumberWithOptions
@ -34,16 +35,25 @@ class UserFilterForm(ContactModelFilterForm, NetBoxModelFilterSetForm):
last_name = forms.CharField(
required=False
)
is_superuser = forms.BooleanField(
is_superuser = forms.NullBooleanField(
required=False,
widget=forms.Select(
choices=BOOLEAN_WITH_BLANK_CHOICES
),
label='Is Superuser',
)
is_staff = forms.BooleanField(
is_staff = forms.NullBooleanField(
required=False,
widget=forms.Select(
choices=BOOLEAN_WITH_BLANK_CHOICES
),
label='Is Staff',
)
is_active = forms.BooleanField(
is_active = forms.NullBooleanField(
required=False,
widget=forms.Select(
choices=BOOLEAN_WITH_BLANK_CHOICES
),
label='Is Active',
)
@ -52,57 +62,22 @@ class GroupFilterForm(ContactModelFilterForm, NetBoxModelFilterSetForm):
model = NetBoxUser
fieldsets = (
(None, ('q', 'filter_id',)),
('Name', ('username', 'first_name', 'last_name')),
('Security', ('is_superuser', 'is_staff', 'is_active')),
('Name', ('name',)),
)
username = forms.CharField(
name = forms.CharField(
required=False
)
first_name = forms.CharField(
required=False
)
last_name = forms.CharField(
required=False
)
is_superuser = forms.BooleanField(
required=False,
label='Is Superuser',
)
is_staff = forms.BooleanField(
required=False,
label='Is Staff',
)
is_active = forms.BooleanField(
required=False,
label='Is Active',
)
class ObjectPermissionFilterForm(ContactModelFilterForm, NetBoxModelFilterSetForm):
model = NetBoxUser
fieldsets = (
(None, ('q', 'filter_id',)),
('Name', ('username', 'first_name', 'last_name')),
('Security', ('is_superuser', 'is_staff', 'is_active')),
('Name', ('enabled',)),
)
username = forms.CharField(
required=False
)
first_name = forms.CharField(
required=False
)
last_name = forms.CharField(
required=False
)
is_superuser = forms.BooleanField(
enabled = forms.NullBooleanField(
required=False,
label='Is Superuser',
widget=forms.Select(
choices=BOOLEAN_WITH_BLANK_CHOICES
)
is_staff = forms.BooleanField(
required=False,
label='Is Staff',
)
is_active = forms.BooleanField(
required=False,
label='Is Active',
)