vrf.html 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. {% extends '_base.html' %}
  2. {% load helpers %}
  3. {% block header %}
  4. <div class="row">
  5. <div class="col-sm-8 col-md-9">
  6. <ol class="breadcrumb">
  7. <li><a href="{% url 'ipam:vrf_list' %}">VRFs</a></li>
  8. <li>{{ vrf }}</li>
  9. </ol>
  10. </div>
  11. <div class="col-sm-4 col-md-3">
  12. <form action="{% url 'ipam:vrf_list' %}" method="get">
  13. <div class="input-group">
  14. <input type="text" name="q" class="form-control" placeholder="Search VRFs" />
  15. <span class="input-group-btn">
  16. <button type="submit" class="btn btn-primary">
  17. <span class="fa fa-search" aria-hidden="true"></span>
  18. </button>
  19. </span>
  20. </div>
  21. </form>
  22. </div>
  23. </div>
  24. <div class="pull-right">
  25. {% if perms.ipam.change_vrf %}
  26. <a href="{% url 'ipam:vrf_edit' pk=vrf.pk %}" class="btn btn-warning">
  27. <span class="fa fa-pencil" aria-hidden="true"></span>
  28. Edit this VRF
  29. </a>
  30. {% endif %}
  31. {% if perms.ipam.delete_vrf %}
  32. <a href="{% url 'ipam:vrf_delete' pk=vrf.pk %}" class="btn btn-danger">
  33. <span class="fa fa-trash" aria-hidden="true"></span>
  34. Delete this VRF
  35. </a>
  36. {% endif %}
  37. </div>
  38. <h1>{% block title %}VRF {{ vrf }}{% endblock %}</h1>
  39. {% include 'inc/created_updated.html' with obj=vrf %}
  40. <ul class="nav nav-tabs">
  41. <li role="presentation"{% if not active_tab %} class="active"{% endif %}>
  42. <a href="{{ vrf.get_absolute_url }}">VRF</a>
  43. </li>
  44. <li role="presentation"{% if active_tab == 'changelog' %} class="active"{% endif %}>
  45. <a href="{% url 'ipam:vrf_changelog' pk=vrf.pk %}">Changelog</a>
  46. </li>
  47. </ul>
  48. {% endblock %}
  49. {% block content %}
  50. <div class="row">
  51. <div class="col-md-6">
  52. <div class="panel panel-default">
  53. <div class="panel-heading">
  54. <strong>VRF</strong>
  55. </div>
  56. <table class="table table-hover panel-body attr-table">
  57. <tr>
  58. <td>Route Distinguisher</td>
  59. <td>{{ vrf.rd }}</td>
  60. </tr>
  61. <tr>
  62. <td>Tenant</td>
  63. <td>
  64. {% if vrf.tenant %}
  65. <a href="{{ vrf.tenant.get_absolute_url }}">{{ vrf.tenant }}</a>
  66. {% else %}
  67. <span class="text-muted">None</span>
  68. {% endif %}
  69. </td>
  70. </tr>
  71. <tr>
  72. <td>Unique IP Space</td>
  73. <td>
  74. {% if vrf.enforce_unique %}
  75. <i class="glyphicon glyphicon-ok text-success" title="Yes"></i>
  76. {% else %}
  77. <i class="glyphicon glyphicon-remove text-danger" title="No"></i>
  78. {% endif %}
  79. </td>
  80. </tr>
  81. <tr>
  82. <td>Description</td>
  83. <td>{{ vrf.description|placeholder }}</td>
  84. </tr>
  85. <tr>
  86. <td>Prefixes</td>
  87. <td>
  88. <a href="{% url 'ipam:prefix_list' %}?vrf={{ vrf.rd }}">{{ prefix_count }}</a>
  89. </td>
  90. </tr>
  91. </table>
  92. </div>
  93. {% include 'extras/inc/tags_panel.html' with tags=vrf.tags.all url='ipam:vrf_list' %}
  94. </div>
  95. <div class="col-md-6">
  96. {% include 'inc/custom_fields_panel.html' with obj=vrf %}
  97. </div>
  98. </div>
  99. {% endblock %}