|
|
@@ -326,34 +326,79 @@
|
|
|
{% plugin_left_page device %}
|
|
|
</div>
|
|
|
<div class="col-md-6">
|
|
|
- {% if console_ports or power_ports %}
|
|
|
- <div class="panel panel-default">
|
|
|
- <div class="panel-heading">
|
|
|
- <strong>Console / Power</strong>
|
|
|
+ {% if console_ports %}
|
|
|
+ <form method="post">
|
|
|
+ {% csrf_token %}
|
|
|
+ <div class="panel panel-default">
|
|
|
+ <div class="panel-heading">
|
|
|
+ <strong>Console Ports</strong>
|
|
|
+ </div>
|
|
|
+ <table class="table table-hover panel-body component-list">
|
|
|
+ {% for cp in console_ports %}
|
|
|
+ {% include 'dcim/inc/consoleport.html' %}
|
|
|
+ {% endfor %}
|
|
|
+ </table>
|
|
|
+ <div class="panel-footer noprint">
|
|
|
+ {% if console_ports and perms.dcim.change_consoleport %}
|
|
|
+ <button type="submit" name="_rename" formaction="{% url 'dcim:consoleport_bulk_rename' %}?return_url={{ device.get_absolute_url }}" class="btn btn-warning btn-xs">
|
|
|
+ <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Rename
|
|
|
+ </button>
|
|
|
+ <button type="submit" name="_edit" formaction="{% url 'dcim:consoleport_bulk_edit' %}?device={{ device.pk }}&return_url={{ device.get_absolute_url }}" class="btn btn-warning btn-xs">
|
|
|
+ <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Edit
|
|
|
+ </button>
|
|
|
+ {% endif %}
|
|
|
+ {% if console_ports and perms.dcim.delete_consoleport %}
|
|
|
+ <button type="submit" name="_delete" formaction="{% url 'dcim:consoleport_bulk_delete' %}?return_url={{ device.get_absolute_url }}" class="btn btn-danger btn-xs">
|
|
|
+ <span class="glyphicon glyphicon-trash" aria-hidden="true"></span> Delete
|
|
|
+ </button>
|
|
|
+ {% endif %}
|
|
|
+ {% if console_ports and perms.dcim.change_consoleport %}
|
|
|
+ <div class="pull-right">
|
|
|
+ <a href="{% url 'dcim:consoleport_add' %}?device={{ device.pk }}&return_url={{ device.get_absolute_url }}" class="btn btn-xs btn-primary">
|
|
|
+ <span class="glyphicon glyphicon-plus" aria-hidden="true"></span> Add console port
|
|
|
+ </a>
|
|
|
+ </div>
|
|
|
+ {% endif %}
|
|
|
+ </div>
|
|
|
</div>
|
|
|
- <table class="table table-hover panel-body component-list">
|
|
|
- {% for cp in console_ports %}
|
|
|
- {% include 'dcim/inc/consoleport.html' %}
|
|
|
- {% endfor %}
|
|
|
- {% for pp in power_ports %}
|
|
|
- {% include 'dcim/inc/powerport.html' %}
|
|
|
- {% endfor %}
|
|
|
- </table>
|
|
|
- {% if perms.dcim.add_interface or perms.dcim.add_consoleport or perms.dcim.add_powerport %}
|
|
|
- <div class="panel-footer text-right noprint">
|
|
|
- {% if perms.dcim.add_consoleport %}
|
|
|
- <a href="{% url 'dcim:consoleport_add' %}?device={{ device.pk }}&return_url={{ device.get_absolute_url }}" class="btn btn-xs btn-primary">
|
|
|
- <span class="glyphicon glyphicon-plus" aria-hidden="true"></span> Add console port
|
|
|
- </a>
|
|
|
+ </form>
|
|
|
+ {% endif %}
|
|
|
+ {% if power_ports %}
|
|
|
+ <form method="post">
|
|
|
+ {% csrf_token %}
|
|
|
+ <div class="panel panel-default">
|
|
|
+ <div class="panel-heading">
|
|
|
+ <strong>Power Ports</strong>
|
|
|
+ </div>
|
|
|
+ <table class="table table-hover panel-body component-list">
|
|
|
+ {% for pp in power_ports %}
|
|
|
+ {% include 'dcim/inc/powerport.html' %}
|
|
|
+ {% endfor %}
|
|
|
+ </table>
|
|
|
+ <div class="panel-footer noprint">
|
|
|
+ {% if power_ports and perms.dcim.change_powerport %}
|
|
|
+ <button type="submit" name="_rename" formaction="{% url 'dcim:powerport_bulk_rename' %}?return_url={{ device.get_absolute_url }}" class="btn btn-warning btn-xs">
|
|
|
+ <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Rename
|
|
|
+ </button>
|
|
|
+ <button type="submit" name="_edit" formaction="{% url 'dcim:powerport_bulk_edit' %}?device={{ device.pk }}&return_url={{ device.get_absolute_url }}" class="btn btn-warning btn-xs">
|
|
|
+ <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Edit
|
|
|
+ </button>
|
|
|
{% endif %}
|
|
|
- {% if perms.dcim.add_powerport %}
|
|
|
- <a href="{% url 'dcim:powerport_add' %}?device={{ device.pk }}&return_url={{ device.get_absolute_url }}" class="btn btn-xs btn-primary">
|
|
|
- <span class="glyphicon glyphicon-plus" aria-hidden="true"></span> Add power port
|
|
|
- </a>
|
|
|
+ {% if power_ports and perms.dcim.delete_powerport %}
|
|
|
+ <button type="submit" name="_delete" formaction="{% url 'dcim:powerport_bulk_delete' %}?return_url={{ device.get_absolute_url }}" class="btn btn-danger btn-xs">
|
|
|
+ <span class="glyphicon glyphicon-trash" aria-hidden="true"></span> Delete
|
|
|
+ </button>
|
|
|
+ {% endif %}
|
|
|
+ {% if power_ports and perms.dcim.change_powerport %}
|
|
|
+ <div class="pull-right">
|
|
|
+ <a href="{% url 'dcim:powerport_add' %}?device={{ device.pk }}&return_url={{ device.get_absolute_url }}" class="btn btn-xs btn-primary">
|
|
|
+ <span class="glyphicon glyphicon-plus" aria-hidden="true"></span> Add power port
|
|
|
+ </a>
|
|
|
+ </div>
|
|
|
{% endif %}
|
|
|
</div>
|
|
|
- {% endif %}
|
|
|
- </div>
|
|
|
+ </div>
|
|
|
+ </form>
|
|
|
{% endif %}
|
|
|
{% if power_ports and poweroutlets %}
|
|
|
<div class="panel panel-default">
|
|
|
@@ -501,262 +546,242 @@
|
|
|
<div class="row">
|
|
|
<div class="col-md-12">
|
|
|
{% if device_bays or device.device_type.is_parent_device %}
|
|
|
- {% if perms.dcim.delete_devicebay %}
|
|
|
- <form method="post">
|
|
|
+ <form method="post">
|
|
|
{% csrf_token %}
|
|
|
- {% endif %}
|
|
|
- <div class="panel panel-default">
|
|
|
- <div class="panel-heading">
|
|
|
- <strong>Device Bays</strong>
|
|
|
- </div>
|
|
|
- <table class="table table-hover table-headings panel-body component-list">
|
|
|
- <thead>
|
|
|
- <tr>
|
|
|
- {% if perms.dcim.change_devicebay or perms.dcim.delete_devicebay %}
|
|
|
- <th class="pk"><input type="checkbox" class="toggle" title="Toggle all" /></th>
|
|
|
- {% endif %}
|
|
|
- <th>Name</th>
|
|
|
- <th>Status</th>
|
|
|
- <th>Description</th>
|
|
|
- <th colspan="2">Installed Device</th>
|
|
|
- <th></th>
|
|
|
- </tr>
|
|
|
- </thead>
|
|
|
- <tbody>
|
|
|
- {% for devicebay in device_bays %}
|
|
|
- {% include 'dcim/inc/devicebay.html' %}
|
|
|
- {% empty %}
|
|
|
+ <div class="panel panel-default">
|
|
|
+ <div class="panel-heading">
|
|
|
+ <strong>Device Bays</strong>
|
|
|
+ </div>
|
|
|
+ <table class="table table-hover table-headings panel-body component-list">
|
|
|
+ <thead>
|
|
|
<tr>
|
|
|
- <td colspan="5" class="text-center text-muted">— No device bays defined —</td>
|
|
|
+ {% if perms.dcim.change_devicebay or perms.dcim.delete_devicebay %}
|
|
|
+ <th class="pk"><input type="checkbox" class="toggle" title="Toggle all" /></th>
|
|
|
+ {% endif %}
|
|
|
+ <th>Name</th>
|
|
|
+ <th>Status</th>
|
|
|
+ <th>Description</th>
|
|
|
+ <th colspan="2">Installed Device</th>
|
|
|
+ <th></th>
|
|
|
</tr>
|
|
|
- {% endfor %}
|
|
|
- </tbody>
|
|
|
- </table>
|
|
|
- <div class="panel-footer noprint">
|
|
|
- {% if device_bays and perms.dcim.change_devicebay %}
|
|
|
- <button type="submit" name="_rename" formaction="{% url 'dcim:devicebay_bulk_rename' %}?return_url={{ device.get_absolute_url }}" class="btn btn-warning btn-xs">
|
|
|
- <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Rename
|
|
|
- </button>
|
|
|
- {% endif %}
|
|
|
- {% if device_bays and perms.dcim.delete_devicebay %}
|
|
|
- <button type="submit" formaction="{% url 'dcim:devicebay_bulk_delete' %}?return_url={{ device.get_absolute_url }}" class="btn btn-danger btn-xs">
|
|
|
- <span class="glyphicon glyphicon-trash" aria-hidden="true"></span> Delete selected
|
|
|
- </button>
|
|
|
- {% endif %}
|
|
|
- {% if perms.dcim.add_devicebay %}
|
|
|
- <div class="pull-right">
|
|
|
- <a href="{% url 'dcim:devicebay_add' %}?device={{ device.pk }}&return_url={{ device.get_absolute_url }}" class="btn btn-primary btn-xs">
|
|
|
- <span class="glyphicon glyphicon-plus" aria-hidden="true"></span> Add device bays
|
|
|
- </a>
|
|
|
- </div>
|
|
|
- <div class="clearfix"></div>
|
|
|
- {% endif %}
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- {% if perms.dcim.delete_devicebay %}
|
|
|
- </form>
|
|
|
- {% endif %}
|
|
|
+ </thead>
|
|
|
+ <tbody>
|
|
|
+ {% for devicebay in device_bays %}
|
|
|
+ {% include 'dcim/inc/devicebay.html' %}
|
|
|
+ {% empty %}
|
|
|
+ <tr>
|
|
|
+ <td colspan="5" class="text-center text-muted">— No device bays defined —</td>
|
|
|
+ </tr>
|
|
|
+ {% endfor %}
|
|
|
+ </tbody>
|
|
|
+ </table>
|
|
|
+ <div class="panel-footer noprint">
|
|
|
+ {% if device_bays and perms.dcim.change_devicebay %}
|
|
|
+ <button type="submit" name="_rename" formaction="{% url 'dcim:devicebay_bulk_rename' %}?return_url={{ device.get_absolute_url }}" class="btn btn-warning btn-xs">
|
|
|
+ <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Rename
|
|
|
+ </button>
|
|
|
+ {% endif %}
|
|
|
+ {% if device_bays and perms.dcim.delete_devicebay %}
|
|
|
+ <button type="submit" formaction="{% url 'dcim:devicebay_bulk_delete' %}?return_url={{ device.get_absolute_url }}" class="btn btn-danger btn-xs">
|
|
|
+ <span class="glyphicon glyphicon-trash" aria-hidden="true"></span> Delete selected
|
|
|
+ </button>
|
|
|
+ {% endif %}
|
|
|
+ {% if perms.dcim.add_devicebay %}
|
|
|
+ <div class="pull-right">
|
|
|
+ <a href="{% url 'dcim:devicebay_add' %}?device={{ device.pk }}&return_url={{ device.get_absolute_url }}" class="btn btn-primary btn-xs">
|
|
|
+ <span class="glyphicon glyphicon-plus" aria-hidden="true"></span> Add device bays
|
|
|
+ </a>
|
|
|
+ </div>
|
|
|
+ <div class="clearfix"></div>
|
|
|
+ {% endif %}
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </form>
|
|
|
{% endif %}
|
|
|
{% if interfaces %}
|
|
|
- {% if perms.dcim.change_interface or perms.dcim.delete_interface %}
|
|
|
- <form method="post">
|
|
|
+ <form method="post">
|
|
|
{% csrf_token %}
|
|
|
- <input type="hidden" name="device" value="{{ device.pk }}" />
|
|
|
- {% endif %}
|
|
|
- <div class="panel panel-default">
|
|
|
- <div class="panel-heading">
|
|
|
- <strong>Interfaces</strong>
|
|
|
- <div class="pull-right noprint">
|
|
|
- <button class="btn btn-default btn-xs toggle-ips" selected="selected">
|
|
|
- <span class="glyphicon glyphicon-check" aria-hidden="true"></span> Show IPs
|
|
|
- </button>
|
|
|
- </div>
|
|
|
- <div class="col-md-2 pull-right noprint">
|
|
|
- <input class="form-control interface-filter" type="text" placeholder="Filter" title="RegEx-enabled" style="height: 23px" />
|
|
|
+ <div class="panel panel-default">
|
|
|
+ <div class="panel-heading">
|
|
|
+ <strong>Interfaces</strong>
|
|
|
+ <div class="pull-right noprint">
|
|
|
+ <button class="btn btn-default btn-xs toggle-ips" selected="selected">
|
|
|
+ <span class="glyphicon glyphicon-check" aria-hidden="true"></span> Show IPs
|
|
|
+ </button>
|
|
|
+ </div>
|
|
|
+ <div class="col-md-2 pull-right noprint">
|
|
|
+ <input class="form-control interface-filter" type="text" placeholder="Filter" title="Filter text (regular expressions supported)" style="height: 23px" />
|
|
|
+ </div>
|
|
|
</div>
|
|
|
+ <table id="interfaces_table" class="table table-hover table-headings panel-body component-list">
|
|
|
+ <thead>
|
|
|
+ <tr>
|
|
|
+ {% if perms.dcim.change_interface or perms.dcim.delete_interface %}
|
|
|
+ <th class="pk"><input type="checkbox" class="toggle" title="Toggle all" /></th>
|
|
|
+ {% endif %}
|
|
|
+ <th>Name</th>
|
|
|
+ <th>LAG</th>
|
|
|
+ <th>Description</th>
|
|
|
+ <th>MTU</th>
|
|
|
+ <th>Mode</th>
|
|
|
+ <th>Cable</th>
|
|
|
+ <th colspan="2">Connection</th>
|
|
|
+ <th></th>
|
|
|
+ </tr>
|
|
|
+ </thead>
|
|
|
+ <tbody>
|
|
|
+ {% for iface in interfaces %}
|
|
|
+ {% include 'dcim/inc/interface.html' %}
|
|
|
+ {% endfor %}
|
|
|
+ </tbody>
|
|
|
+ </table>
|
|
|
+ <div class="panel-footer noprint">
|
|
|
+ {% if interfaces and perms.dcim.change_interface %}
|
|
|
+ <button type="submit" name="_rename" formaction="{% url 'dcim:interface_bulk_rename' %}?return_url={{ device.get_absolute_url }}" class="btn btn-warning btn-xs">
|
|
|
+ <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Rename
|
|
|
+ </button>
|
|
|
+ <button type="submit" name="_edit" formaction="{% url 'dcim:interface_bulk_edit' %}?device={{ device.pk }}&return_url={{ device.get_absolute_url }}" class="btn btn-warning btn-xs">
|
|
|
+ <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Edit
|
|
|
+ </button>
|
|
|
+ {% endif %}
|
|
|
+ {% if interfaces and perms.dcim.change_interface %}
|
|
|
+ <button type="submit" name="_disconnect" formaction="{% url 'dcim:interface_bulk_disconnect' %}?return_url={{ device.get_absolute_url }}" class="btn btn-danger btn-xs">
|
|
|
+ <span class="glyphicon glyphicon-resize-full" aria-hidden="true"></span> Disconnect
|
|
|
+ </button>
|
|
|
+ {% endif %}
|
|
|
+ {% if interfaces and perms.dcim.delete_interface %}
|
|
|
+ <button type="submit" name="_delete" formaction="{% url 'dcim:interface_bulk_delete' %}?return_url={{ device.get_absolute_url }}" class="btn btn-danger btn-xs">
|
|
|
+ <span class="glyphicon glyphicon-trash" aria-hidden="true"></span> Delete
|
|
|
+ </button>
|
|
|
+ {% endif %}
|
|
|
+ {% if perms.dcim.add_interface %}
|
|
|
+ <div class="pull-right">
|
|
|
+ <a href="{% url 'dcim:interface_add' %}?device={{ device.pk }}&return_url={{ device.get_absolute_url }}" class="btn btn-primary btn-xs">
|
|
|
+ <span class="glyphicon glyphicon-plus" aria-hidden="true"></span> Add interfaces
|
|
|
+ </a>
|
|
|
+ </div>
|
|
|
+ <div class="clearfix"></div>
|
|
|
+ {% endif %}
|
|
|
+ </div>
|
|
|
</div>
|
|
|
- <table id="interfaces_table" class="table table-hover table-headings panel-body component-list">
|
|
|
- <thead>
|
|
|
- <tr>
|
|
|
- {% if perms.dcim.change_interface or perms.dcim.delete_interface %}
|
|
|
- <th class="pk"><input type="checkbox" class="toggle" title="Toggle all" /></th>
|
|
|
- {% endif %}
|
|
|
- <th>Name</th>
|
|
|
- <th>LAG</th>
|
|
|
- <th>Description</th>
|
|
|
- <th>MTU</th>
|
|
|
- <th>Mode</th>
|
|
|
- <th>Cable</th>
|
|
|
- <th colspan="2">Connection</th>
|
|
|
- <th></th>
|
|
|
- </tr>
|
|
|
- </thead>
|
|
|
- <tbody>
|
|
|
- {% for iface in interfaces %}
|
|
|
- {% include 'dcim/inc/interface.html' %}
|
|
|
- {% endfor %}
|
|
|
- </tbody>
|
|
|
- </table>
|
|
|
- <div class="panel-footer noprint">
|
|
|
- {% if interfaces and perms.dcim.change_interface %}
|
|
|
- <button type="submit" name="_rename" formaction="{% url 'dcim:interface_bulk_rename' %}?return_url={{ device.get_absolute_url }}" class="btn btn-warning btn-xs">
|
|
|
- <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Rename
|
|
|
- </button>
|
|
|
- <button type="submit" name="_edit" formaction="{% url 'dcim:interface_bulk_edit' %}?device={{ device.pk }}&return_url={{ device.get_absolute_url }}" class="btn btn-warning btn-xs">
|
|
|
- <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Edit
|
|
|
- </button>
|
|
|
- {% endif %}
|
|
|
- {% if interfaces and perms.dcim.change_interface %}
|
|
|
- <button type="submit" name="_disconnect" formaction="{% url 'dcim:interface_bulk_disconnect' %}?return_url={{ device.get_absolute_url }}" class="btn btn-danger btn-xs">
|
|
|
- <span class="glyphicon glyphicon-resize-full" aria-hidden="true"></span> Disconnect
|
|
|
- </button>
|
|
|
- {% endif %}
|
|
|
- {% if interfaces and perms.dcim.delete_interface %}
|
|
|
- <button type="submit" name="_delete" formaction="{% url 'dcim:interface_bulk_delete' %}?return_url={{ device.get_absolute_url }}" class="btn btn-danger btn-xs">
|
|
|
- <span class="glyphicon glyphicon-trash" aria-hidden="true"></span> Delete
|
|
|
- </button>
|
|
|
- {% endif %}
|
|
|
- {% if perms.dcim.add_interface %}
|
|
|
- <div class="pull-right">
|
|
|
- <a href="{% url 'dcim:interface_add' %}?device={{ device.pk }}&return_url={{ device.get_absolute_url }}" class="btn btn-primary btn-xs">
|
|
|
- <span class="glyphicon glyphicon-plus" aria-hidden="true"></span> Add interfaces
|
|
|
- </a>
|
|
|
- </div>
|
|
|
- <div class="clearfix"></div>
|
|
|
- {% endif %}
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- {% if perms.dcim.delete_interface %}
|
|
|
- </form>
|
|
|
- {% endif %}
|
|
|
+ </form>
|
|
|
{% endif %}
|
|
|
{% if consoleserverports %}
|
|
|
- {% if perms.dcim.delete_consoleserverport %}
|
|
|
- <form method="post">
|
|
|
+ <form method="post">
|
|
|
{% csrf_token %}
|
|
|
- <input type="hidden" name="device" value="{{ device.pk }}" />
|
|
|
- {% endif %}
|
|
|
- <div class="panel panel-default">
|
|
|
- <div class="panel-heading">
|
|
|
- <strong>Console Server Ports</strong>
|
|
|
- </div>
|
|
|
- <table class="table table-hover table-headings panel-body component-list">
|
|
|
- <thead>
|
|
|
- <tr>
|
|
|
- {% if perms.dcim.change_consoleserverport or perms.dcim.delete_consoleserverport %}
|
|
|
- <th class="pk"><input type="checkbox" class="toggle" title="Toggle all" /></th>
|
|
|
- {% endif %}
|
|
|
- <th>Name</th>
|
|
|
- <th>Type</th>
|
|
|
- <th>Description</th>
|
|
|
- <th>Cable</th>
|
|
|
- <th colspan="2">Connection</th>
|
|
|
- <th></th>
|
|
|
- </tr>
|
|
|
- </thead>
|
|
|
- <tbody>
|
|
|
- {% for csp in consoleserverports %}
|
|
|
- {% include 'dcim/inc/consoleserverport.html' %}
|
|
|
- {% endfor %}
|
|
|
- </tbody>
|
|
|
- </table>
|
|
|
- <div class="panel-footer noprint">
|
|
|
- {% if consoleserverports and perms.dcim.change_consoleport %}
|
|
|
- <button type="submit" name="_rename" formaction="{% url 'dcim:consoleserverport_bulk_rename' %}?return_url={{ device.get_absolute_url }}" class="btn btn-warning btn-xs">
|
|
|
- <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Rename
|
|
|
- </button>
|
|
|
- <button type="submit" name="_edit" formaction="{% url 'dcim:consoleserverport_bulk_edit' %}?device={{ device.pk }}&return_url={{ device.get_absolute_url }}" class="btn btn-warning btn-xs">
|
|
|
- <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Edit
|
|
|
- </button>
|
|
|
- <button type="submit" name="_disconnect" formaction="{% url 'dcim:consoleserverport_bulk_disconnect' %}?return_url={{ device.get_absolute_url }}" class="btn btn-danger btn-xs">
|
|
|
- <span class="glyphicon glyphicon-resize-full" aria-hidden="true"></span> Disconnect
|
|
|
- </button>
|
|
|
- {% endif %}
|
|
|
- {% if consoleserverports and perms.dcim.delete_consoleserverport %}
|
|
|
- <button type="submit" formaction="{% url 'dcim:consoleserverport_bulk_delete' %}?return_url={{ device.get_absolute_url }}" class="btn btn-danger btn-xs">
|
|
|
- <span class="glyphicon glyphicon-trash" aria-hidden="true"></span> Delete
|
|
|
- </button>
|
|
|
- {% endif %}
|
|
|
- {% if perms.dcim.add_consoleserverport %}
|
|
|
- <div class="pull-right">
|
|
|
- <a href="{% url 'dcim:consoleserverport_add' %}?device={{ device.pk }}&return_url={{ device.get_absolute_url }}" class="btn btn-primary btn-xs">
|
|
|
- <span class="glyphicon glyphicon-plus" aria-hidden="true"></span> Add console server ports
|
|
|
- </a>
|
|
|
- </div>
|
|
|
- <div class="clearfix"></div>
|
|
|
- {% endif %}
|
|
|
+ <div class="panel panel-default">
|
|
|
+ <div class="panel-heading">
|
|
|
+ <strong>Console Server Ports</strong>
|
|
|
+ </div>
|
|
|
+ <table class="table table-hover table-headings panel-body component-list">
|
|
|
+ <thead>
|
|
|
+ <tr>
|
|
|
+ {% if perms.dcim.change_consoleserverport or perms.dcim.delete_consoleserverport %}
|
|
|
+ <th class="pk"><input type="checkbox" class="toggle" title="Toggle all" /></th>
|
|
|
+ {% endif %}
|
|
|
+ <th>Name</th>
|
|
|
+ <th>Type</th>
|
|
|
+ <th>Description</th>
|
|
|
+ <th>Cable</th>
|
|
|
+ <th colspan="2">Connection</th>
|
|
|
+ <th></th>
|
|
|
+ </tr>
|
|
|
+ </thead>
|
|
|
+ <tbody>
|
|
|
+ {% for csp in consoleserverports %}
|
|
|
+ {% include 'dcim/inc/consoleserverport.html' %}
|
|
|
+ {% endfor %}
|
|
|
+ </tbody>
|
|
|
+ </table>
|
|
|
+ <div class="panel-footer noprint">
|
|
|
+ {% if consoleserverports and perms.dcim.change_consoleport %}
|
|
|
+ <button type="submit" name="_rename" formaction="{% url 'dcim:consoleserverport_bulk_rename' %}?return_url={{ device.get_absolute_url }}" class="btn btn-warning btn-xs">
|
|
|
+ <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Rename
|
|
|
+ </button>
|
|
|
+ <button type="submit" name="_edit" formaction="{% url 'dcim:consoleserverport_bulk_edit' %}?device={{ device.pk }}&return_url={{ device.get_absolute_url }}" class="btn btn-warning btn-xs">
|
|
|
+ <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Edit
|
|
|
+ </button>
|
|
|
+ <button type="submit" name="_disconnect" formaction="{% url 'dcim:consoleserverport_bulk_disconnect' %}?return_url={{ device.get_absolute_url }}" class="btn btn-danger btn-xs">
|
|
|
+ <span class="glyphicon glyphicon-resize-full" aria-hidden="true"></span> Disconnect
|
|
|
+ </button>
|
|
|
+ {% endif %}
|
|
|
+ {% if consoleserverports and perms.dcim.delete_consoleserverport %}
|
|
|
+ <button type="submit" formaction="{% url 'dcim:consoleserverport_bulk_delete' %}?return_url={{ device.get_absolute_url }}" class="btn btn-danger btn-xs">
|
|
|
+ <span class="glyphicon glyphicon-trash" aria-hidden="true"></span> Delete
|
|
|
+ </button>
|
|
|
+ {% endif %}
|
|
|
+ {% if perms.dcim.add_consoleserverport %}
|
|
|
+ <div class="pull-right">
|
|
|
+ <a href="{% url 'dcim:consoleserverport_add' %}?device={{ device.pk }}&return_url={{ device.get_absolute_url }}" class="btn btn-primary btn-xs">
|
|
|
+ <span class="glyphicon glyphicon-plus" aria-hidden="true"></span> Add console server ports
|
|
|
+ </a>
|
|
|
+ </div>
|
|
|
+ <div class="clearfix"></div>
|
|
|
+ {% endif %}
|
|
|
+ </div>
|
|
|
</div>
|
|
|
- </div>
|
|
|
- {% if perms.dcim.delete_consoleserverport %}
|
|
|
- </form>
|
|
|
- {% endif %}
|
|
|
+ </form>
|
|
|
{% endif %}
|
|
|
{% if poweroutlets %}
|
|
|
- {% if perms.dcim.delete_poweroutlet %}
|
|
|
- <form method="post">
|
|
|
+ <form method="post">
|
|
|
{% csrf_token %}
|
|
|
- <input type="hidden" name="device" value="{{ device.pk }}" />
|
|
|
- {% endif %}
|
|
|
- <div class="panel panel-default">
|
|
|
- <div class="panel-heading">
|
|
|
- <strong>Power Outlets</strong>
|
|
|
- </div>
|
|
|
- <table class="table table-hover table-headings panel-body component-list">
|
|
|
- <thead>
|
|
|
- <tr>
|
|
|
- {% if perms.dcim.change_poweroutlet or perms.dcim.delete_poweroutlet %}
|
|
|
- <th class="pk"><input type="checkbox" class="toggle" title="Toggle all" /></th>
|
|
|
- {% endif %}
|
|
|
- <th>Name</th>
|
|
|
- <th>Type</th>
|
|
|
- <th>Input/Leg</th>
|
|
|
- <th>Description</th>
|
|
|
- <th>Cable</th>
|
|
|
- <th colspan="3">Connection</th>
|
|
|
- <th></th>
|
|
|
- </tr>
|
|
|
- </thead>
|
|
|
- <tbody>
|
|
|
- {% for po in poweroutlets %}
|
|
|
- {% include 'dcim/inc/poweroutlet.html' %}
|
|
|
- {% endfor %}
|
|
|
- </tbody>
|
|
|
- </table>
|
|
|
- <div class="panel-footer noprint">
|
|
|
- {% if poweroutlets and perms.dcim.change_powerport %}
|
|
|
- <button type="submit" name="_rename" formaction="{% url 'dcim:poweroutlet_bulk_rename' %}?return_url={{ device.get_absolute_url }}" class="btn btn-warning btn-xs">
|
|
|
- <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Rename
|
|
|
- </button>
|
|
|
- <button type="submit" name="_edit" formaction="{% url 'dcim:poweroutlet_bulk_edit' %}?device={{ device.pk }}&return_url={{ device.get_absolute_url }}" class="btn btn-warning btn-xs">
|
|
|
- <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Edit
|
|
|
- </button>
|
|
|
- <button type="submit" name="_disconnect" formaction="{% url 'dcim:poweroutlet_bulk_disconnect' %}?return_url={{ device.get_absolute_url }}" class="btn btn-danger btn-xs">
|
|
|
- <span class="glyphicon glyphicon-resize-full" aria-hidden="true"></span> Disconnect
|
|
|
- </button>
|
|
|
- {% endif %}
|
|
|
- {% if poweroutlets and perms.dcim.delete_poweroutlet %}
|
|
|
- <button type="submit" formaction="{% url 'dcim:poweroutlet_bulk_delete' %}?return_url={{ device.get_absolute_url }}" class="btn btn-danger btn-xs">
|
|
|
- <span class="glyphicon glyphicon-trash" aria-hidden="true"></span> Delete
|
|
|
- </button>
|
|
|
- {% endif %}
|
|
|
- {% if perms.dcim.add_poweroutlet %}
|
|
|
- <div class="pull-right">
|
|
|
- <a href="{% url 'dcim:poweroutlet_add' %}?device={{ device.pk }}&return_url={{ device.get_absolute_url }}" class="btn btn-primary btn-xs">
|
|
|
- <span class="glyphicon glyphicon-plus" aria-hidden="true"></span> Add power outlets
|
|
|
- </a>
|
|
|
- </div>
|
|
|
- <div class="clearfix"></div>
|
|
|
- {% endif %}
|
|
|
+ <div class="panel panel-default">
|
|
|
+ <div class="panel-heading">
|
|
|
+ <strong>Power Outlets</strong>
|
|
|
+ </div>
|
|
|
+ <table class="table table-hover table-headings panel-body component-list">
|
|
|
+ <thead>
|
|
|
+ <tr>
|
|
|
+ {% if perms.dcim.change_poweroutlet or perms.dcim.delete_poweroutlet %}
|
|
|
+ <th class="pk"><input type="checkbox" class="toggle" title="Toggle all" /></th>
|
|
|
+ {% endif %}
|
|
|
+ <th>Name</th>
|
|
|
+ <th>Type</th>
|
|
|
+ <th>Input/Leg</th>
|
|
|
+ <th>Description</th>
|
|
|
+ <th>Cable</th>
|
|
|
+ <th colspan="3">Connection</th>
|
|
|
+ <th></th>
|
|
|
+ </tr>
|
|
|
+ </thead>
|
|
|
+ <tbody>
|
|
|
+ {% for po in poweroutlets %}
|
|
|
+ {% include 'dcim/inc/poweroutlet.html' %}
|
|
|
+ {% endfor %}
|
|
|
+ </tbody>
|
|
|
+ </table>
|
|
|
+ <div class="panel-footer noprint">
|
|
|
+ {% if poweroutlets and perms.dcim.change_powerport %}
|
|
|
+ <button type="submit" name="_rename" formaction="{% url 'dcim:poweroutlet_bulk_rename' %}?return_url={{ device.get_absolute_url }}" class="btn btn-warning btn-xs">
|
|
|
+ <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Rename
|
|
|
+ </button>
|
|
|
+ <button type="submit" name="_edit" formaction="{% url 'dcim:poweroutlet_bulk_edit' %}?device={{ device.pk }}&return_url={{ device.get_absolute_url }}" class="btn btn-warning btn-xs">
|
|
|
+ <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Edit
|
|
|
+ </button>
|
|
|
+ <button type="submit" name="_disconnect" formaction="{% url 'dcim:poweroutlet_bulk_disconnect' %}?return_url={{ device.get_absolute_url }}" class="btn btn-danger btn-xs">
|
|
|
+ <span class="glyphicon glyphicon-resize-full" aria-hidden="true"></span> Disconnect
|
|
|
+ </button>
|
|
|
+ {% endif %}
|
|
|
+ {% if poweroutlets and perms.dcim.delete_poweroutlet %}
|
|
|
+ <button type="submit" formaction="{% url 'dcim:poweroutlet_bulk_delete' %}?return_url={{ device.get_absolute_url }}" class="btn btn-danger btn-xs">
|
|
|
+ <span class="glyphicon glyphicon-trash" aria-hidden="true"></span> Delete
|
|
|
+ </button>
|
|
|
+ {% endif %}
|
|
|
+ {% if perms.dcim.add_poweroutlet %}
|
|
|
+ <div class="pull-right">
|
|
|
+ <a href="{% url 'dcim:poweroutlet_add' %}?device={{ device.pk }}&return_url={{ device.get_absolute_url }}" class="btn btn-primary btn-xs">
|
|
|
+ <span class="glyphicon glyphicon-plus" aria-hidden="true"></span> Add power outlets
|
|
|
+ </a>
|
|
|
+ </div>
|
|
|
+ <div class="clearfix"></div>
|
|
|
+ {% endif %}
|
|
|
+ </div>
|
|
|
</div>
|
|
|
- </div>
|
|
|
- {% if perms.dcim.delete_poweroutlet %}
|
|
|
- </form>
|
|
|
- {% endif %}
|
|
|
+ </form>
|
|
|
{% endif %}
|
|
|
{% if front_ports %}
|
|
|
<form method="post">
|
|
|
{% csrf_token %}
|
|
|
- <input type="hidden" name="device" value="{{ device.pk }}" />
|
|
|
<div class="panel panel-default">
|
|
|
<div class="panel-heading">
|
|
|
<strong>Front Ports</strong>
|
|
|
@@ -815,7 +840,6 @@
|
|
|
{% if rear_ports %}
|
|
|
<form method="post">
|
|
|
{% csrf_token %}
|
|
|
- <input type="hidden" name="device" value="{{ device.pk }}" />
|
|
|
<div class="panel panel-default">
|
|
|
<div class="panel-heading">
|
|
|
<strong>Rear Ports</strong>
|