tenant.html 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127
  1. {% extends '_base.html' %}
  2. {% load helpers %}
  3. {% block title %}{{ tenant }}{% endblock %}
  4. {% block content %}
  5. <div class="row">
  6. <div class="col-md-9">
  7. <ol class="breadcrumb">
  8. <li><a href="{% url 'tenancy:tenant_list' %}">Tenants</a></li>
  9. <li><a href="{% url 'tenancy:tenant_list' %}?group={{ tenant.group.slug }}">{{ tenant.group }}</a></li>
  10. <li>{{ tenant }}</li>
  11. </ol>
  12. </div>
  13. <div class="col-md-3">
  14. <form action="{% url 'tenancy:tenant_list' %}" method="get">
  15. <div class="input-group">
  16. <input type="text" name="q" class="form-control" placeholder="Name" />
  17. <span class="input-group-btn">
  18. <button type="submit" class="btn btn-primary">
  19. <span class="fa fa-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.tenancy.change_tenant %}
  28. <a href="{% url 'tenancy:tenant_edit' slug=tenant.slug %}" class="btn btn-warning">
  29. <span class="fa fa-pencil" aria-hidden="true"></span>
  30. Edit this tenant
  31. </a>
  32. {% endif %}
  33. {% if perms.tenancy.delete_tenant %}
  34. <a href="{% url 'tenancy:tenant_delete' slug=tenant.slug %}" class="btn btn-danger">
  35. <span class="fa fa-trash" aria-hidden="true"></span>
  36. Delete this tenant
  37. </a>
  38. {% endif %}
  39. </div>
  40. <h1>{{ tenant }}</h1>
  41. <div class="row">
  42. <div class="col-md-7">
  43. <div class="panel panel-default">
  44. <div class="panel-heading">
  45. <strong>Tenant</strong>
  46. </div>
  47. <table class="table table-hover panel-body">
  48. <tr>
  49. <td>Group</td>
  50. <td>
  51. <a href="{{ tenant.group.get_absolute_url }}">{{ tenant.group }}</a>
  52. </td>
  53. </tr>
  54. <tr>
  55. <td>Description</td>
  56. <td>
  57. {% if tenant.description %}
  58. {{ tenant.description }}
  59. {% else %}
  60. <span class="text-muted">N/A</span>
  61. {% endif %}
  62. </td>
  63. </tr>
  64. </table>
  65. </div>
  66. {% with tenant.get_custom_fields as custom_fields %}
  67. {% include 'inc/custom_fields_panel.html' %}
  68. {% endwith %}
  69. <div class="panel panel-default">
  70. <div class="panel-heading">
  71. <strong>Comments</strong>
  72. </div>
  73. <div class="panel-body">
  74. {% if tenant.comments %}
  75. {{ tenant.comments|gfm }}
  76. {% else %}
  77. <span class="text-muted">None</span>
  78. {% endif %}
  79. </div>
  80. </div>
  81. {% include 'inc/created_updated.html' with obj=tenant %}
  82. </div>
  83. <div class="col-md-5">
  84. <div class="panel panel-default">
  85. <div class="panel-heading">
  86. <strong>Stats</strong>
  87. </div>
  88. <div class="row panel-body">
  89. <div class="col-md-4 text-center">
  90. <h2><a href="{% url 'dcim:site_list' %}?tenant={{ tenant.slug }}" class="btn {% if stats.site_count %}btn-primary{% else %}btn-default{% endif %} btn-lg">{{ stats.site_count }}</a></h2>
  91. <p>Sites</p>
  92. </div>
  93. <div class="col-md-4 text-center">
  94. <h2><a href="{% url 'dcim:rack_list' %}?tenant={{ tenant.slug }}" class="btn {% if stats.rack_count %}btn-primary{% else %}btn-default{% endif %} btn-lg">{{ stats.rack_count }}</a></h2>
  95. <p>Racks</p>
  96. </div>
  97. <div class="col-md-4 text-center">
  98. <h2><a href="{% url 'dcim:device_list' %}?tenant={{ tenant.slug }}" class="btn {% if stats.device_count %}btn-primary{% else %}btn-default{% endif %} btn-lg">{{ stats.device_count }}</a></h2>
  99. <p>Devices</p>
  100. </div>
  101. <div class="col-md-4 text-center">
  102. <h2><a href="{% url 'ipam:vrf_list' %}?tenant={{ tenant.slug }}" class="btn {% if stats.vrf_count %}btn-primary{% else %}btn-default{% endif %} btn-lg">{{ stats.vrf_count }}</a></h2>
  103. <p>VRFs</p>
  104. </div>
  105. <div class="col-md-4 text-center">
  106. <h2><a href="{% url 'ipam:prefix_list' %}?tenant={{ tenant.slug }}" class="btn {% if stats.prefix_count %}btn-primary{% else %}btn-default{% endif %} btn-lg">{{ stats.prefix_count }}</a></h2>
  107. <p>Prefixes</p>
  108. </div>
  109. <div class="col-md-4 text-center">
  110. <h2><a href="{% url 'ipam:ipaddress_list' %}?tenant={{ tenant.slug }}" class="btn {% if stats.ipaddress_count %}btn-primary{% else %}btn-default{% endif %} btn-lg">{{ stats.ipaddress_count }}</a></h2>
  111. <p>IP addresses</p>
  112. </div>
  113. <div class="col-md-4 text-center">
  114. <h2><a href="{% url 'ipam:vlan_list' %}?tenant={{ tenant.slug }}" class="btn {% if stats.vlan_count %}btn-primary{% else %}btn-default{% endif %} btn-lg">{{ stats.vlan_count }}</a></h2>
  115. <p>VLANs</p>
  116. </div>
  117. <div class="col-md-4 text-center">
  118. <h2><a href="{% url 'circuits:circuit_list' %}?tenant={{ tenant.slug }}" class="btn {% if stats.circuit_count %}btn-primary{% else %}btn-default{% endif %} btn-lg">{{ stats.circuit_count }}</a></h2>
  119. <p>Circuits</p>
  120. </div>
  121. </div>
  122. </div>
  123. </div>
  124. </div>
  125. {% endblock %}