modified: netbox_dns_bridge/models.py deleted: netbox_dns_bridge/migrations/0003_catalogzone_and_per_zone_identifier.py new file: netbox_dns_bridge/migrations/0003_full_netbox_models.py Adjust model access and function calls to match new models: modified: netbox_dns_bridge/signals/netbox_dns_zones.py modified: netbox_dns_bridge/management/commands/dns_transfer_endpoint/catalog_zone_manager.py modified: netbox_dns_bridge/management/commands/dns_transfer_endpoint/request_handler.py Update UI elements and permission interactions: modified: netbox_dns_bridge/filtersets.py modified: netbox_dns_bridge/forms.py modified: netbox_dns_bridge/jobs/notify.py modified: netbox_dns_bridge/navigation.py modified: netbox_dns_bridge/tables.py deleted: netbox_dns_bridge/templates/netbox_dns_bridge/catalog_zone_members.html new file: netbox_dns_bridge/templates/netbox_dns_bridge/catalogzone.html new file: netbox_dns_bridge/templates/netbox_dns_bridge/catalogzonemember.html deleted: netbox_dns_bridge/templates/netbox_dns_bridge/notify_overview.html new file: netbox_dns_bridge/templates/netbox_dns_bridge/seentransferclient.html modified: netbox_dns_bridge/urls.py modified: netbox_dns_bridge/views.py AI/LLM updated tests (Not verified): modified: netbox_dns_bridge/tests/conftest.py modified: netbox_dns_bridge/tests/test_catalog_zone_manager.py modified: netbox_dns_bridge/tests/test_models.py modified: netbox_dns_bridge/tests/test_notify.py modified: netbox_dns_bridge/tests/test_request_handler_integration.py modified: netbox_dns_bridge/tests/test_signals.py modified: netbox_dns_bridge/tests/test_smoke.py modified: netbox_dns_bridge/tests/test_views.py
79 lines
2.1 KiB
Python
79 lines
2.1 KiB
Python
import django_tables2 as tables
|
|
from django.utils.translation import gettext_lazy as _
|
|
|
|
from netbox.tables import NetBoxTable
|
|
from netbox.tables.columns import ActionsColumn
|
|
|
|
from .models import CatalogZone, CatalogZoneMember, SeenTransferClient
|
|
|
|
|
|
class CatalogZoneMemberTable(NetBoxTable):
|
|
name = tables.Column(linkify=True)
|
|
zone = tables.Column(
|
|
accessor="zone__name",
|
|
verbose_name=_("Zone"),
|
|
linkify=True,
|
|
)
|
|
view = tables.Column(
|
|
accessor="catalog_zone__view__name",
|
|
verbose_name=_("View"),
|
|
)
|
|
|
|
actions = ActionsColumn(actions=())
|
|
|
|
class Meta(NetBoxTable.Meta):
|
|
model = CatalogZoneMember
|
|
fields = ("name", "zone", "view")
|
|
default_columns = ("name", "zone", "view")
|
|
|
|
|
|
class CatalogZoneTable(NetBoxTable):
|
|
view = tables.Column(
|
|
accessor="view__name",
|
|
verbose_name=_("View"),
|
|
linkify=True,
|
|
)
|
|
soa_serial = tables.Column(verbose_name=_("SOA Serial"))
|
|
soa_refresh = tables.Column(verbose_name=_("Refresh"))
|
|
soa_retry = tables.Column(verbose_name=_("Retry"))
|
|
soa_expire = tables.Column(verbose_name=_("Expire"))
|
|
soa_minimum = tables.Column(verbose_name=_("Minimum"))
|
|
|
|
actions = ActionsColumn(actions=("edit", "changelog"))
|
|
|
|
class Meta(NetBoxTable.Meta):
|
|
model = CatalogZone
|
|
fields = (
|
|
"view",
|
|
"soa_serial",
|
|
"soa_refresh",
|
|
"soa_retry",
|
|
"soa_expire",
|
|
"soa_minimum",
|
|
)
|
|
default_columns = (
|
|
"view",
|
|
"soa_serial",
|
|
"soa_refresh",
|
|
"soa_retry",
|
|
"soa_expire",
|
|
"soa_minimum",
|
|
)
|
|
|
|
|
|
class SeenTransferClientTable(NetBoxTable):
|
|
source_ip = tables.Column(linkify=True)
|
|
view = tables.Column(
|
|
accessor="view__name",
|
|
verbose_name=_("View"),
|
|
linkify=True,
|
|
)
|
|
last_seen = tables.DateTimeColumn(verbose_name=_("Last Seen"))
|
|
|
|
actions = ActionsColumn(actions=())
|
|
|
|
class Meta(NetBoxTable.Meta):
|
|
model = SeenTransferClient
|
|
fields = ("source_ip", "view", "last_seen")
|
|
default_columns = ("source_ip", "view", "last_seen")
|