1
0
mirror of https://github.com/netbox-community/netbox.git synced 2024-05-10 07:54:54 +00:00
netbox-community-netbox/netbox/templates/dcim/device_lldp_neighbors.html
2016-03-01 11:23:03 -05:00

74 lines
2.9 KiB
HTML

{% extends '_base.html' %}
{% block title %}{{ device }} - LLDP Neighbors{% endblock %}
{% block content %}
{% include 'dcim/inc/_device_header.html' with active_tab='lldp-neighbors' %}
<div class="panel panel-default">
<div class="panel-heading">
<strong>LLDP Neighbors</strong>
</div>
<table class="table table-hover panel-body">
<thead>
<tr>
<th>Interface</th>
<th>Configured Device</th>
<th>Configured Interface</th>
<th>LLDP Device</th>
<th>LLDP Interface</th>
</tr>
</thead>
<tbody>
{% for iface in interfaces %}
<tr id="{{ iface }}">
<td>{{ iface }}</td>
{% if iface.connection %}
{% with iface.get_connected_interface as connected_iface %}
<td class="configured_device" data="{{ connected_iface.device }}">
<a href="{% url 'dcim:device' pk=connected_iface.device.pk %}">{{ connected_iface.device }}</a>
</td>
<td class="configured_interface" data="{{ connected_iface }}">
<span title="{{ connected_iface.get_form_factor_display }}">{{ connected_iface }}</span>
</td>
{% endwith %}
{% else %}
<td colspan="2">None</td>
{% endif %}
<td class="device"></td>
<td class="interface"></td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
{% endblock %}
{% block javascript %}
<script type="text/javascript">
$(document).ready(function() {
$.ajax({
url: "{% url 'dcim-api:device_lldp-neighbors' pk=device.pk %}",
dataType: 'json',
success: function(json) {
$.each(json, function(i, neighbor) {
var row = $('#' + neighbor['local-interface'].replace(/(\/)/g, "\\$1"));
var configured_device = row.children('td.configured_device').attr('data');
var configured_interface = row.children('td.configured_interface').attr('data');
// Add LLDP neighbors to table
row.children('td.device').html(neighbor['name']);
row.children('td.interface').html(neighbor['remote-interface']);
// Apply colors to rows
if (!configured_device && neighbor['name']) {
row.addClass('info');
} else if (configured_device == neighbor['name'] && configured_interface == neighbor['remote-interface']) {
row.addClass('success');
} else {
row.addClass('danger');
}
});
}
});
});
</script>
{% endblock %}