prefix.html 3.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. {% extends '_base.html' %}
  2. {% load render_table from django_tables2 %}
  3. {% block title %}{{ prefix }}{% endblock %}
  4. {% block content %}
  5. {% include 'ipam/inc/prefix_header.html' with active_tab='prefix' %}
  6. <div class="row">
  7. <div class="col-md-5">
  8. <div class="panel panel-default">
  9. <div class="panel-heading">
  10. <strong>Details</strong>
  11. </div>
  12. <table class="table table-hover panel-body">
  13. <tr>
  14. <td>Family</td>
  15. <td>{{ prefix.get_family_display }}</td>
  16. </tr>
  17. <tr>
  18. <td>Aggregate</td>
  19. <td>
  20. {% if aggregate %}
  21. <a href="{% url 'ipam:aggregate' pk=aggregate.pk %}">{{ aggregate.prefix }}</a> ({{ aggregate.rir }})
  22. {% else %}
  23. <span class="text-warning">None</span>
  24. {% endif %}
  25. </td>
  26. </tr>
  27. <tr>
  28. <td>Site</td>
  29. <td>
  30. {% if prefix.site %}
  31. <a href="{% url 'dcim:site' slug=prefix.site.slug %}">{{ prefix.site }}</a>
  32. {% else %}
  33. <span class="text-muted">Not assigned</span>
  34. {% endif %}
  35. </td>
  36. </tr>
  37. <tr>
  38. <td>VLAN</td>
  39. <td>
  40. {% if prefix.vlan %}
  41. <a href="{% url 'ipam:vlan' pk=prefix.vlan.pk %}">{{ prefix.vlan.name }} ({{ prefix.vlan.vid }})</a>
  42. {% else %}
  43. <span class="text-muted">Not assigned</span>
  44. {% endif %}
  45. </td>
  46. </tr>
  47. <tr>
  48. <td>Status</td>
  49. <td>
  50. <span class="label label-{{ prefix.status.get_bootstrap_class_display|lower }}">{{ prefix.status }}</span>
  51. </td>
  52. </tr>
  53. <tr>
  54. <td>Role</td>
  55. <td>{{ prefix.role }}</td>
  56. </tr>
  57. <tr>
  58. <td>Description</td>
  59. <td>
  60. {% if prefix.description %}
  61. <span>{{ prefix.description }}</span>
  62. {% else %}
  63. <span class="text-muted">None</span>
  64. {% endif %}
  65. </td>
  66. </tr>
  67. <tr>
  68. <td>IP Addresses</td>
  69. <td><a href="{% url 'ipam:prefix_ipaddresses' pk=prefix.pk %}">{{ ipaddress_count }}</a></td>
  70. </tr>
  71. </table>
  72. </div>
  73. </div>
  74. <div class="col-md-7">
  75. {% if duplicate_prefix_table.rows %}
  76. {% with heading='Duplicate Prefixes' panel_class='danger' %}
  77. {% render_table duplicate_prefix_table 'panel_table.html' %}
  78. {% endwith %}
  79. {% endif %}
  80. {% with heading='Parent Prefixes' %}
  81. {% render_table parent_prefix_table 'panel_table.html' %}
  82. {% endwith %}
  83. </div>
  84. </div>
  85. <div class="row">
  86. <div class="col-md-12">
  87. {% if child_prefix_table.rows %}
  88. {% include 'ipam/inc/prefix_table.html' with table=child_prefix_table table_template='panel_table.html' heading='Child Prefixes' parent=prefix %}
  89. {% elif prefix.new_subnet %}
  90. <a href="{% url 'ipam:prefix_add' %}?prefix={{ prefix.new_subnet }}{% if prefix.vrf %}&vrf={{ prefix.vrf.pk }}{% endif %}{% if prefix.site %}&site={{ prefix.site.pk }}{% endif %}" class="btn btn-success">
  91. <i class="glyphicon glyphicon-plus" aria-hidden="true"></i> Add Child Prefix
  92. </a>
  93. {% endif %}
  94. </div>
  95. </div>
  96. {% endblock %}