vlan.html 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121
  1. {% extends '_base.html' %}
  2. {% load render_table from django_tables2 %}
  3. {% block title %}VLAN {{ vlan.display_name }}{% endblock %}
  4. {% block content %}
  5. <div class="row">
  6. <div class="col-md-9">
  7. <ol class="breadcrumb">
  8. <li><a href="{% url 'dcim:site' slug=vlan.site.slug %}">{{ vlan.site }}</a></li>
  9. <li><a href="{% url 'ipam:vlan_list' %}?site={{ vlan.site.slug }}">VLANs</a></li>
  10. <li>{{ vlan.name }} ({{ vlan.vid }})</li>
  11. </ol>
  12. </div>
  13. <div class="col-md-3">
  14. <form action="{% url 'ipam:vlan_list' %}" method="get">
  15. <div class="input-group">
  16. <input type="text" name="vid" class="form-control" placeholder="VLAN ID search" />
  17. <span class="input-group-btn">
  18. <button type="submit" class="btn btn-primary">
  19. <span class="glyphicon glyphicon-search" aria-hidden="true"></span>
  20. </button>
  21. </span>
  22. </div>
  23. </form>
  24. </div>
  25. </div>
  26. <div class="pull-right">
  27. {% if perms.ipam.change_vlan %}
  28. <a href="{% url 'ipam:vlan_edit' pk=vlan.pk %}" class="btn btn-warning">
  29. <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span>
  30. Edit this VLAN
  31. </a>
  32. {% endif %}
  33. {% if perms.ipam.delete_vlan %}
  34. <a href="{% url 'ipam:vlan_delete' pk=vlan.pk %}" class="btn btn-danger">
  35. <span class="glyphicon glyphicon-trash" aria-hidden="true"></span>
  36. Delete this VLAN
  37. </a>
  38. {% endif %}
  39. </div>
  40. <h1>VLAN {{ vlan.display_name }}</h1>
  41. <div class="row">
  42. <div class="col-md-6">
  43. <div class="panel panel-default">
  44. <div class="panel-heading">
  45. <strong>VLAN</strong>
  46. </div>
  47. <table class="table table-hover panel-body">
  48. <tr>
  49. <td>Site</td>
  50. <td><a href="{% url 'dcim:site' slug=vlan.site.slug %}">{{ vlan.site }}</a></td>
  51. </tr>
  52. <tr>
  53. <td>Group</td>
  54. <td>
  55. {% if vlan.group %}
  56. <a href="{{ vlan.group.get_absolute_url }}">{{ vlan.group.name }}</a>
  57. {% else %}
  58. <span class="text-muted">None</span>
  59. {% endif %}
  60. </td>
  61. </tr>
  62. <tr>
  63. <td>VLAN ID</td>
  64. <td>{{ vlan.vid }}</td>
  65. </tr>
  66. <tr>
  67. <td>Name</td>
  68. <td>{{ vlan.name }}</td>
  69. </tr>
  70. <tr>
  71. <td>Status</td>
  72. <td>
  73. <span class="label label-{{ vlan.get_status_class }}">{{ vlan.get_status_display }}</span>
  74. </td>
  75. </tr>
  76. <tr>
  77. <td>Role</td>
  78. <td>{{ vlan.role }}</td>
  79. </tr>
  80. <tr>
  81. <td>Created</td>
  82. <td>{{ vlan.created }}</td>
  83. </tr>
  84. <tr>
  85. <td>Last Updated</td>
  86. <td>{{ vlan.last_updated }}</td>
  87. </tr>
  88. </table>
  89. </div>
  90. </div>
  91. <div class="col-md-6">
  92. <div class="panel panel-default">
  93. <div class="panel-heading">
  94. <strong>Prefixes</strong>
  95. </div>
  96. {% if prefixes %}
  97. <table class="table table-hover panel-body">
  98. {% for p in prefixes %}
  99. <tr>
  100. <td>
  101. <a href="{% url 'ipam:prefix' pk=p.pk %}">{{ p }}</a>
  102. </td>
  103. <td>
  104. {% if p.site %}
  105. <a href="{% url 'dcim:site' slug=p.site.slug %}">{{ p.site }}</a>
  106. {% endif %}
  107. </td>
  108. <td>{{ p.get_status_display }}</td>
  109. <td>{{ p.role }}</td>
  110. </tr>
  111. {% endfor %}
  112. </table>
  113. {% else %}
  114. <div class="panel-body text-muted">None</div>
  115. {% endif %}
  116. </div>
  117. </div>
  118. </div>
  119. {% endblock %}