virtualchassis_edit.html 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106
  1. {% extends 'base/layout.html' %}
  2. {% load helpers %}
  3. {% load form_helpers %}
  4. {% block title %}Editing Virtual Chassis {{ vc_form.instance }}{% endblock %}
  5. {% block content-wrapper %}
  6. <div class="tab-content">
  7. <div class="tab-pane show active" id="edit-form" role="tabpanel" aria-labelledby="object-list-tab">
  8. <form action="" method="post" enctype="multipart/form-data" class="form-object-edit">
  9. {% csrf_token %}
  10. {{ pk_form.pk }}
  11. {{ formset.management_form }}
  12. <div class="field-group my-5">
  13. <div class="row mb-2">
  14. <h5 class="offset-sm-3">Virtual Chassis</h5>
  15. </div>
  16. {% render_field vc_form.name %}
  17. {% render_field vc_form.domain %}
  18. {% render_field vc_form.description %}
  19. {% render_field vc_form.master %}
  20. {% render_field vc_form.tags %}
  21. </div>
  22. <div class="field-group my-5">
  23. <h5 class="text-center">Comments</h5>
  24. {% render_field vc_form.comments %}
  25. </div>
  26. {% if vc_form.custom_fields %}
  27. <div class="field-group mb-5">
  28. <div class="row mb-2">
  29. <h5 class="offset-sm-3">Custom Fields</h5>
  30. </div>
  31. {% render_custom_fields vc_form %}
  32. </div>
  33. {% endif %}
  34. <div class="field-group mb-5">
  35. <h5 class="text-center">Members</h5>
  36. <table class="table">
  37. <thead>
  38. <tr>
  39. <th>Device</th>
  40. <th>ID</th>
  41. <th>Rack/Unit</th>
  42. <th>Serial</th>
  43. <th>Position</th>
  44. <th>Priority</th>
  45. <th></th>
  46. </tr>
  47. </thead>
  48. <tbody>
  49. {% for form in formset %}
  50. {% for field in form.hidden_fields %}
  51. {{ field }}
  52. {% endfor %}
  53. {% with device=form.instance virtual_chassis=vc_form.instance %}
  54. <tr>
  55. <td>{{ device|linkify }}</td>
  56. <td>{{ device.pk }}</td>
  57. <td>
  58. {% if device.rack %}
  59. {{ device.rack }} / {{ device.position|floatformat }}
  60. {% else %}
  61. {{ ''|placeholder }}
  62. {% endif %}
  63. </td>
  64. <td>{{ device.serial|placeholder }}</td>
  65. <td>
  66. {{ form.vc_position }}
  67. {% if form.vc_position.errors %}
  68. <br /><small class="text-danger">{{ form.vc_position.errors.0 }}</small>
  69. {% endif %}
  70. </td>
  71. <td>
  72. {{ form.vc_priority }}
  73. {% if form.vc_priority.errors %}
  74. <br /><small class="text-danger">{{ form.vc_priority.errors.0 }}</small>
  75. {% endif %}
  76. </td>
  77. <td>
  78. {% if virtual_chassis.pk %}
  79. <a href="{% url 'dcim:virtualchassis_remove_member' pk=device.pk %}?return_url={% url 'dcim:virtualchassis_edit' pk=virtual_chassis.pk %}" class="btn btn-danger btn-sm{% if virtual_chassis.master == device %} disabled{% endif %}">
  80. <span class="mdi mdi-trash-can-outline" aria-hidden="true"></span>
  81. </a>
  82. {% endif %}
  83. </td>
  84. </tr>
  85. {% endwith %}
  86. {% endfor %}
  87. </tbody>
  88. </table>
  89. </div>
  90. <div class="text-end">
  91. <a href="{{ return_url }}" class="btn btn-outline-danger">Cancel</a>
  92. {% if vc_form.instance.pk %}
  93. <button type="submit" name="_update" class="btn btn-primary">Save</button>
  94. {% else %}
  95. <button type="submit" name="_create" class="btn btn-primary">Create</button>
  96. {% endif %}
  97. </div>
  98. </form>
  99. </div>
  100. </div>
  101. {% endblock %}