cluster.html 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117
  1. {% extends '_base.html' %}
  2. {% load helpers %}
  3. {% block content %}
  4. <div class="row" xmlns="http://www.w3.org/1999/html">
  5. <div class="col-sm-8 col-md-9">
  6. <ol class="breadcrumb">
  7. <li><a href="{{ cluster.type.get_absolute_url }}">{{ cluster.type }}</a></li>
  8. {% if cluster.group %}
  9. <li><a href="{{ cluster.group.get_absolute_url }}">{{ cluster.group }}</a></li>
  10. {% endif %}
  11. <li>{{ cluster }}</li>
  12. </ol>
  13. </div>
  14. <div class="col-sm-4 col-md-3">
  15. <form action="{% url 'virtualization:cluster_list' %}" method="get">
  16. <div class="input-group">
  17. <input type="text" name="q" class="form-control" placeholder="Search clusters" />
  18. <span class="input-group-btn">
  19. <button type="submit" class="btn btn-primary">
  20. <span class="fa fa-search" aria-hidden="true"></span>
  21. </button>
  22. </span>
  23. </div>
  24. </form>
  25. </div>
  26. </div>
  27. <div class="pull-right">
  28. {% if perms.virtualization.change_cluster %}
  29. <a href="{% url 'virtualization:cluster_edit' pk=cluster.pk %}" class="btn btn-warning">
  30. <span class="fa fa-pencil" aria-hidden="true"></span>
  31. Edit this cluster
  32. </a>
  33. {% endif %}
  34. {% if perms.dcim.delete_cluster %}
  35. <a href="{% url 'virtualization:cluster_delete' pk=cluster.pk %}" class="btn btn-danger">
  36. <span class="fa fa-trash" aria-hidden="true"></span>
  37. Delete this cluster
  38. </a>
  39. {% endif %}
  40. </div>
  41. <h1>{% block title %}{{ cluster }}{% endblock %}</h1>
  42. {% include 'inc/created_updated.html' with obj=cluster %}
  43. <div class="row">
  44. <div class="col-md-5">
  45. <div class="panel panel-default">
  46. <div class="panel-heading">
  47. <strong>Cluster</strong>
  48. </div>
  49. <table class="table table-hover panel-body attr-table">
  50. <tr>
  51. <td>Name</td>
  52. <td>{{ cluster.name }}</td>
  53. </tr>
  54. <tr>
  55. <td>Type</td>
  56. <td><a href="{{ cluster.type.get_absolute_url }}">{{ cluster.type }}</a></td>
  57. </tr>
  58. <tr>
  59. <td>Group</td>
  60. <td>
  61. {% if cluster.group %}
  62. <a href="{{ cluster.group.get_absolute_url }}">{{ cluster.group }}</a>
  63. {% else %}
  64. <span class="text-muted">None</span>
  65. {% endif %}
  66. </td>
  67. </tr>
  68. <tr>
  69. <td>Virtual Machines</td>
  70. <td><a href="{% url 'virtualization:virtualmachine_list' %}?cluster={{ cluster.pk }}">{{ cluster.virtual_machines.count }}</a></td>
  71. </tr>
  72. </table>
  73. </div>
  74. {% include 'inc/custom_fields_panel.html' with custom_fields=cluster.get_custom_fields %}
  75. <div class="panel panel-default">
  76. <div class="panel-heading">
  77. <strong>Comments</strong>
  78. </div>
  79. <div class="panel-body">
  80. {% if cluster.comments %}
  81. {{ cluster.comments|gfm }}
  82. {% else %}
  83. <span class="text-muted">None</span>
  84. {% endif %}
  85. </div>
  86. </div>
  87. </div>
  88. <div class="col-md-7">
  89. <div class="panel panel-default">
  90. <div class="panel-heading">
  91. <strong>Host Devices</strong>
  92. </div>
  93. {% if perms.virtualization.change_cluster %}
  94. <form action="{% url 'virtualization:cluster_remove_devices' pk=cluster.pk %}" method="post">
  95. {% csrf_token %}
  96. {% endif %}
  97. {% include 'responsive_table.html' with table=device_table %}
  98. {% if perms.virtualization.change_cluster %}
  99. <div class="panel-footer">
  100. <div class="pull-right">
  101. <a href="{% url 'virtualization:cluster_add_devices' pk=cluster.pk %}" class="btn btn-primary btn-xs">
  102. <span class="glyphicon glyphicon-plus" aria-hidden="true"></span>
  103. Add devices
  104. </a>
  105. </div>
  106. <button type="submit" name="_remove" class="btn btn-danger primary btn-xs">
  107. <span class="glyphicon glyphicon-trash" aria-hidden="true"></span>
  108. Remove devices
  109. </button>
  110. </div>
  111. </form>
  112. {% endif %}
  113. </div>
  114. </div>
  115. </div>
  116. {% endblock %}