|
|
@@ -155,6 +155,38 @@
|
|
|
{% include 'inc/panels/custom_fields.html' %}
|
|
|
{% include 'inc/panels/tags.html' %}
|
|
|
{% include 'inc/panels/comments.html' %}
|
|
|
+ <div class="card">
|
|
|
+ <h5 class="card-header">Virtual Device Contexts</h5>
|
|
|
+ <div class="card-body">
|
|
|
+ {% if vdcs %}
|
|
|
+ <table class="table table-hover">
|
|
|
+ <tr>
|
|
|
+ <th>Name</th>
|
|
|
+ <th>Status</th>
|
|
|
+ <th>Identifier</th>
|
|
|
+ <th>Tenant</th>
|
|
|
+ </tr>
|
|
|
+ {% for vdc in vdcs %}
|
|
|
+ <tr>
|
|
|
+ <td>{{ vdc|linkify }}</td>
|
|
|
+ <td>{% badge vdc.get_status_display bg_color=vdc.get_status_color %}</td>
|
|
|
+ <td>{{ vdc.identifier|placeholder }}</td>
|
|
|
+ <td>{{ vdc.tenant|linkify|placeholder }}</td>
|
|
|
+ </tr>
|
|
|
+ {% endfor %}
|
|
|
+ </table>
|
|
|
+ {% else %}
|
|
|
+ <div class="text-muted">None</div>
|
|
|
+ {% endif %}
|
|
|
+ </div>
|
|
|
+ {% if perms.dcim.add_virtualdevicecontext %}
|
|
|
+ <div class="card-footer text-end noprint">
|
|
|
+ <a href="{% url 'dcim:virtualdevicecontext_add' %}?device={{ object.pk }}" class="btn btn-sm btn-primary">
|
|
|
+ <span class="mdi mdi-plus-thick" aria-hidden="true"></span> Create VDC
|
|
|
+ </a>
|
|
|
+ </div>
|
|
|
+ {% endif %}
|
|
|
+ </div>
|
|
|
{% plugin_left_page object %}
|
|
|
</div>
|
|
|
<div class="col col-12 col-xl-6">
|
|
|
@@ -264,34 +296,30 @@
|
|
|
</div>
|
|
|
{% endif %}
|
|
|
<div class="card">
|
|
|
- <h5 class="card-header">
|
|
|
- Services
|
|
|
- </h5>
|
|
|
- <div class="card-body">
|
|
|
+ <h5 class="card-header">Services</h5>
|
|
|
+ <div class="card-body">
|
|
|
{% if services %}
|
|
|
- <table class="table table-hover">
|
|
|
- {% for service in services %}
|
|
|
- {% include 'ipam/inc/service.html' %}
|
|
|
- {% endfor %}
|
|
|
- </table>
|
|
|
+ <table class="table table-hover">
|
|
|
+ {% for service in services %}
|
|
|
+ {% include 'ipam/inc/service.html' %}
|
|
|
+ {% endfor %}
|
|
|
+ </table>
|
|
|
{% else %}
|
|
|
- <div class="text-muted">
|
|
|
- None
|
|
|
- </div>
|
|
|
+ <div class="text-muted">None</div>
|
|
|
{% endif %}
|
|
|
- </div>
|
|
|
- {% if perms.ipam.add_service %}
|
|
|
+ </div>
|
|
|
+ {% if perms.ipam.add_service %}
|
|
|
<div class="card-footer text-end noprint">
|
|
|
- <a href="{% url 'ipam:service_add' %}?device={{ object.pk }}" class="btn btn-sm btn-primary">
|
|
|
- <span class="mdi mdi-plus-thick" aria-hidden="true"></span> Assign Service
|
|
|
- </a>
|
|
|
+ <a href="{% url 'ipam:service_add' %}?device={{ object.pk }}" class="btn btn-sm btn-primary">
|
|
|
+ <span class="mdi mdi-plus-thick" aria-hidden="true"></span> Assign Service
|
|
|
+ </a>
|
|
|
</div>
|
|
|
- {% endif %}
|
|
|
+ {% endif %}
|
|
|
</div>
|
|
|
{% include 'inc/panels/contacts.html' %}
|
|
|
{% include 'inc/panels/image_attachments.html' %}
|
|
|
{% if object.rack and object.position %}
|
|
|
- <div class="row" style="margin-bottom: 20px">
|
|
|
+ <div class="row" style="margin-bottom: 20px">
|
|
|
<div class="col col-md-6 col-sm-6 col-xs-12 text-center">
|
|
|
<div style="margin-left: 30px">
|
|
|
<h4>Front</h4>
|
|
|
@@ -304,7 +332,7 @@
|
|
|
{% include 'dcim/inc/rack_elevation.html' with object=object.rack face='rear' extra_params=svg_extra %}
|
|
|
</div>
|
|
|
</div>
|
|
|
- </div>
|
|
|
+ </div>
|
|
|
{% endif %}
|
|
|
{% plugin_right_page object %}
|
|
|
</div>
|