- {{ device.site }}
- {% if device.rack %}
- Racks
- {{ device.rack }}
- {% endif %}
+ Devices
+ {{ device.site }}
{% if device.parent_bay %}
{{ device.parent_bay.device }}
{{ device.parent_bay }}
@@ -101,7 +98,7 @@
- Inventory {{ device.inventoryitems.unrestricted.count }}
+ Inventory {{ device.inventoryitems.count }}
{% if perms.dcim.napalm_read_device %}
@@ -151,8 +148,10 @@
{% if device.rack %}
{% if device.rack.group %}
- {{ device.rack.group }}
-
+ {% for group in device.rack.group.get_ancestors %}
+ {{ group }}
+ {% endfor %}
+ {{ device.rack.group }}
{% endif %}
{{ device.rack }}
{% else %}
diff --git a/netbox/templates/dcim/device_component_edit.html b/netbox/templates/dcim/device_component_edit.html
new file mode 100644
index 000000000..e0f1a2326
--- /dev/null
+++ b/netbox/templates/dcim/device_component_edit.html
@@ -0,0 +1,16 @@
+{% extends 'utilities/obj_edit.html' %}
+{% load form_helpers %}
+
+{% block form_fields %}
+ {% if form.instance.device %}
+
+ {% endif %}
+ {% render_form form %}
+{% endblock %}
diff --git a/netbox/templates/dcim/device_edit.html b/netbox/templates/dcim/device_edit.html
index 0f1ac2886..f1b68d063 100644
--- a/netbox/templates/dcim/device_edit.html
+++ b/netbox/templates/dcim/device_edit.html
@@ -23,6 +23,7 @@
{% render_field form.region %}
{% render_field form.site %}
+ {% render_field form.rack_group %}
{% render_field form.rack %}
{% if obj.device_type.is_child_device and obj.parent_bay %}
diff --git a/netbox/templates/dcim/inc/consoleport.html b/netbox/templates/dcim/inc/consoleport.html
index dc2111b8a..6fa5e8b91 100644
--- a/netbox/templates/dcim/inc/consoleport.html
+++ b/netbox/templates/dcim/inc/consoleport.html
@@ -66,7 +66,7 @@
{% endif %}
{% if perms.dcim.change_consoleport %}
-
+
{% endif %}
diff --git a/netbox/templates/dcim/inc/consoleserverport.html b/netbox/templates/dcim/inc/consoleserverport.html
index dcf168ae7..fca1fa5f4 100644
--- a/netbox/templates/dcim/inc/consoleserverport.html
+++ b/netbox/templates/dcim/inc/consoleserverport.html
@@ -68,7 +68,7 @@
{% endif %}
{% if perms.dcim.change_consoleserverport %}
-
+
{% endif %}
diff --git a/netbox/templates/dcim/inc/devicebay.html b/netbox/templates/dcim/inc/devicebay.html
index ee6a66d8f..bde7b8641 100644
--- a/netbox/templates/dcim/inc/devicebay.html
+++ b/netbox/templates/dcim/inc/devicebay.html
@@ -52,7 +52,7 @@
{% endif %}
-
+
{% endif %}
diff --git a/netbox/templates/dcim/inc/poweroutlet.html b/netbox/templates/dcim/inc/poweroutlet.html
index d9a77d647..5800f4b48 100644
--- a/netbox/templates/dcim/inc/poweroutlet.html
+++ b/netbox/templates/dcim/inc/poweroutlet.html
@@ -81,7 +81,7 @@
{% endif %}
{% if perms.dcim.change_poweroutlet %}
-
+
{% endif %}
diff --git a/netbox/templates/dcim/inc/powerport.html b/netbox/templates/dcim/inc/powerport.html
index 58eed145a..b30fc8456 100644
--- a/netbox/templates/dcim/inc/powerport.html
+++ b/netbox/templates/dcim/inc/powerport.html
@@ -78,7 +78,7 @@
{% endif %}
{% if perms.dcim.change_powerport %}
-
+
{% endif %}
diff --git a/netbox/templates/dcim/interface_edit.html b/netbox/templates/dcim/interface_edit.html
index eaffe2bca..7a5c99905 100644
--- a/netbox/templates/dcim/interface_edit.html
+++ b/netbox/templates/dcim/interface_edit.html
@@ -5,6 +5,16 @@
Interface
+ {% if form.instance.device %}
+
+ {% endif %}
{% render_field form.name %}
{% render_field form.label %}
{% render_field form.type %}
@@ -14,6 +24,11 @@
{% render_field form.mtu %}
{% render_field form.mgmt_only %}
{% render_field form.description %}
+
+
+
+
802.1Q Switching
+
{% render_field form.mode %}
{% render_field form.untagged_vlan %}
{% render_field form.tagged_vlans %}
diff --git a/netbox/templates/dcim/rack.html b/netbox/templates/dcim/rack.html
index 5ead0ac4f..4cf3b9018 100644
--- a/netbox/templates/dcim/rack.html
+++ b/netbox/templates/dcim/rack.html
@@ -11,6 +11,12 @@
Racks
{{ rack.site }}
+ {% if rack.group %}
+ {% for group in rack.group.get_ancestors %}
+ {{ group }}
+ {% endfor %}
+ {{ rack.group }}
+ {% endif %}
{{ rack }}
@@ -87,7 +93,10 @@
Group
{% if rack.group %}
- {{ rack.group }}
+ {% for group in rack.group.get_ancestors %}
+ {{ group }}
+ {% endfor %}
+ {{ rack.group }}
{% else %}
None
{% endif %}
diff --git a/netbox/templates/dcim/rack_elevation_list.html b/netbox/templates/dcim/rack_elevation_list.html
index e4949eb17..c39bcae75 100644
--- a/netbox/templates/dcim/rack_elevation_list.html
+++ b/netbox/templates/dcim/rack_elevation_list.html
@@ -3,12 +3,18 @@
{% load static %}
{% block content %}
-
+
{% block title %}Rack Elevations{% endblock %}
diff --git a/netbox/templates/dcim/site.html b/netbox/templates/dcim/site.html
index d6c21bf92..781ca9fab 100644
--- a/netbox/templates/dcim/site.html
+++ b/netbox/templates/dcim/site.html
@@ -12,7 +12,7 @@
Sites
{% if site.region %}
- {% for region in site.region.get_ancestors.unrestricted %}
+ {% for region in site.region.get_ancestors %}
{{ region }}
{% endfor %}
{{ site.region }}
@@ -86,7 +86,7 @@
Region
{% if site.region %}
- {% for region in site.region.get_ancestors.unrestricted %}
+ {% for region in site.region.get_ancestors %}
{{ region }}
{% endfor %}
@@ -255,7 +255,7 @@
{% for rg in rack_groups %}
- {{ rg }}
+ {{ rg }}
{{ rg.rack_count }}
diff --git a/netbox/templates/exceptions/import_error.html b/netbox/templates/exceptions/import_error.html
index 20dc3728b..78f4db9c0 100644
--- a/netbox/templates/exceptions/import_error.html
+++ b/netbox/templates/exceptions/import_error.html
@@ -5,14 +5,15 @@
A module import error occurred during this request. Common causes include the following:
- Missing required packages - This installation of NetBox might be missing one or more required
- Python packages. These packages are listed in requirements.txt
and are normally installed as part
- of the installation or upgrade process. To verify installed packages, run pip freeze
from the
- console and compare the output to the list of required packages.
+ Missing required packages - This installation of NetBox might be
+ missing one or more required Python packages. These packages are listed in requirements.txt
and
+ local_requirements.txt
, and are normally installed as part of the installation or upgrade process.
+ To verify installed packages, run pip freeze
from the console and compare the output to the list of
+ required packages.
- WSGI service not restarted after upgrade - If this installation has recently been upgraded,
- check that the WSGI service (e.g. gunicorn or uWSGI) has been restarted. This ensures that the new code is
- running.
+ WSGI service not restarted after upgrade - If this installation
+ has recently been upgraded, check that the WSGI service (e.g. gunicorn or uWSGI) has been restarted. This
+ ensures that the new code is running.
{% endblock %}
diff --git a/netbox/templates/home.html b/netbox/templates/home.html
index 85332ae1b..e06b67469 100644
--- a/netbox/templates/home.html
+++ b/netbox/templates/home.html
@@ -276,7 +276,7 @@
Reports
- {% if report_results and perms.extras.view_reportresult %}
+ {% if report_results and perms.extras.view_report %}
{% for result in report_results %}
@@ -285,7 +285,7 @@
{% endfor %}
- {% elif perms.extras.view_reportresult %}
+ {% elif perms.extras.view_report %}
None found
diff --git a/netbox/templates/inc/nav_menu.html b/netbox/templates/inc/nav_menu.html
index 23808bc04..bf3d349cc 100644
--- a/netbox/templates/inc/nav_menu.html
+++ b/netbox/templates/inc/nav_menu.html
@@ -518,7 +518,7 @@
Scripts
-
+
Reports
diff --git a/netbox/templates/inc/plugin_menu_items.html b/netbox/templates/inc/plugin_menu_items.html
index 0df4a5e8a..3d9a46a52 100644
--- a/netbox/templates/inc/plugin_menu_items.html
+++ b/netbox/templates/inc/plugin_menu_items.html
@@ -5,18 +5,22 @@
{% for section_name, menu_items in registry.plugin_menu_items.items %}
{% for menu_item in menu_items %}
-
- {% if menu_item.buttons %}
-
- {% endif %}
- {{ menu_item.link_text }}
-
+ {% if not menu_item.permissions or request.user|has_perms:menu_item.permissions %}
+
+ {% if menu_item.buttons %}
+
+ {% endif %}
+ {{ menu_item.link_text }}
+
+ {% else %}
+ {{ menu_item.link_text }}
+ {% endif %}
{% endfor %}
{% if not forloop.last %}
diff --git a/netbox/templates/ipam/vlan.html b/netbox/templates/ipam/vlan.html
index ec1f94b51..d9cb0c66c 100644
--- a/netbox/templates/ipam/vlan.html
+++ b/netbox/templates/ipam/vlan.html
@@ -52,8 +52,11 @@
VLAN
-
- Members {{ vlan.get_members.count }}
+
+ Device Interfaces {{ vlan.get_interfaces.count }}
+
+
+ VM Interfaces {{ vlan.get_vminterfaces.count }}
{% if perms.extras.view_objectchange %}
diff --git a/netbox/templates/ipam/vlan_members.html b/netbox/templates/ipam/vlan_interfaces.html
similarity index 59%
rename from netbox/templates/ipam/vlan_members.html
rename to netbox/templates/ipam/vlan_interfaces.html
index 9fc803e09..d58de30c0 100644
--- a/netbox/templates/ipam/vlan_members.html
+++ b/netbox/templates/ipam/vlan_interfaces.html
@@ -1,11 +1,9 @@
{% extends 'ipam/vlan.html' %}
-{% block title %}{{ block.super }} - Members{% endblock %}
-
{% block content %}
- {% include 'utilities/obj_table.html' with table=members_table table_template='panel_table.html' heading='VLAN Members' parent=vlan %}
+ {% include 'utilities/obj_table.html' with table=members_table table_template='panel_table.html' heading='Device Interfaces' parent=vlan %}
{% endblock %}
diff --git a/netbox/templates/ipam/vlan_vminterfaces.html b/netbox/templates/ipam/vlan_vminterfaces.html
new file mode 100644
index 000000000..55ddc82bd
--- /dev/null
+++ b/netbox/templates/ipam/vlan_vminterfaces.html
@@ -0,0 +1,9 @@
+{% extends 'ipam/vlan.html' %}
+
+{% block content %}
+
+
+ {% include 'utilities/obj_table.html' with table=members_table table_template='panel_table.html' heading='Virtual Machine Interfaces' parent=vlan %}
+
+
+{% endblock %}
diff --git a/netbox/templates/utilities/obj_edit.html b/netbox/templates/utilities/obj_edit.html
index 5230b2594..0bd051161 100644
--- a/netbox/templates/utilities/obj_edit.html
+++ b/netbox/templates/utilities/obj_edit.html
@@ -31,7 +31,9 @@
{{ obj_type|capfirst }}
- {% render_form form %}
+ {% block form_fields %}
+ {% render_form form %}
+ {% endblock %}
{% endblock %}
diff --git a/netbox/templates/virtualization/inc/vminterface.html b/netbox/templates/virtualization/inc/vminterface.html
index 5410fba7a..9ee1fa396 100644
--- a/netbox/templates/virtualization/inc/vminterface.html
+++ b/netbox/templates/virtualization/inc/vminterface.html
@@ -2,7 +2,7 @@
{# Checkbox #}
- {% if perms.virtualization.change_interface or perms.virtualization.delete_interface %}
+ {% if perms.virtualization.change_vminterface or perms.virtualization.delete_vminterface %}
@@ -48,12 +48,12 @@
{% endif %}
- {% if perms.virtualization.change_interface %}
+ {% if perms.virtualization.change_vminterface %}
{% endif %}
- {% if perms.virtualization.delete_interface %}
+ {% if perms.virtualization.delete_vminterface %}
@@ -65,7 +65,7 @@
{% if ipaddresses %}
{# Placeholder #}
- {% if perms.virtualization.change_interface or perms.virtualization.delete_interface %}
+ {% if perms.virtualization.change_vminterface or perms.virtualization.delete_vminterface %}
{% endif %}
diff --git a/netbox/templates/virtualization/virtualmachine_component_add.html b/netbox/templates/virtualization/virtualmachine_component_add.html
index aafefffa1..11b120ee0 100644
--- a/netbox/templates/virtualization/virtualmachine_component_add.html
+++ b/netbox/templates/virtualization/virtualmachine_component_add.html
@@ -2,7 +2,7 @@
{% load helpers %}
{% load form_helpers %}
-{% block title %}Create {{ component_type }} ({{ parent }}){% endblock %}
+{% block title %}Create {{ component_type }}{% endblock %}
{% block content %}