From 27864ec8653e32f938ec04fc7120cb60f245ca4d Mon Sep 17 00:00:00 2001 From: Per von Zweigbergk Date: Sat, 23 Sep 2023 23:07:16 +0200 Subject: [PATCH] Move DeviceInterfaceTable coloring logic into CSS Preparatory work for simplifying toggle button code for cable status. --- netbox/dcim/tables/devices.py | 11 ++--------- netbox/templates/dcim/device/interfaces.html | 20 ++++++++++++++++++++ 2 files changed, 22 insertions(+), 9 deletions(-) diff --git a/netbox/dcim/tables/devices.py b/netbox/dcim/tables/devices.py index fc8a3af73..063e05215 100644 --- a/netbox/dcim/tables/devices.py +++ b/netbox/dcim/tables/devices.py @@ -6,6 +6,7 @@ from dcim import models from netbox.tables import NetBoxTable, columns from tenancy.tables import ContactsColumnMixin, TenancyColumnsMixin from .template_code import * +from dcim.choices import LinkStatusChoices __all__ = ( 'BaseInterfaceTable', @@ -51,14 +52,6 @@ def get_cabletermination_row_class(record): return '' -def get_interface_row_class(record): - if not record.enabled: - return 'danger' - elif record.is_virtual: - return 'primary' - return get_cabletermination_row_class(record) - - def get_interface_state_attribute(record): """ Get interface enabled state as string to attach to DOM element. @@ -700,7 +693,6 @@ class DeviceInterfaceTable(InterfaceTable): 'cable', 'connection', ) row_attrs = { - 'class': get_interface_row_class, 'data-name': lambda record: record.name, 'data-enabled': get_interface_state_attribute, 'data-virtual': get_interface_virtual_attribute, @@ -708,6 +700,7 @@ class DeviceInterfaceTable(InterfaceTable): 'data-cable-status': get_interface_cable_status_attribute, 'data-type': lambda record: record.type, } + cable_status_styles = [(slug, color) for slug, _, color in LinkStatusChoices.CHOICES] class FrontPortTable(ModularDeviceComponentTable, CableTerminationTable): diff --git a/netbox/templates/dcim/device/interfaces.html b/netbox/templates/dcim/device/interfaces.html index 8b3fe3097..54682439c 100644 --- a/netbox/templates/dcim/device/interfaces.html +++ b/netbox/templates/dcim/device/interfaces.html @@ -30,3 +30,23 @@ {% endif %} {% endblock bulk_extra_controls %} + +{% block head %} + {{ block.super }} + +{% endblock %}