mirror of
https://github.com/netbox-community/netbox.git
synced 2025-12-12 11:29:36 -06:00
Enable filter form modifiers on Extras models
This commit is contained in:
parent
99781888d3
commit
fd9a6b958b
@ -15,9 +15,12 @@ from utilities.forms.fields import (
|
|||||||
ContentTypeChoiceField, ContentTypeMultipleChoiceField, DynamicModelChoiceField, DynamicModelMultipleChoiceField,
|
ContentTypeChoiceField, ContentTypeMultipleChoiceField, DynamicModelChoiceField, DynamicModelMultipleChoiceField,
|
||||||
TagFilterField,
|
TagFilterField,
|
||||||
)
|
)
|
||||||
|
from utilities.forms.filterset_mappings import FILTERSET_MAPPINGS
|
||||||
|
from utilities.forms.mixins import FilterModifierMixin
|
||||||
from utilities.forms.rendering import FieldSet
|
from utilities.forms.rendering import FieldSet
|
||||||
from utilities.forms.widgets import DateTimePicker
|
from utilities.forms.widgets import DateTimePicker
|
||||||
from virtualization.models import Cluster, ClusterGroup, ClusterType
|
from virtualization.models import Cluster, ClusterGroup, ClusterType
|
||||||
|
from extras.filtersets import *
|
||||||
|
|
||||||
__all__ = (
|
__all__ = (
|
||||||
'ConfigContextFilterForm',
|
'ConfigContextFilterForm',
|
||||||
@ -39,7 +42,7 @@ __all__ = (
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
class CustomFieldFilterForm(SavedFiltersMixin, FilterForm):
|
class CustomFieldFilterForm(FilterModifierMixin, SavedFiltersMixin, FilterForm):
|
||||||
model = CustomField
|
model = CustomField
|
||||||
fieldsets = (
|
fieldsets = (
|
||||||
FieldSet('q', 'filter_id'),
|
FieldSet('q', 'filter_id'),
|
||||||
@ -126,7 +129,7 @@ class CustomFieldFilterForm(SavedFiltersMixin, FilterForm):
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
class CustomFieldChoiceSetFilterForm(SavedFiltersMixin, FilterForm):
|
class CustomFieldChoiceSetFilterForm(FilterModifierMixin, SavedFiltersMixin, FilterForm):
|
||||||
model = CustomFieldChoiceSet
|
model = CustomFieldChoiceSet
|
||||||
fieldsets = (
|
fieldsets = (
|
||||||
FieldSet('q', 'filter_id'),
|
FieldSet('q', 'filter_id'),
|
||||||
@ -146,7 +149,7 @@ class CustomFieldChoiceSetFilterForm(SavedFiltersMixin, FilterForm):
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
class CustomLinkFilterForm(SavedFiltersMixin, FilterForm):
|
class CustomLinkFilterForm(FilterModifierMixin, SavedFiltersMixin, FilterForm):
|
||||||
model = CustomLink
|
model = CustomLink
|
||||||
fieldsets = (
|
fieldsets = (
|
||||||
FieldSet('q', 'filter_id'),
|
FieldSet('q', 'filter_id'),
|
||||||
@ -182,7 +185,7 @@ class CustomLinkFilterForm(SavedFiltersMixin, FilterForm):
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
class ExportTemplateFilterForm(SavedFiltersMixin, FilterForm):
|
class ExportTemplateFilterForm(FilterModifierMixin, SavedFiltersMixin, FilterForm):
|
||||||
model = ExportTemplate
|
model = ExportTemplate
|
||||||
fieldsets = (
|
fieldsets = (
|
||||||
FieldSet('q', 'filter_id', 'object_type_id'),
|
FieldSet('q', 'filter_id', 'object_type_id'),
|
||||||
@ -233,7 +236,7 @@ class ExportTemplateFilterForm(SavedFiltersMixin, FilterForm):
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
class ImageAttachmentFilterForm(SavedFiltersMixin, FilterForm):
|
class ImageAttachmentFilterForm(FilterModifierMixin, SavedFiltersMixin, FilterForm):
|
||||||
model = ImageAttachment
|
model = ImageAttachment
|
||||||
fieldsets = (
|
fieldsets = (
|
||||||
FieldSet('q', 'filter_id'),
|
FieldSet('q', 'filter_id'),
|
||||||
@ -250,7 +253,7 @@ class ImageAttachmentFilterForm(SavedFiltersMixin, FilterForm):
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
class SavedFilterFilterForm(SavedFiltersMixin, FilterForm):
|
class SavedFilterFilterForm(FilterModifierMixin, SavedFiltersMixin, FilterForm):
|
||||||
model = SavedFilter
|
model = SavedFilter
|
||||||
fieldsets = (
|
fieldsets = (
|
||||||
FieldSet('q', 'filter_id'),
|
FieldSet('q', 'filter_id'),
|
||||||
@ -286,7 +289,7 @@ class SavedFilterFilterForm(SavedFiltersMixin, FilterForm):
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
class TableConfigFilterForm(SavedFiltersMixin, FilterForm):
|
class TableConfigFilterForm(FilterModifierMixin, SavedFiltersMixin, FilterForm):
|
||||||
fieldsets = (
|
fieldsets = (
|
||||||
FieldSet('q', 'filter_id'),
|
FieldSet('q', 'filter_id'),
|
||||||
FieldSet('object_type_id', 'enabled', 'shared', 'weight', name=_('Attributes')),
|
FieldSet('object_type_id', 'enabled', 'shared', 'weight', name=_('Attributes')),
|
||||||
@ -316,7 +319,7 @@ class TableConfigFilterForm(SavedFiltersMixin, FilterForm):
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
class WebhookFilterForm(NetBoxModelFilterSetForm):
|
class WebhookFilterForm(FilterModifierMixin, NetBoxModelFilterSetForm):
|
||||||
model = Webhook
|
model = Webhook
|
||||||
fieldsets = (
|
fieldsets = (
|
||||||
FieldSet('q', 'filter_id', 'tag', 'owner_id'),
|
FieldSet('q', 'filter_id', 'tag', 'owner_id'),
|
||||||
@ -343,7 +346,7 @@ class WebhookFilterForm(NetBoxModelFilterSetForm):
|
|||||||
tag = TagFilterField(model)
|
tag = TagFilterField(model)
|
||||||
|
|
||||||
|
|
||||||
class EventRuleFilterForm(NetBoxModelFilterSetForm):
|
class EventRuleFilterForm(FilterModifierMixin, NetBoxModelFilterSetForm):
|
||||||
model = EventRule
|
model = EventRule
|
||||||
fieldsets = (
|
fieldsets = (
|
||||||
FieldSet('q', 'filter_id', 'tag', 'owner_id'),
|
FieldSet('q', 'filter_id', 'tag', 'owner_id'),
|
||||||
@ -379,7 +382,7 @@ class EventRuleFilterForm(NetBoxModelFilterSetForm):
|
|||||||
tag = TagFilterField(model)
|
tag = TagFilterField(model)
|
||||||
|
|
||||||
|
|
||||||
class TagFilterForm(SavedFiltersMixin, FilterForm):
|
class TagFilterForm(FilterModifierMixin, SavedFiltersMixin, FilterForm):
|
||||||
model = Tag
|
model = Tag
|
||||||
content_type_id = ContentTypeMultipleChoiceField(
|
content_type_id = ContentTypeMultipleChoiceField(
|
||||||
queryset=ObjectType.objects.with_feature('tags'),
|
queryset=ObjectType.objects.with_feature('tags'),
|
||||||
@ -398,7 +401,7 @@ class TagFilterForm(SavedFiltersMixin, FilterForm):
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
class ConfigContextProfileFilterForm(PrimaryModelFilterSetForm):
|
class ConfigContextProfileFilterForm(FilterModifierMixin, PrimaryModelFilterSetForm):
|
||||||
model = ConfigContextProfile
|
model = ConfigContextProfile
|
||||||
fieldsets = (
|
fieldsets = (
|
||||||
FieldSet('q', 'filter_id'),
|
FieldSet('q', 'filter_id'),
|
||||||
@ -419,7 +422,7 @@ class ConfigContextProfileFilterForm(PrimaryModelFilterSetForm):
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
class ConfigContextFilterForm(SavedFiltersMixin, FilterForm):
|
class ConfigContextFilterForm(FilterModifierMixin, SavedFiltersMixin, FilterForm):
|
||||||
model = ConfigContext
|
model = ConfigContext
|
||||||
fieldsets = (
|
fieldsets = (
|
||||||
FieldSet('q', 'filter_id', 'tag_id'),
|
FieldSet('q', 'filter_id', 'tag_id'),
|
||||||
@ -520,7 +523,7 @@ class ConfigContextFilterForm(SavedFiltersMixin, FilterForm):
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
class ConfigTemplateFilterForm(SavedFiltersMixin, FilterForm):
|
class ConfigTemplateFilterForm(FilterModifierMixin, SavedFiltersMixin, FilterForm):
|
||||||
model = ConfigTemplate
|
model = ConfigTemplate
|
||||||
fieldsets = (
|
fieldsets = (
|
||||||
FieldSet('q', 'filter_id', 'tag'),
|
FieldSet('q', 'filter_id', 'tag'),
|
||||||
@ -584,7 +587,7 @@ class LocalConfigContextFilterForm(forms.Form):
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
class JournalEntryFilterForm(NetBoxModelFilterSetForm):
|
class JournalEntryFilterForm(FilterModifierMixin, NetBoxModelFilterSetForm):
|
||||||
model = JournalEntry
|
model = JournalEntry
|
||||||
fieldsets = (
|
fieldsets = (
|
||||||
FieldSet('q', 'filter_id', 'tag'),
|
FieldSet('q', 'filter_id', 'tag'),
|
||||||
@ -619,7 +622,7 @@ class JournalEntryFilterForm(NetBoxModelFilterSetForm):
|
|||||||
tag = TagFilterField(model)
|
tag = TagFilterField(model)
|
||||||
|
|
||||||
|
|
||||||
class NotificationGroupFilterForm(SavedFiltersMixin, FilterForm):
|
class NotificationGroupFilterForm(FilterModifierMixin, SavedFiltersMixin, FilterForm):
|
||||||
model = NotificationGroup
|
model = NotificationGroup
|
||||||
user_id = DynamicModelMultipleChoiceField(
|
user_id = DynamicModelMultipleChoiceField(
|
||||||
queryset=User.objects.all(),
|
queryset=User.objects.all(),
|
||||||
@ -631,3 +634,21 @@ class NotificationGroupFilterForm(SavedFiltersMixin, FilterForm):
|
|||||||
required=False,
|
required=False,
|
||||||
label=_('Group')
|
label=_('Group')
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
# Register FilterSet mappings for FilterModifierMixin lookup verification
|
||||||
|
FILTERSET_MAPPINGS[CustomFieldFilterForm] = CustomFieldFilterSet
|
||||||
|
FILTERSET_MAPPINGS[CustomFieldChoiceSetFilterForm] = CustomFieldChoiceSetFilterSet
|
||||||
|
FILTERSET_MAPPINGS[CustomLinkFilterForm] = CustomLinkFilterSet
|
||||||
|
FILTERSET_MAPPINGS[ExportTemplateFilterForm] = ExportTemplateFilterSet
|
||||||
|
FILTERSET_MAPPINGS[ImageAttachmentFilterForm] = ImageAttachmentFilterSet
|
||||||
|
FILTERSET_MAPPINGS[SavedFilterFilterForm] = SavedFilterFilterSet
|
||||||
|
FILTERSET_MAPPINGS[TableConfigFilterForm] = TableConfigFilterSet
|
||||||
|
FILTERSET_MAPPINGS[WebhookFilterForm] = WebhookFilterSet
|
||||||
|
FILTERSET_MAPPINGS[EventRuleFilterForm] = EventRuleFilterSet
|
||||||
|
FILTERSET_MAPPINGS[TagFilterForm] = TagFilterSet
|
||||||
|
FILTERSET_MAPPINGS[ConfigContextProfileFilterForm] = ConfigContextProfileFilterSet
|
||||||
|
FILTERSET_MAPPINGS[ConfigContextFilterForm] = ConfigContextFilterSet
|
||||||
|
FILTERSET_MAPPINGS[ConfigTemplateFilterForm] = ConfigTemplateFilterSet
|
||||||
|
FILTERSET_MAPPINGS[JournalEntryFilterForm] = JournalEntryFilterSet
|
||||||
|
FILTERSET_MAPPINGS[NotificationGroupFilterForm] = NotificationGroupFilterSet
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user