interface_edit.html 3.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. {% extends 'utilities/obj_edit.html' %}
  2. {% load form_helpers %}
  3. {% block form %}
  4. <div class="panel panel-default">
  5. <div class="panel-heading"><strong>Interface</strong></div>
  6. <div class="panel-body">
  7. {% render_field form.name %}
  8. {% render_field form.form_factor %}
  9. {% render_field form.enabled %}
  10. {% render_field form.lag %}
  11. {% render_field form.mac_address %}
  12. {% render_field form.mtu %}
  13. {% render_field form.mgmt_only %}
  14. {% render_field form.description %}
  15. {% render_field form.mode %}
  16. </div>
  17. </div>
  18. {% with interface=form.instance %}
  19. {% if interface.mode %}
  20. <div class="panel panel-default">
  21. <div class="panel-heading"><strong>802.1Q VLANs</strong></div>
  22. <table class="table panel-body">
  23. <tr>
  24. <th>VID</th>
  25. <th>Name</th>
  26. <th>Untagged</th>
  27. <th>Tagged</th>
  28. </tr>
  29. {% if interface.untagged_vlan %}
  30. <tr>
  31. <td>{{ interface.untagged_vlan.vid }}</td>
  32. <td>{{ interface.untagged_vlan.name }}</td>
  33. <td>
  34. <input type="radio" name="untagged_vlan" value="{{ interface.untagged_vlan.pk }}" checked="true" />
  35. </td>
  36. <td>
  37. <input type="checkbox" name="tagged_vlans" value="{{ interface.untagged_vlan.pk }}" />
  38. </td>
  39. </tr>
  40. {% endif %}
  41. {% for vlan in interface.tagged_vlans.all %}
  42. <tr>
  43. <td>{{ vlan.vid }}</td>
  44. <td>{{ vlan.name }}</td>
  45. <td>
  46. <input type="radio" name="untagged_vlan" value="{{ vlan.pk }}" />
  47. </td>
  48. <td>
  49. <input type="checkbox" name="tagged_vlans" value="{{ vlan.pk }}" checked="true" />
  50. </td>
  51. </tr>
  52. {% endfor %}
  53. {% if not interface.untagged_vlan and not interface.tagged_vlans.exists %}
  54. <tr>
  55. <td colspan="4">
  56. <span class="text-muted">No VLANs assigned</span>
  57. </td>
  58. </tr>
  59. {% endif %}
  60. </table>
  61. <div class="panel-footer text-right">
  62. <a href="{% url 'dcim:interface_assign_vlans' pk=interface.pk %}?return_url={% url 'dcim:interface_edit' pk=interface.pk %}" class="btn btn-primary btn-xs">
  63. <i class="glyphicon glyphicon-plus"></i> Add VLANs
  64. </a>
  65. </div>
  66. </div>
  67. {% endif %}
  68. {% endwith %}
  69. {% endblock %}