diff --git a/netbox/dcim/forms.py b/netbox/dcim/forms.py index 47109c233..dcf3298f9 100644 --- a/netbox/dcim/forms.py +++ b/netbox/dcim/forms.py @@ -1738,6 +1738,9 @@ class FrontPortTemplateCreateForm(ComponentTemplateCreateForm): choices=PortTypeChoices, widget=StaticSelect() ) + color = ColorField( + required=False + ) rear_port_set = forms.MultipleChoiceField( choices=[], label='Rear ports', diff --git a/netbox/dcim/tables/devices.py b/netbox/dcim/tables/devices.py index 432428003..352ac7d5c 100644 --- a/netbox/dcim/tables/devices.py +++ b/netbox/dcim/tables/devices.py @@ -288,10 +288,10 @@ class ConsolePortTable(DeviceComponentTable, PathEndpointTable): class Meta(DeviceComponentTable.Meta): model = ConsolePort fields = ( - 'pk', 'device', 'name', 'label', 'type', 'speed', 'description', 'mark_connected', 'cable', 'cable_color', + 'pk', 'name', 'device', 'label', 'type', 'speed', 'description', 'mark_connected', 'cable', 'cable_color', 'cable_peer', 'connection', 'tags', ) - default_columns = ('pk', 'device', 'name', 'label', 'type', 'speed', 'description') + default_columns = ('pk', 'name', 'device', 'label', 'type', 'speed', 'description') class DeviceConsolePortTable(ConsolePortTable): @@ -332,10 +332,10 @@ class ConsoleServerPortTable(DeviceComponentTable, PathEndpointTable): class Meta(DeviceComponentTable.Meta): model = ConsoleServerPort fields = ( - 'pk', 'device', 'name', 'label', 'type', 'speed', 'description', 'mark_connected', 'cable', 'cable_color', + 'pk', 'name', 'device', 'label', 'type', 'speed', 'description', 'mark_connected', 'cable', 'cable_color', 'cable_peer', 'connection', 'tags', ) - default_columns = ('pk', 'device', 'name', 'label', 'type', 'speed', 'description') + default_columns = ('pk', 'name', 'device', 'label', 'type', 'speed', 'description') class DeviceConsoleServerPortTable(ConsoleServerPortTable): @@ -377,10 +377,10 @@ class PowerPortTable(DeviceComponentTable, PathEndpointTable): class Meta(DeviceComponentTable.Meta): model = PowerPort fields = ( - 'pk', 'device', 'name', 'label', 'type', 'description', 'mark_connected', 'maximum_draw', 'allocated_draw', + 'pk', 'name', 'device', 'label', 'type', 'description', 'mark_connected', 'maximum_draw', 'allocated_draw', 'cable', 'cable_color', 'cable_peer', 'connection', 'tags', ) - default_columns = ('pk', 'device', 'name', 'label', 'type', 'maximum_draw', 'allocated_draw', 'description') + default_columns = ('pk', 'name', 'device', 'label', 'type', 'maximum_draw', 'allocated_draw', 'description') class DevicePowerPortTable(PowerPortTable): @@ -428,10 +428,10 @@ class PowerOutletTable(DeviceComponentTable, PathEndpointTable): class Meta(DeviceComponentTable.Meta): model = PowerOutlet fields = ( - 'pk', 'device', 'name', 'label', 'type', 'description', 'power_port', 'feed_leg', 'mark_connected', 'cable', + 'pk', 'name', 'device', 'label', 'type', 'description', 'power_port', 'feed_leg', 'mark_connected', 'cable', 'cable_color', 'cable_peer', 'connection', 'tags', ) - default_columns = ('pk', 'device', 'name', 'label', 'type', 'power_port', 'feed_leg', 'description') + default_columns = ('pk', 'name', 'device', 'label', 'type', 'power_port', 'feed_leg', 'description') class DevicePowerOutletTable(PowerOutletTable): @@ -490,11 +490,11 @@ class InterfaceTable(DeviceComponentTable, BaseInterfaceTable, PathEndpointTable class Meta(DeviceComponentTable.Meta): model = Interface fields = ( - 'pk', 'device', 'name', 'label', 'enabled', 'type', 'mgmt_only', 'mtu', 'mode', 'mac_address', + 'pk', 'name', 'device', 'label', 'enabled', 'type', 'mgmt_only', 'mtu', 'mode', 'mac_address', 'description', 'mark_connected', 'cable', 'cable_color', 'cable_peer', 'connection', 'tags', 'ip_addresses', 'untagged_vlan', 'tagged_vlans', ) - default_columns = ('pk', 'device', 'name', 'label', 'enabled', 'type', 'description') + default_columns = ('pk', 'name', 'device', 'label', 'enabled', 'type', 'description') class DeviceInterfaceTable(InterfaceTable): @@ -559,11 +559,11 @@ class FrontPortTable(DeviceComponentTable, CableTerminationTable): class Meta(DeviceComponentTable.Meta): model = FrontPort fields = ( - 'pk', 'device', 'name', 'label', 'type', 'color', 'rear_port', 'rear_port_position', 'description', + 'pk', 'name', 'device', 'label', 'type', 'color', 'rear_port', 'rear_port_position', 'description', 'mark_connected', 'cable', 'cable_color', 'cable_peer', 'tags', ) default_columns = ( - 'pk', 'device', 'name', 'label', 'type', 'color', 'rear_port', 'rear_port_position', 'description', + 'pk', 'name', 'device', 'label', 'type', 'color', 'rear_port', 'rear_port_position', 'description', ) @@ -610,10 +610,10 @@ class RearPortTable(DeviceComponentTable, CableTerminationTable): class Meta(DeviceComponentTable.Meta): model = RearPort fields = ( - 'pk', 'device', 'name', 'label', 'type', 'color', 'positions', 'description', 'mark_connected', 'cable', + 'pk', 'name', 'device', 'label', 'type', 'color', 'positions', 'description', 'mark_connected', 'cable', 'cable_color', 'cable_peer', 'tags', ) - default_columns = ('pk', 'device', 'name', 'label', 'type', 'color', 'description') + default_columns = ('pk', 'name', 'device', 'label', 'type', 'color', 'description') class DeviceRearPortTable(RearPortTable): @@ -662,8 +662,8 @@ class DeviceBayTable(DeviceComponentTable): class Meta(DeviceComponentTable.Meta): model = DeviceBay - fields = ('pk', 'device', 'name', 'label', 'status', 'installed_device', 'description', 'tags') - default_columns = ('pk', 'device', 'name', 'label', 'status', 'installed_device', 'description') + fields = ('pk', 'name', 'device', 'label', 'status', 'installed_device', 'description', 'tags') + default_columns = ('pk', 'name', 'device', 'label', 'status', 'installed_device', 'description') class DeviceDeviceBayTable(DeviceBayTable): @@ -708,10 +708,10 @@ class InventoryItemTable(DeviceComponentTable): class Meta(BaseTable.Meta): model = InventoryItem fields = ( - 'pk', 'device', 'name', 'label', 'manufacturer', 'part_id', 'serial', 'asset_tag', 'description', + 'pk', 'name', 'device', 'label', 'manufacturer', 'part_id', 'serial', 'asset_tag', 'description', 'discovered', 'tags', ) - default_columns = ('pk', 'device', 'name', 'label', 'manufacturer', 'part_id', 'serial', 'asset_tag') + default_columns = ('pk', 'name', 'device', 'label', 'manufacturer', 'part_id', 'serial', 'asset_tag') class DeviceInventoryItemTable(InventoryItemTable): diff --git a/netbox/ipam/forms.py b/netbox/ipam/forms.py index a34ce5c53..a883bab0f 100644 --- a/netbox/ipam/forms.py +++ b/netbox/ipam/forms.py @@ -147,6 +147,10 @@ class RouteTargetForm(BootstrapMixin, TenancyForm, CustomFieldModelForm): fields = [ 'name', 'description', 'tenant_group', 'tenant', 'tags', ] + fieldsets = ( + ('Route Target', ('name', 'description', 'tags')), + ('Tenancy', ('tenant_group', 'tenant')), + ) class RouteTargetCSVForm(CustomFieldModelCSVForm): @@ -626,9 +630,8 @@ class PrefixFilterForm(BootstrapMixin, TenancyFilterForm, CustomFieldModelFilter model = Prefix field_groups = [ ['q', 'tag'], - ['within_include', 'family', 'status', 'role_id'], + ['within_include', 'family', 'status', 'role_id', 'mask_length', 'is_pool', 'mark_utilized'], ['vrf_id', 'present_in_vrf_id'], - ['mask_length', 'is_pool', 'mark_utilized'], ['region_id', 'site_group_id', 'site_id'], ['tenant_group_id', 'tenant_id'] ] @@ -1270,9 +1273,8 @@ class IPAddressFilterForm(BootstrapMixin, TenancyFilterForm, CustomFieldModelFil ] field_groups = [ ['q', 'tag'], - ['parent', 'family', 'status', 'role'], + ['parent', 'family', 'status', 'role', 'mask_length', 'assigned_to_interface'], ['vrf_id', 'present_in_vrf_id'], - ['mask_length', 'assigned_to_interface'], ['tenant_group_id', 'tenant_id'], ] q = forms.CharField( diff --git a/netbox/ipam/tables.py b/netbox/ipam/tables.py index 96c2c892e..e4bb7d693 100644 --- a/netbox/ipam/tables.py +++ b/netbox/ipam/tables.py @@ -548,7 +548,7 @@ class VLANTable(BaseTable): class Meta(BaseTable.Meta): model = VLAN - fields = ('pk', 'vid', 'site', 'group', 'name', 'tenant', 'status', 'role', 'description') + fields = ('pk', 'vid', 'name', 'site', 'group', 'tenant', 'status', 'role', 'description') row_attrs = { 'class': lambda record: 'success' if not isinstance(record, VLAN) else '', } @@ -566,8 +566,8 @@ class VLANDetailTable(VLANTable): ) class Meta(VLANTable.Meta): - fields = ('pk', 'vid', 'site', 'group', 'name', 'prefixes', 'tenant', 'status', 'role', 'description', 'tags') - default_columns = ('pk', 'vid', 'site', 'group', 'name', 'prefixes', 'tenant', 'status', 'role', 'description') + fields = ('pk', 'vid', 'name', 'site', 'group', 'prefixes', 'tenant', 'status', 'role', 'description', 'tags') + default_columns = ('pk', 'vid', 'name', 'site', 'group', 'prefixes', 'tenant', 'status', 'role', 'description') class VLANMembersTable(BaseTable): diff --git a/netbox/project-static/dist/netbox-dark.css b/netbox/project-static/dist/netbox-dark.css index 5de631e37..1a55a0096 100644 Binary files a/netbox/project-static/dist/netbox-dark.css and b/netbox/project-static/dist/netbox-dark.css differ diff --git a/netbox/project-static/dist/netbox-light.css b/netbox/project-static/dist/netbox-light.css index 330e2efc9..ed5941e35 100644 Binary files a/netbox/project-static/dist/netbox-light.css and b/netbox/project-static/dist/netbox-light.css differ diff --git a/netbox/project-static/dist/netbox-print.css b/netbox/project-static/dist/netbox-print.css index c77db1bc8..bc76dc029 100644 Binary files a/netbox/project-static/dist/netbox-print.css and b/netbox/project-static/dist/netbox-print.css differ diff --git a/netbox/project-static/styles/netbox.scss b/netbox/project-static/styles/netbox.scss index e19e8f964..de568d22d 100644 --- a/netbox/project-static/styles/netbox.scss +++ b/netbox/project-static/styles/netbox.scss @@ -243,6 +243,7 @@ table { &.attr-table { th { + font-weight: normal; width: 25%; } } @@ -723,10 +724,6 @@ div.paginator > form > div.input-group { width: fit-content; } -div.field-group:not(:first-of-type) { - margin-top: $spacer * 3; -} - label.required { font-weight: $font-weight-bold; diff --git a/netbox/templates/circuits/circuit.html b/netbox/templates/circuits/circuit.html index 7b22c5d65..bf26d7fe3 100644 --- a/netbox/templates/circuits/circuit.html +++ b/netbox/templates/circuits/circuit.html @@ -24,7 +24,7 @@ Circuit ID - {{ object.cid }} + {{ object.cid }} Type diff --git a/netbox/templates/circuits/circuittermination_edit.html b/netbox/templates/circuits/circuittermination_edit.html index edafc94a8..76ef4a5d2 100644 --- a/netbox/templates/circuits/circuittermination_edit.html +++ b/netbox/templates/circuits/circuittermination_edit.html @@ -5,7 +5,7 @@ {% block title %}{{ obj.circuit.provider }} {{ obj.circuit }} - Side {{ form.term_side.value }}{% endblock %} {% block form %} -
+
Circuit Termination
@@ -41,7 +41,7 @@
-
+
{% render_field form.region %} {% render_field form.site_group %} @@ -53,7 +53,9 @@
{% endwith %}
-
+
+ +
Termination Details
diff --git a/netbox/templates/circuits/inc/circuit_termination.html b/netbox/templates/circuits/inc/circuit_termination.html index 3b0a84219..e2fe6af29 100644 --- a/netbox/templates/circuits/inc/circuit_termination.html +++ b/netbox/templates/circuits/inc/circuit_termination.html @@ -54,9 +54,9 @@ {% endif %} {{ peer }} {% endwith %} -
+
- + Trace {% if perms.dcim.delete_cable %} diff --git a/netbox/templates/dcim/consoleserverport.html b/netbox/templates/dcim/consoleserverport.html index 676dbf096..8eb84993c 100644 --- a/netbox/templates/dcim/consoleserverport.html +++ b/netbox/templates/dcim/consoleserverport.html @@ -27,10 +27,10 @@ Type - {{ object.get_type_display }} + {{ object.get_type_display|placeholder }} - Speed + Speed {{ object.get_speed_display|placeholder }} diff --git a/netbox/templates/dcim/device_edit.html b/netbox/templates/dcim/device_edit.html index c900b10dd..ab754a74f 100644 --- a/netbox/templates/dcim/device_edit.html +++ b/netbox/templates/dcim/device_edit.html @@ -4,7 +4,7 @@ {% block form %} {% render_errors form %} -
+
Device
@@ -12,8 +12,9 @@ {% render_field form.device_role %} {% render_field form.tags %}
+
-
+
Hardware
@@ -22,8 +23,9 @@ {% render_field form.serial %} {% render_field form.asset_tag %}
+
-
+
Location
@@ -56,8 +58,9 @@ {% render_field form.position %} {% endif %}
+
-
+
Management
@@ -68,38 +71,43 @@ {% render_field form.primary_ip6 %} {% endif %}
+
-
+
Virtualization
{% render_field form.cluster_group %} {% render_field form.cluster %}
+
-
+
Tenancy
{% render_field form.tenant_group %} {% render_field form.tenant %}
+
-{% if form.custom_fields %} -
+ {% if form.custom_fields %} +
Custom Fields
{% render_custom_fields form %} -
+
+
+ {% endif %} -{% endif %} -
+
Local Config Context Data
{% render_field form.local_context_data %}
+
-
+
{% render_field form.comments label='Comments' %}
diff --git a/netbox/templates/dcim/inc/cable_form.html b/netbox/templates/dcim/inc/cable_form.html index 89d4c5130..f1baeb756 100644 --- a/netbox/templates/dcim/inc/cable_form.html +++ b/netbox/templates/dcim/inc/cable_form.html @@ -16,8 +16,11 @@
{% render_field form.tags %} {% if form.custom_fields %} +
-

Custom Fields

- {% render_custom_fields form %} +
+
Custom Fields
+
+ {% render_custom_fields form %}
{% endif %} diff --git a/netbox/templates/dcim/interface_edit.html b/netbox/templates/dcim/interface_edit.html index 8b8845e8c..64cd8407e 100644 --- a/netbox/templates/dcim/interface_edit.html +++ b/netbox/templates/dcim/interface_edit.html @@ -2,7 +2,7 @@ {% load form_helpers %} {% block form %} -
+
Interface
@@ -27,7 +27,9 @@ {% render_field form.mgmt_only %} {% render_field form.mark_connected %}
-
+
+ +
802.1Q Switching
@@ -36,13 +38,15 @@ {% render_field form.untagged_vlan %} {% render_field form.tagged_vlans %}
+ {% if form.custom_fields %} -
-
-
Custom Fields
-
- {% render_custom_fields form %} +
+
+
+
Custom Fields
+ {% render_custom_fields form %} +
{% endif %} {% endblock %} diff --git a/netbox/templates/dcim/manufacturer.html b/netbox/templates/dcim/manufacturer.html index 3c3699c91..85d76f14f 100644 --- a/netbox/templates/dcim/manufacturer.html +++ b/netbox/templates/dcim/manufacturer.html @@ -26,7 +26,7 @@ - Inventory Items + Inventory Items {{ inventory_item_count }} diff --git a/netbox/templates/dcim/rack_edit.html b/netbox/templates/dcim/rack_edit.html index 09b1586e2..64e366ea7 100644 --- a/netbox/templates/dcim/rack_edit.html +++ b/netbox/templates/dcim/rack_edit.html @@ -2,7 +2,7 @@ {% load form_helpers %} {% block form %} -
+
Rack
@@ -15,7 +15,9 @@ {% render_field form.role %} {% render_field form.tags %}
-
+
+ +
Inventory Control
@@ -23,14 +25,18 @@ {% render_field form.serial %} {% render_field form.asset_tag %}
-
+
+ +
Tenancy
{% render_field form.tenant_group %} {% render_field form.tenant %}
-
+
+ +
Dimensions
@@ -54,15 +60,19 @@
{% render_field form.desc_units %}
+
+ {% if form.custom_fields %} -
+
Custom Fields
- {% render_custom_fields form %} -
+ {% render_custom_fields form %} +
+
{% endif %} -
+ +
{% render_field form.comments label='Comments' %}
{% endblock %} diff --git a/netbox/templates/dcim/site.html b/netbox/templates/dcim/site.html index 1e50e7ba6..17628cbde 100644 --- a/netbox/templates/dcim/site.html +++ b/netbox/templates/dcim/site.html @@ -209,7 +209,14 @@ Locations
+ {% if locations %} + + + + + + {% for location in locations %} {% endfor %}
LocationRacksDevices
@@ -230,6 +237,9 @@
+ {% else %} + None + {% endif %}
diff --git a/netbox/templates/dcim/virtualchassis_add.html b/netbox/templates/dcim/virtualchassis_add.html index 1a5bd85c2..1ff0cd8bd 100644 --- a/netbox/templates/dcim/virtualchassis_add.html +++ b/netbox/templates/dcim/virtualchassis_add.html @@ -2,7 +2,7 @@ {% load form_helpers %} {% block form %} -
+
Virtual Chassis
@@ -10,7 +10,9 @@ {% render_field form.domain %} {% render_field form.tags %}
-
+
+ +
Member Devices
@@ -21,8 +23,10 @@ {% render_field form.members %} {% render_field form.initial_position %}
+ {% if form.custom_fields %} -
+
+
Custom Fields
diff --git a/netbox/templates/dcim/virtualchassis_edit.html b/netbox/templates/dcim/virtualchassis_edit.html index e726b7687..c994f05dc 100644 --- a/netbox/templates/dcim/virtualchassis_edit.html +++ b/netbox/templates/dcim/virtualchassis_edit.html @@ -11,7 +11,7 @@ {% csrf_token %} {{ pk_form.pk }} {{ formset.management_form }} -
+
Virtual Chassis
@@ -20,14 +20,18 @@ {% render_field vc_form.master %} {% render_field vc_form.tags %}
+
+ {% if vc_form.custom_fields %} -
+
Custom Fields
{% render_custom_fields vc_form %}
+
{% endif %} +
Members
diff --git a/netbox/templates/generic/object_edit.html b/netbox/templates/generic/object_edit.html index 95657249d..7ee4c4f94 100644 --- a/netbox/templates/generic/object_edit.html +++ b/netbox/templates/generic/object_edit.html @@ -42,7 +42,7 @@ {# Render grouped fields according to Form #} {% for group, fields in form.Meta.fieldsets %} -
+
{{ group }}
@@ -50,11 +50,15 @@ {% render_field form|getfield:name %} {% endfor %}
+ {% if not forloop.last %} +
+ {% endif %} {% endfor %} {% if form.custom_fields %} -
-
+
+
+
Custom Fields
{% render_custom_fields form %} @@ -62,14 +66,15 @@ {% endif %} {% if form.comments %} -
+
+
{% render_field form.comments label='Comments' %}
{% endif %} {% else %} {# Render all fields in a single group #} -
+
{% block form_fields %}{% render_form form %}{% endblock %}
{% endif %} diff --git a/netbox/templates/inc/filter_list.html b/netbox/templates/inc/filter_list.html index cf1ec342e..1e73fedb2 100644 --- a/netbox/templates/inc/filter_list.html +++ b/netbox/templates/inc/filter_list.html @@ -48,7 +48,7 @@ Reset
diff --git a/netbox/templates/ipam/aggregate.html b/netbox/templates/ipam/aggregate.html index 0e8366e4a..43760ed80 100644 --- a/netbox/templates/ipam/aggregate.html +++ b/netbox/templates/ipam/aggregate.html @@ -34,7 +34,7 @@
diff --git a/netbox/templates/ipam/ipaddress_bulk_add.html b/netbox/templates/ipam/ipaddress_bulk_add.html index 84fe60dcf..af0b27e98 100644 --- a/netbox/templates/ipam/ipaddress_bulk_add.html +++ b/netbox/templates/ipam/ipaddress_bulk_add.html @@ -9,8 +9,10 @@ {% endblock %} {% block form %} -
-
IP Addresses
+
+
+
IP Addresses
+
{% render_field form.pattern %} {% render_field model_form.status %} {% render_field model_form.role %} @@ -18,14 +20,21 @@ {% render_field model_form.description %} {% render_field model_form.tags %}
-
-
Tenancy
+
+ +
+
+
Tenancy
+
{% render_field model_form.tenant_group %} {% render_field model_form.tenant %}
{% if model_form.custom_fields %} -
-
Custom Fields
+
+
+
+
Custom Fields
+
{% render_custom_fields model_form %}
{% endif %} diff --git a/netbox/templates/ipam/ipaddress_edit.html b/netbox/templates/ipam/ipaddress_edit.html index 1aa5d1d81..d12c12245 100644 --- a/netbox/templates/ipam/ipaddress_edit.html +++ b/netbox/templates/ipam/ipaddress_edit.html @@ -8,7 +8,7 @@ {% endblock tabs %} {% block form %} -
+
IP Address
@@ -20,14 +20,18 @@ {% render_field form.description %} {% render_field form.tags %}
-
+
+ +
Tenancy
{% render_field form.tenant_group %} {% render_field form.tenant %}
-
+
+ +
Interface Assignment
@@ -64,7 +68,7 @@
-
+
{% render_field form.device %} {% render_field form.interface %} @@ -77,7 +81,9 @@
{% endwith %}
-
+
+ +
NAT IP (Inside)
@@ -126,7 +132,7 @@
-
+
{% render_field form.nat_region %} {% render_field form.nat_site_group %} @@ -144,8 +150,10 @@ {% render_field form.nat_inside %}
+ {% if form.custom_fields %} -
+
+
Custom Fields
diff --git a/netbox/templates/ipam/service_edit.html b/netbox/templates/ipam/service_edit.html index 9fbd3b9e6..fe8ddf525 100644 --- a/netbox/templates/ipam/service_edit.html +++ b/netbox/templates/ipam/service_edit.html @@ -2,7 +2,7 @@ {% load form_helpers %} {% block form %} -
+
Service
@@ -24,10 +24,10 @@ {% render_field form.name %}
-
+
{{ form.protocol }}
-
+
{{ form.ports }}
@@ -41,7 +41,9 @@ {% render_field form.description %} {% render_field form.tags %}
+ {% if form.custom_fields %} +
Custom Fields
diff --git a/netbox/templates/ipam/vlan_edit.html b/netbox/templates/ipam/vlan_edit.html index f1f4ecc2d..776e0aa4a 100644 --- a/netbox/templates/ipam/vlan_edit.html +++ b/netbox/templates/ipam/vlan_edit.html @@ -4,7 +4,7 @@ {% load helpers %} {% block form %} -
+
VLAN
@@ -15,14 +15,18 @@ {% render_field form.description %} {% render_field form.tags %}
-
+
+ +
Tenancy
{% render_field form.tenant_group %} {% render_field form.tenant %}
-
+
+ +
Assignment
@@ -39,7 +43,7 @@
-
+
{% render_field form.scope_type %} {% render_field form.group %} @@ -52,8 +56,10 @@
{% endwith %}
+ {% if form.custom_fields %} -
+
+
Custom Fields
diff --git a/netbox/templates/virtualization/cluster/base.html b/netbox/templates/virtualization/cluster/base.html index fec0da220..082a4d37a 100644 --- a/netbox/templates/virtualization/cluster/base.html +++ b/netbox/templates/virtualization/cluster/base.html @@ -13,13 +13,13 @@ {% block extra_controls %} {% if perms.virtualization.change_cluster and perms.virtualization.add_virtualmachine %} - + Add Virtual Machine {% endif %} {% if perms.virtualization.change_cluster %} - + Assign Device {% endif %} diff --git a/netbox/templates/virtualization/vminterface_edit.html b/netbox/templates/virtualization/vminterface_edit.html index 1ea417dbe..ad3c77e13 100644 --- a/netbox/templates/virtualization/vminterface_edit.html +++ b/netbox/templates/virtualization/vminterface_edit.html @@ -2,7 +2,7 @@ {% load form_helpers %} {% block form %} -
+
Interface
@@ -22,7 +22,9 @@ {% render_field form.description %} {% render_field form.tags %}
-
+
+ +
802.1Q Switching
@@ -31,8 +33,10 @@ {% render_field form.untagged_vlan %} {% render_field form.tagged_vlans %}
+ {% if form.custom_fields %} -
+
+
Custom Fields
diff --git a/netbox/virtualization/tables.py b/netbox/virtualization/tables.py index dfa65b41c..b5fb93e5c 100644 --- a/netbox/virtualization/tables.py +++ b/netbox/virtualization/tables.py @@ -180,10 +180,10 @@ class VMInterfaceTable(BaseInterfaceTable): class Meta(BaseTable.Meta): model = VMInterface fields = ( - 'pk', 'virtual_machine', 'name', 'enabled', 'parent', 'mac_address', 'mtu', 'mode', 'description', 'tags', + 'pk', 'name', 'virtual_machine', 'enabled', 'parent', 'mac_address', 'mtu', 'mode', 'description', 'tags', 'ip_addresses', 'untagged_vlan', 'tagged_vlans', ) - default_columns = ('pk', 'virtual_machine', 'name', 'enabled', 'parent', 'description') + default_columns = ('pk', 'name', 'virtual_machine', 'enabled', 'parent', 'description') class VirtualMachineVMInterfaceTable(VMInterfaceTable):
Utilization - {{ object.get_utilization }}% + {% utilization_graph object.get_utilization %}