| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196 |
- {% extends 'generic/object.html' %}
- {% load buttons %}
- {% load static %}
- {% load helpers %}
- {% load plugins %}
- {% block breadcrumbs %}
- {{ block.super }}
- <li class="breadcrumb-item"><a href="{% url 'dcim:device_list' %}?site_id={{ object.site.pk }}">{{ object.site }}</a></li>
- {% if object.parent_bay %}
- <li class="breadcrumb-item"><a href="{% url 'dcim:device' pk=object.parent_bay.device.pk %}">{{ object.parent_bay.device }}</a></li>
- <li class="breadcrumb-item">{{ object.parent_bay }}</li>
- {% endif %}
- {% endblock %}
- {% block extra_controls %}
- {% if perms.dcim.change_device %}
- <div class="dropdown">
- <button id="add-device-components" type="button" class="btn btn-sm btn-primary dropdown-toggle" data-bs-toggle="dropdown" aria-expanded="false">
- <i class="mdi mdi-plus-thick" aria-hidden="true"></i> Add Components
- </button>
- <ul class="dropdown-menu" aria-labeled-by="add-device-components">
- {% if perms.dcim.add_consoleport %}
- <li>
- <a class="dropdown-item" href="{% url 'dcim:consoleport_add' %}?device={{ object.pk }}&return_url={% url 'dcim:device_consoleports' pk=object.pk %}">
- Console Ports
- </a>
- </li>
- {% endif %}
- {% if perms.dcim.add_consoleserverport %}
- <li>
- <a class="dropdown-item" href="{% url 'dcim:consoleserverport_add' %}?device={{ object.pk }}&return_url={% url 'dcim:device_consoleserverports' pk=object.pk %}">
- Console Server Ports
- </a>
- </li>
- {% endif %}
- {% if perms.dcim.add_powerport %}
- <li>
- <a class="dropdown-item" href="{% url 'dcim:powerport_add' %}?device={{ object.pk }}&return_url={% url 'dcim:device_powerports' pk=object.pk %}">
- Power Ports
- </a>
- </li>
- {% endif %}
- {% if perms.dcim.add_poweroutlet %}
- <li>
- <a class="dropdown-item" href="{% url 'dcim:poweroutlet_add' %}?device={{ object.pk }}&return_url={% url 'dcim:device_poweroutlets' pk=object.pk %}">
- Power Outlets
- </a>
- </li>
- {% endif %}
- {% if perms.dcim.add_interface %}
- <li>
- <a class="dropdown-item" href="{% url 'dcim:interface_add' %}?device={{ object.pk }}&return_url={% url 'dcim:device_interfaces' pk=object.pk %}">
- Interfaces
- </a>
- </li>
- {% endif %}
- {% if perms.dcim.add_frontport %}
- <li>
- <a class="dropdown-item" href="{% url 'dcim:frontport_add' %}?device={{ object.pk }}&return_url={% url 'dcim:device_frontports' pk=object.pk %}">
- Front Ports
- </a>
- </li>
- {% endif %}
- {% if perms.dcim.add_rearport %}
- <li>
- <a class="dropdown-item" href="{% url 'dcim:rearport_add' %}?device={{ object.pk }}&return_url={% url 'dcim:device_rearports' pk=object.pk %}">
- Rear Ports
- </a>
- </li>
- {% endif %}
- {% if perms.dcim.add_devicebay %}
- <li>
- <a class="dropdown-item" href="{% url 'dcim:devicebay_add' %}?device={{ object.pk }}&return_url={% url 'dcim:device_devicebays' pk=object.pk %}">
- Device Bays
- </a>
- </li>
- {% endif %}
- {% if perms.dcim.add_inventoryitem %}
- <li>
- <a class="dropdown-item" href="{% url 'dcim:inventoryitem_add' %}?device={{ object.pk }}&return_url={% url 'dcim:device_inventory' pk=object.pk %}">
- Inventory Items
- </a>
- </li>
- {% endif %}
- </ul>
- </div>
- {% endif %}
- {% endblock %}
- {% block tab_items %}
- <li role="presentation" class="nav-item">
- <a href="{% url 'dcim:device' pk=object.pk %}" class="nav-link{% if active_tab == 'device' %} active{% endif %}">
- Device
- </a>
- </li>
- {% with tab_name='interfaces' interface_count=object.interfaces_count %}
- {% if active_tab == tab_name or interface_count %}
- <li role="presentation" class="nav-item">
- <a class="nav-link {% if active_tab == tab_name %} active{% endif %}" href="{% url 'dcim:device_interfaces' pk=object.pk %}">Interfaces {% badge interface_count %}</a>
- </li>
- {% endif %}
- {% endwith %}
- {% with tab_name='front-ports' frontport_count=object.frontports.count %}
- {% if active_tab == tab_name or frontport_count %}
- <li role="presentation" class="nav-item">
- <a class="nav-link {% if active_tab == tab_name %} active{% endif %}" href="{% url 'dcim:device_frontports' pk=object.pk %}">Front Ports {% badge frontport_count %}</a>
- </li>
- {% endif %}
- {% endwith %}
- {% with tab_name='rear-ports' rearport_count=object.rearports.count %}
- {% if active_tab == tab_name or rearport_count %}
- <li role="presentation" class="nav-item">
- <a class="nav-link {% if active_tab == tab_name %} active{% endif %}" href="{% url 'dcim:device_rearports' pk=object.pk %}">Rear Ports {% badge rearport_count %}</a>
- </li>
- {% endif %}
- {% endwith %}
- {% with tab_name='console-ports' consoleport_count=object.consoleports.count %}
- {% if active_tab == tab_name or consoleport_count %}
- <li role="presentation" class="nav-item">
- <a class="nav-link {% if active_tab == tab_name %} active{% endif %}" href="{% url 'dcim:device_consoleports' pk=object.pk %}">Console Ports {% badge consoleport_count %}</a>
- </li>
- {% endif %}
- {% endwith %}
- {% with tab_name='console-server-ports' consoleserverport_count=object.consoleserverports.count %}
- {% if active_tab == tab_name or consoleserverport_count %}
- <li role="presentation" class="nav-item">
- <a class="nav-link {% if active_tab == tab_name %} active{% endif %}" href="{% url 'dcim:device_consoleserverports' pk=object.pk %}">Console Server Ports {% badge consoleserverport_count %}</a>
- </li>
- {% endif %}
- {% endwith %}
- {% with tab_name='power-ports' powerport_count=object.powerports.count %}
- {% if active_tab == tab_name or powerport_count %}
- <li role="presentation" class="nav-item">
- <a class="nav-link {% if active_tab == tab_name %} active{% endif %}" href="{% url 'dcim:device_powerports' pk=object.pk %}">Power Ports {% badge powerport_count %}</a>
- </li>
- {% endif %}
- {% endwith %}
- {% with tab_name='power-outlets' poweroutlet_count=object.poweroutlets.count %}
- {% if active_tab == tab_name or poweroutlet_count %}
- <li role="presentation" class="nav-item">
- <a class="nav-link {% if active_tab == tab_name %} active{% endif %}" href="{% url 'dcim:device_poweroutlets' pk=object.pk %}">Power Outlets {% badge poweroutlet_count %}</a>
- </li>
- {% endif %}
- {% endwith %}
- {% with tab_name='device-bays' devicebay_count=object.devicebays.count %}
- {% if active_tab == tab_name or devicebay_count %}
- <li role="presentation" class="nav-item">
- <a class="nav-link {% if active_tab == tab_name %} active{% endif %}" href="{% url 'dcim:device_devicebays' pk=object.pk %}">Device Bays {% badge devicebay_count %}</a>
- </li>
- {% endif %}
- {% endwith %}
- {% with tab_name='inventory-items' inventoryitem_count=object.inventoryitems.count %}
- {% if active_tab == tab_name or inventoryitem_count %}
- <li role="presentation" class="nav-item">
- <a class="nav-link {% if active_tab == tab_name %} active{% endif %}" href="{% url 'dcim:device_inventory' pk=object.pk %}">Inventory {% badge inventoryitem_count %}</a>
- </li>
- {% endif %}
- {% endwith %}
- {% if perms.dcim.napalm_read_device and object.status == 'active' and object.primary_ip and object.platform.napalm_driver %}
- {# NAPALM-enabled tabs #}
- <li role="presentation" class="nav-item">
- <a class="nav-link{% if active_tab == 'status' %} active{% endif %}" href="{% url 'dcim:device_status' pk=object.pk %}">
- Status
- </a>
- </li>
- <li role="presentation" class="nav-item">
- <a class="nav-link{% if active_tab == 'lldp-neighbors' %} active{% endif %}" href="{% url 'dcim:device_lldp_neighbors' pk=object.pk %}">
- LLDP Neighbors
- </a>
- </li>
- <li role="presentation" class="nav-item">
- <a class="nav-link{% if active_tab == 'config' %} active{% endif %}" href="{% url 'dcim:device_config' pk=object.pk %}">
- Configuration
- </a>
- </li>
- {% endif %}
-
- {% if perms.extras.view_configcontext %}
- <li role="presentation" class="nav-item">
- <a href="{% url 'dcim:device_configcontext' pk=object.pk %}" class="nav-link{% if active_tab == 'config-context' %} active{% endif %}">
- Config Context
- </a>
- </li>
- {% endif %}
- {% endblock %}
|