tenant.html 6.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120
  1. {% extends 'generic/object.html' %}
  2. {% load helpers %}
  3. {% load plugins %}
  4. {% block breadcrumbs %}
  5. {{ block.super }}
  6. {% if object.group %}
  7. <li class="breadcrumb-item"><a href="{% url 'tenancy:tenant_list' %}?group_id={{ object.group.pk }}">{{ object.group }}</a></li>
  8. {% endif %}
  9. {% endblock breadcrumbs %}
  10. {% block content %}
  11. <div class="row">
  12. <div class="col col-md-7">
  13. <div class="card">
  14. <h5 class="card-header">
  15. Tenant
  16. </h5>
  17. <div class="card-body">
  18. <table class="table table-hover attr-table">
  19. <tr>
  20. <td>Group</td>
  21. <td>
  22. {% if object.group %}
  23. <a href="{{ object.group.get_absolute_url }}">{{ object.group }}</a>
  24. {% else %}
  25. <span class="text-muted">None</span>
  26. {% endif %}
  27. </td>
  28. </tr>
  29. <tr>
  30. <td>Description</td>
  31. <td>{{ object.description|placeholder }}</td>
  32. </tr>
  33. </table>
  34. </div>
  35. </div>
  36. {% include 'inc/panels/custom_fields.html' %}
  37. {% include 'inc/panels/tags.html' %}
  38. {% include 'inc/panels/comments.html' %}
  39. {% include 'inc/panels/contacts.html' %}
  40. {% plugin_left_page object %}
  41. </div>
  42. <div class="col col-md-5">
  43. <div class="card">
  44. <h5 class="card-header">
  45. Stats
  46. </h5>
  47. <div class="row card-body">
  48. <div class="col col-md-4 text-center">
  49. <h2><a href="{% url 'dcim:site_list' %}?tenant_id={{ object.pk }}" class="stat-btn btn {% if stats.site_count %}btn-primary{% else %}btn-outline-dark{% endif %} btn-lg">{{ stats.site_count }}</a></h2>
  50. <p>Sites</p>
  51. </div>
  52. <div class="col col-md-4 text-center">
  53. <h2><a href="{% url 'dcim:rack_list' %}?tenant_id={{ object.pk }}" class="stat-btn btn {% if stats.rack_count %}btn-primary{% else %}btn-outline-dark{% endif %} btn-lg">{{ stats.rack_count }}</a></h2>
  54. <p>Racks</p>
  55. </div>
  56. <div class="col col-md-4 text-center">
  57. <h2><a href="{% url 'dcim:rackreservation_list' %}?tenant_id={{ object.pk }}" class="stat-btn btn {% if stats.rackreservation_count %}btn-primary{% else %}btn-outline-dark{% endif %} btn-lg">{{ stats.rackreservation_count }}</a></h2>
  58. <p>Rack reservations</p>
  59. </div>
  60. <div class="col col-md-4 text-center">
  61. <h2><a href="{% url 'dcim:location_list' %}?tenant_id={{ object.pk }}" class="stat-btn btn {% if stats.location_count %}btn-primary{% else %}btn-outline-dark{% endif %} btn-lg">{{ stats.location_count }}</a></h2>
  62. <p>Locations</p>
  63. </div>
  64. <div class="col col-md-4 text-center">
  65. <h2><a href="{% url 'dcim:device_list' %}?tenant_id={{ object.pk }}" class="stat-btn btn {% if stats.device_count %}btn-primary{% else %}btn-outline-dark{% endif %} btn-lg">{{ stats.device_count }}</a></h2>
  66. <p>Devices</p>
  67. </div>
  68. <div class="col col-md-4 text-center">
  69. <h2><a href="{% url 'ipam:vrf_list' %}?tenant_id={{ object.pk }}" class="stat-btn btn {% if stats.vrf_count %}btn-primary{% else %}btn-outline-dark{% endif %} btn-lg">{{ stats.vrf_count }}</a></h2>
  70. <p>VRFs</p>
  71. </div>
  72. <div class="col col-md-4 text-center">
  73. <h2><a href="{% url 'ipam:aggregate_list' %}?tenant_id={{ object.pk }}" class="stat-btn btn {% if stats.aggregate_count %}btn-primary{% else %}btn-outline-dark{% endif %} btn-lg">{{ stats.aggregate_count }}</a></h2>
  74. <p>Aggregates</p>
  75. </div>
  76. <div class="col col-md-4 text-center">
  77. <h2><a href="{% url 'ipam:asn_list' %}?tenant_id={{ object.pk }}" class="stat-btn btn {% if stats.asn_count %}btn-primary{% else %}btn-outline-dark{% endif %} btn-lg">{{ stats.asn_count }}</a></h2>
  78. <p>ASNs</p>
  79. </div>
  80. <div class="col col-md-4 text-center">
  81. <h2><a href="{% url 'ipam:prefix_list' %}?tenant_id={{ object.pk }}" class="stat-btn btn {% if stats.prefix_count %}btn-primary{% else %}btn-outline-dark{% endif %} btn-lg">{{ stats.prefix_count }}</a></h2>
  82. <p>Prefixes</p>
  83. </div>
  84. <div class="col col-md-4 text-center">
  85. <h2><a href="{% url 'ipam:ipaddress_list' %}?tenant_id={{ object.pk }}" class="stat-btn btn {% if stats.ipaddress_count %}btn-primary{% else %}btn-outline-dark{% endif %} btn-lg">{{ stats.ipaddress_count }}</a></h2>
  86. <p>IP addresses</p>
  87. </div>
  88. <div class="col col-md-4 text-center">
  89. <h2><a href="{% url 'ipam:vlan_list' %}?tenant_id={{ object.pk }}" class="stat-btn btn {% if stats.vlan_count %}btn-primary{% else %}btn-outline-dark{% endif %} btn-lg">{{ stats.vlan_count }}</a></h2>
  90. <p>VLANs</p>
  91. </div>
  92. <div class="col col-md-4 text-center">
  93. <h2><a href="{% url 'circuits:circuit_list' %}?tenant_id={{ object.pk }}" class="stat-btn btn {% if stats.circuit_count %}btn-primary{% else %}btn-outline-dark{% endif %} btn-lg">{{ stats.circuit_count }}</a></h2>
  94. <p>Circuits</p>
  95. </div>
  96. <div class="col col-md-4 text-center">
  97. <h2><a href="{% url 'virtualization:virtualmachine_list' %}?tenant_id={{ object.pk }}" class="stat-btn btn {% if stats.virtualmachine_count %}btn-primary{% else %}btn-outline-dark{% endif %} btn-lg">{{ stats.virtualmachine_count }}</a></h2>
  98. <p>Virtual machines</p>
  99. </div>
  100. <div class="col col-md-4 text-center">
  101. <h2><a href="{% url 'virtualization:cluster_list' %}?tenant_id={{ object.pk }}" class="stat-btn btn {% if stats.cluster_count %}btn-primary{% else %}btn-outline-dark{% endif %} btn-lg">{{ stats.cluster_count }}</a></h2>
  102. <p>Clusters</p>
  103. </div>
  104. <div class="col col-md-4 text-center">
  105. <h2><a href="{% url 'dcim:cable_list' %}?tenant_id={{ object.pk }}" class="stat-btn btn {% if stats.cable_count %}btn-primary{% else %}btn-outline-dark{% endif %} btn-lg">{{ stats.cable_count }}</a></h2>
  106. <p>Cables</p>
  107. </div>
  108. </div>
  109. </div>
  110. {% plugin_right_page object %}
  111. </div>
  112. </div>
  113. <div class="row">
  114. <div class="col col-md-12">
  115. {% plugin_full_width_page object %}
  116. </div>
  117. </div>
  118. {% endblock %}