2016-03-01 11:23:03 -05:00
|
|
|
{% extends '_base.html' %}
|
|
|
|
{% load render_table from django_tables2 %}
|
|
|
|
|
2016-06-21 15:22:11 -04:00
|
|
|
{% block title %}VLAN {{ vlan.display_name }}{% endblock %}
|
2016-03-01 11:23:03 -05:00
|
|
|
|
|
|
|
{% block content %}
|
|
|
|
<div class="row">
|
|
|
|
<div class="col-md-9">
|
|
|
|
<ol class="breadcrumb">
|
2016-07-29 11:20:47 -04:00
|
|
|
<li><a href="{% url 'ipam:vlan_list' %}">VLANs</a></li>
|
|
|
|
<li><a href="{% url 'ipam:vlan_list' %}?site={{ vlan.site.slug }}">{{ vlan.site }}</a></li>
|
|
|
|
{% if vlan.group %}
|
|
|
|
<li><a href="{% url 'ipam:vlan_list' %}?site={{ vlan.site.slug }}&group={{ vlan.group.slug }}">{{ vlan.group.name }}</a></li>
|
|
|
|
{% endif %}
|
2016-03-01 11:23:03 -05:00
|
|
|
<li>{{ vlan.name }} ({{ vlan.vid }})</li>
|
|
|
|
</ol>
|
|
|
|
</div>
|
|
|
|
<div class="col-md-3">
|
|
|
|
<form action="{% url 'ipam:vlan_list' %}" method="get">
|
|
|
|
<div class="input-group">
|
2016-07-29 12:51:23 -04:00
|
|
|
<input type="text" name="q" class="form-control" placeholder="Search VLANs" />
|
2016-03-01 11:23:03 -05:00
|
|
|
<span class="input-group-btn">
|
|
|
|
<button type="submit" class="btn btn-primary">
|
|
|
|
<span class="glyphicon glyphicon-search" aria-hidden="true"></span>
|
|
|
|
</button>
|
|
|
|
</span>
|
|
|
|
</div>
|
|
|
|
</form>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div class="pull-right">
|
|
|
|
{% if perms.ipam.change_vlan %}
|
|
|
|
<a href="{% url 'ipam:vlan_edit' pk=vlan.pk %}" class="btn btn-warning">
|
|
|
|
<span class="glyphicon glyphicon-pencil" aria-hidden="true"></span>
|
|
|
|
Edit this VLAN
|
|
|
|
</a>
|
|
|
|
{% endif %}
|
|
|
|
{% if perms.ipam.delete_vlan %}
|
|
|
|
<a href="{% url 'ipam:vlan_delete' pk=vlan.pk %}" class="btn btn-danger">
|
|
|
|
<span class="glyphicon glyphicon-trash" aria-hidden="true"></span>
|
|
|
|
Delete this VLAN
|
|
|
|
</a>
|
|
|
|
{% endif %}
|
|
|
|
</div>
|
2016-06-22 17:12:12 -04:00
|
|
|
<h1>VLAN {{ vlan.display_name }}</h1>
|
2016-03-01 11:23:03 -05:00
|
|
|
<div class="row">
|
|
|
|
<div class="col-md-6">
|
|
|
|
<div class="panel panel-default">
|
|
|
|
<div class="panel-heading">
|
2016-06-22 10:57:32 -04:00
|
|
|
<strong>VLAN</strong>
|
2016-03-01 11:23:03 -05:00
|
|
|
</div>
|
|
|
|
<table class="table table-hover panel-body">
|
|
|
|
<tr>
|
|
|
|
<td>Site</td>
|
|
|
|
<td><a href="{% url 'dcim:site' slug=vlan.site.slug %}">{{ vlan.site }}</a></td>
|
|
|
|
</tr>
|
2016-07-15 16:32:00 -04:00
|
|
|
<tr>
|
|
|
|
<td>Group</td>
|
|
|
|
<td>
|
|
|
|
{% if vlan.group %}
|
|
|
|
<a href="{{ vlan.group.get_absolute_url }}">{{ vlan.group.name }}</a>
|
|
|
|
{% else %}
|
|
|
|
<span class="text-muted">None</span>
|
|
|
|
{% endif %}
|
|
|
|
</td>
|
|
|
|
</tr>
|
2016-03-01 11:23:03 -05:00
|
|
|
<tr>
|
|
|
|
<td>VLAN ID</td>
|
|
|
|
<td>{{ vlan.vid }}</td>
|
|
|
|
</tr>
|
2016-06-21 15:22:11 -04:00
|
|
|
<tr>
|
|
|
|
<td>Name</td>
|
|
|
|
<td>{{ vlan.name }}</td>
|
|
|
|
</tr>
|
2016-07-25 14:58:49 -04:00
|
|
|
<tr>
|
2016-07-27 11:29:20 -04:00
|
|
|
<td>Tenant</td>
|
2016-07-25 14:58:49 -04:00
|
|
|
<td>
|
2016-07-27 11:29:20 -04:00
|
|
|
{% if vlan.tenant %}
|
|
|
|
<a href="{{ vlan.tenant.get_absolute_url }}">{{ vlan.tenant }}</a>
|
2016-07-25 14:58:49 -04:00
|
|
|
{% else %}
|
|
|
|
<span class="text-muted">None</span>
|
|
|
|
{% endif %}
|
|
|
|
</td>
|
|
|
|
</tr>
|
2016-03-01 11:23:03 -05:00
|
|
|
<tr>
|
|
|
|
<td>Status</td>
|
|
|
|
<td>
|
2016-05-18 11:12:13 -04:00
|
|
|
<span class="label label-{{ vlan.get_status_class }}">{{ vlan.get_status_display }}</span>
|
2016-03-01 11:23:03 -05:00
|
|
|
</td>
|
|
|
|
</tr>
|
|
|
|
<tr>
|
|
|
|
<td>Role</td>
|
|
|
|
<td>{{ vlan.role }}</td>
|
2016-06-22 10:57:32 -04:00
|
|
|
</tr>
|
2016-07-27 11:29:20 -04:00
|
|
|
<tr>
|
|
|
|
<td>Description</td>
|
|
|
|
<td>
|
|
|
|
{% if vlan.description %}
|
|
|
|
{{ vlan.description }}
|
|
|
|
{% else %}
|
|
|
|
<span class="text-muted">None</span>
|
|
|
|
{% endif %}
|
|
|
|
</td>
|
|
|
|
</tr>
|
2016-06-22 10:57:32 -04:00
|
|
|
<tr>
|
|
|
|
<td>Created</td>
|
|
|
|
<td>{{ vlan.created }}</td>
|
|
|
|
</tr>
|
|
|
|
<tr>
|
|
|
|
<td>Last Updated</td>
|
|
|
|
<td>{{ vlan.last_updated }}</td>
|
2016-03-01 11:23:03 -05:00
|
|
|
</tr>
|
|
|
|
</table>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div class="col-md-6">
|
|
|
|
<div class="panel panel-default">
|
|
|
|
<div class="panel-heading">
|
|
|
|
<strong>Prefixes</strong>
|
|
|
|
</div>
|
|
|
|
{% if prefixes %}
|
|
|
|
<table class="table table-hover panel-body">
|
|
|
|
{% for p in prefixes %}
|
|
|
|
<tr>
|
|
|
|
<td>
|
|
|
|
<a href="{% url 'ipam:prefix' pk=p.pk %}">{{ p }}</a>
|
|
|
|
</td>
|
|
|
|
<td>
|
|
|
|
{% if p.site %}
|
|
|
|
<a href="{% url 'dcim:site' slug=p.site.slug %}">{{ p.site }}</a>
|
|
|
|
{% endif %}
|
|
|
|
</td>
|
2016-06-21 15:22:11 -04:00
|
|
|
<td>{{ p.get_status_display }}</td>
|
2016-03-01 11:23:03 -05:00
|
|
|
<td>{{ p.role }}</td>
|
|
|
|
</tr>
|
|
|
|
{% endfor %}
|
|
|
|
</table>
|
|
|
|
{% else %}
|
|
|
|
<div class="panel-body text-muted">None</div>
|
|
|
|
{% endif %}
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
{% endblock %}
|