2021-09-27 17:19:05 -04:00
|
|
|
from django import forms
|
|
|
|
|
2022-01-28 15:48:15 -05:00
|
|
|
from netbox.forms import NetBoxModelBulkEditForm
|
2023-03-21 13:47:08 -04:00
|
|
|
from tenancy.choices import ContactPriorityChoices
|
2021-10-18 11:45:05 -04:00
|
|
|
from tenancy.models import *
|
2023-03-21 13:47:08 -04:00
|
|
|
from utilities.forms import CommentField, DynamicModelChoiceField, add_blank_choice
|
2021-09-27 17:19:05 -04:00
|
|
|
|
|
|
|
__all__ = (
|
2023-03-21 13:47:08 -04:00
|
|
|
'ContactAssignmentBulkEditForm',
|
2021-10-18 11:45:05 -04:00
|
|
|
'ContactBulkEditForm',
|
|
|
|
'ContactGroupBulkEditForm',
|
|
|
|
'ContactRoleBulkEditForm',
|
2021-09-27 17:19:05 -04:00
|
|
|
'TenantBulkEditForm',
|
|
|
|
'TenantGroupBulkEditForm',
|
|
|
|
)
|
|
|
|
|
|
|
|
|
2021-10-18 11:45:05 -04:00
|
|
|
#
|
|
|
|
# Tenants
|
|
|
|
#
|
|
|
|
|
2022-01-28 15:48:15 -05:00
|
|
|
class TenantGroupBulkEditForm(NetBoxModelBulkEditForm):
|
2021-09-27 17:19:05 -04:00
|
|
|
parent = DynamicModelChoiceField(
|
|
|
|
queryset=TenantGroup.objects.all(),
|
|
|
|
required=False
|
|
|
|
)
|
|
|
|
description = forms.CharField(
|
|
|
|
max_length=200,
|
|
|
|
required=False
|
|
|
|
)
|
|
|
|
|
2022-02-01 11:00:18 -05:00
|
|
|
model = TenantGroup
|
2022-01-31 16:15:40 -05:00
|
|
|
nullable_fields = ('parent', 'description')
|
2021-09-27 17:19:05 -04:00
|
|
|
|
|
|
|
|
2022-01-28 15:48:15 -05:00
|
|
|
class TenantBulkEditForm(NetBoxModelBulkEditForm):
|
2021-09-27 17:19:05 -04:00
|
|
|
group = DynamicModelChoiceField(
|
|
|
|
queryset=TenantGroup.objects.all(),
|
|
|
|
required=False
|
|
|
|
)
|
|
|
|
|
2022-02-01 11:00:18 -05:00
|
|
|
model = Tenant
|
2022-02-04 09:59:53 -05:00
|
|
|
fieldsets = (
|
|
|
|
(None, ('group',)),
|
|
|
|
)
|
2022-01-31 16:15:40 -05:00
|
|
|
nullable_fields = ('group',)
|
2021-10-18 11:45:05 -04:00
|
|
|
|
|
|
|
|
|
|
|
#
|
|
|
|
# Contacts
|
|
|
|
#
|
|
|
|
|
2022-01-28 15:48:15 -05:00
|
|
|
class ContactGroupBulkEditForm(NetBoxModelBulkEditForm):
|
2021-10-18 11:45:05 -04:00
|
|
|
parent = DynamicModelChoiceField(
|
|
|
|
queryset=ContactGroup.objects.all(),
|
|
|
|
required=False
|
|
|
|
)
|
|
|
|
description = forms.CharField(
|
|
|
|
max_length=200,
|
|
|
|
required=False
|
|
|
|
)
|
|
|
|
|
2022-02-01 11:00:18 -05:00
|
|
|
model = ContactGroup
|
2022-02-04 09:59:53 -05:00
|
|
|
fieldsets = (
|
|
|
|
(None, ('parent', 'description')),
|
|
|
|
)
|
2022-01-31 16:15:40 -05:00
|
|
|
nullable_fields = ('parent', 'description')
|
2021-10-18 11:45:05 -04:00
|
|
|
|
|
|
|
|
2022-01-28 15:48:15 -05:00
|
|
|
class ContactRoleBulkEditForm(NetBoxModelBulkEditForm):
|
2021-10-18 11:45:05 -04:00
|
|
|
description = forms.CharField(
|
|
|
|
max_length=200,
|
|
|
|
required=False
|
|
|
|
)
|
|
|
|
|
2022-02-01 11:00:18 -05:00
|
|
|
model = ContactRole
|
2022-02-04 09:59:53 -05:00
|
|
|
fieldsets = (
|
|
|
|
(None, ('description',)),
|
|
|
|
)
|
2022-01-31 16:15:40 -05:00
|
|
|
nullable_fields = ('description',)
|
2021-10-18 11:45:05 -04:00
|
|
|
|
|
|
|
|
2022-01-28 15:48:15 -05:00
|
|
|
class ContactBulkEditForm(NetBoxModelBulkEditForm):
|
2021-10-18 11:45:05 -04:00
|
|
|
group = DynamicModelChoiceField(
|
|
|
|
queryset=ContactGroup.objects.all(),
|
|
|
|
required=False
|
|
|
|
)
|
2021-10-18 16:20:31 -04:00
|
|
|
title = forms.CharField(
|
|
|
|
max_length=100,
|
|
|
|
required=False
|
|
|
|
)
|
|
|
|
phone = forms.CharField(
|
|
|
|
max_length=50,
|
|
|
|
required=False
|
|
|
|
)
|
|
|
|
email = forms.EmailField(
|
|
|
|
required=False
|
|
|
|
)
|
|
|
|
address = forms.CharField(
|
|
|
|
max_length=200,
|
|
|
|
required=False
|
|
|
|
)
|
2022-03-30 16:19:12 -04:00
|
|
|
link = forms.URLField(
|
|
|
|
required=False
|
|
|
|
)
|
2022-11-04 08:28:09 -04:00
|
|
|
description = forms.CharField(
|
|
|
|
max_length=200,
|
|
|
|
required=False
|
|
|
|
)
|
|
|
|
comments = CommentField(
|
|
|
|
label='Comments'
|
|
|
|
)
|
2021-10-18 11:45:05 -04:00
|
|
|
|
2022-02-01 11:00:18 -05:00
|
|
|
model = Contact
|
2022-02-04 09:59:53 -05:00
|
|
|
fieldsets = (
|
2022-11-04 08:28:09 -04:00
|
|
|
(None, ('group', 'title', 'phone', 'email', 'address', 'link', 'description')),
|
2022-02-04 09:59:53 -05:00
|
|
|
)
|
2022-11-04 08:28:09 -04:00
|
|
|
nullable_fields = ('group', 'title', 'phone', 'email', 'address', 'link', 'description', 'comments')
|
2023-03-21 13:47:08 -04:00
|
|
|
|
|
|
|
|
|
|
|
class ContactAssignmentBulkEditForm(NetBoxModelBulkEditForm):
|
|
|
|
contact = DynamicModelChoiceField(
|
|
|
|
queryset=Contact.objects.all(),
|
|
|
|
required=False
|
|
|
|
)
|
|
|
|
role = DynamicModelChoiceField(
|
|
|
|
queryset=ContactRole.objects.all(),
|
|
|
|
required=False
|
|
|
|
)
|
|
|
|
priority = forms.ChoiceField(
|
|
|
|
choices=add_blank_choice(ContactPriorityChoices),
|
|
|
|
required=False
|
|
|
|
)
|
|
|
|
|
|
|
|
model = ContactAssignment
|
|
|
|
fieldsets = (
|
|
|
|
(None, ('contact', 'role', 'priority')),
|
|
|
|
)
|
|
|
|
nullable_fields = ('priority',)
|