| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231 |
- CABLETERMINATION = """
- {% if value %}
- <a href="{{ value.parent.get_absolute_url }}">{{ value.parent }}</a>
- <i class="mdi mdi-chevron-right"></i>
- <a href="{{ value.get_absolute_url }}">{{ value }}</a>
- {% else %}
- —
- {% endif %}
- """
- CABLE_LENGTH = """
- {% if record.length %}{{ record.length }} {{ record.get_length_unit_display }}{% else %}—{% endif %}
- """
- CABLE_TERMINATION_PARENT = """
- {% if value.device %}
- <a href="{{ value.device.get_absolute_url }}">{{ value.device }}</a>
- {% elif value.circuit %}
- <a href="{{ value.circuit.get_absolute_url }}">{{ value.circuit }}</a>
- {% elif value.power_panel %}
- <a href="{{ value.power_panel.get_absolute_url }}">{{ value.power_panel }}</a>
- {% endif %}
- """
- DEVICE_LINK = """
- <a href="{% url 'dcim:device' pk=record.pk %}">
- {{ record.name|default:'<span class="label label-info">Unnamed device</span>' }}
- </a>
- """
- DEVICEBAY_STATUS = """
- {% if record.installed_device_id %}
- <span class="label label-{{ record.installed_device.get_status_class }}">
- {{ record.installed_device.get_status_display }}
- </span>
- {% else %}
- <span class="label label-default">Vacant</span>
- {% endif %}
- """
- INTERFACE_IPADDRESSES = """
- {% for ip in record.ip_addresses.all %}
- <a href="{{ ip.get_absolute_url }}">{{ ip }}</a><br />
- {% endfor %}
- """
- INTERFACE_TAGGED_VLANS = """
- {% for vlan in record.tagged_vlans.unrestricted %}
- <a href="{{ vlan.get_absolute_url }}">{{ vlan }}</a><br />
- {% endfor %}
- """
- MPTT_LINK = """
- {% if record.get_children %}
- <span style="padding-left: {{ record.get_ancestors|length }}0px "><i class="mdi mdi-chevron-right"></i>
- {% else %}
- <span style="padding-left: {{ record.get_ancestors|length }}9px">
- {% endif %}
- <a href="{{ record.get_absolute_url }}">{{ record.name }}</a>
- </span>
- """
- POWERFEED_CABLE = """
- <a href="{{ value.get_absolute_url }}">{{ value }}</a>
- <a href="{% url 'dcim:powerfeed_trace' pk=record.pk %}" class="btn btn-primary btn-xs" title="Trace">
- <i class="mdi mdi-transit-connection-variant" aria-hidden="true"></i>
- </a>
- """
- POWERFEED_CABLETERMINATION = """
- <a href="{{ value.parent.get_absolute_url }}">{{ value.parent }}</a>
- <i class="mdi mdi-chevron-right"></i>
- <a href="{{ value.get_absolute_url }}">{{ value }}</a>
- """
- RACKGROUP_ELEVATIONS = """
- <a href="{% url 'dcim:rack_elevation_list' %}?site={{ record.site.slug }}&group_id={{ record.pk }}" class="btn btn-xs btn-primary" title="View elevations">
- <i class="mdi mdi-server"></i>
- </a>
- """
- UTILIZATION_GRAPH = """
- {% load helpers %}
- {% utilization_graph value %}
- """
- #
- # Device component buttons
- #
- CONSOLEPORT_BUTTONS = """
- {% if record.cable %}
- <a href="{% url 'dcim:consoleport_trace' pk=record.pk %}" class="btn btn-primary btn-xs" title="Trace"><i class="mdi mdi-transit-connection-variant"></i></a>
- {% include 'dcim/inc/cable_toggle_buttons.html' with cable=record.cable %}
- {% elif perms.dcim.add_cable %}
- <span class="dropdown">
- <button type="button" class="btn btn-success btn-xs dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
- <span class="mdi mdi-lan-connect" aria-hidden="true"></span>
- </button>
- <ul class="dropdown-menu dropdown-menu-right">
- <li><a href="{% url 'dcim:consoleport_connect' termination_a_id=record.pk termination_b_type='console-server-port' %}?return_url={% url 'dcim:device_consoleports' pk=device.pk %}">Console Server Port</a></li>
- <li><a href="{% url 'dcim:consoleport_connect' termination_a_id=record.pk termination_b_type='front-port' %}?return_url={% url 'dcim:device_consoleports' pk=device.pk %}">Front Port</a></li>
- <li><a href="{% url 'dcim:consoleport_connect' termination_a_id=record.pk termination_b_type='rear-port' %}?return_url={% url 'dcim:device_consoleports' pk=device.pk %}">Rear Port</a></li>
- </ul>
- </span>
- {% endif %}
- """
- CONSOLESERVERPORT_BUTTONS = """
- {% if record.cable %}
- <a href="{% url 'dcim:consoleserverport_trace' pk=record.pk %}" class="btn btn-primary btn-xs" title="Trace"><i class="mdi mdi-transit-connection-variant"></i></a>
- {% include 'dcim/inc/cable_toggle_buttons.html' with cable=record.cable %}
- {% elif perms.dcim.add_cable %}
- <span class="dropdown">
- <button type="button" class="btn btn-success btn-xs dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
- <span class="mdi mdi-lan-connect" aria-hidden="true"></span>
- </button>
- <ul class="dropdown-menu dropdown-menu-right">
- <li><a href="{% url 'dcim:consoleserverport_connect' termination_a_id=record.pk termination_b_type='console-port' %}?return_url={% url 'dcim:device_consoleserverports' pk=device.pk %}">Console Port</a></li>
- <li><a href="{% url 'dcim:consoleserverport_connect' termination_a_id=record.pk termination_b_type='front-port' %}?return_url={% url 'dcim:device_consoleserverports' pk=device.pk %}">Front Port</a></li>
- <li><a href="{% url 'dcim:consoleserverport_connect' termination_a_id=record.pk termination_b_type='rear-port' %}?return_url={% url 'dcim:device_consoleserverports' pk=device.pk %}">Rear Port</a></li>
- </ul>
- </span>
- {% endif %}
- """
- POWERPORT_BUTTONS = """
- {% if record.cable %}
- <a href="{% url 'dcim:powerport_trace' pk=record.pk %}" class="btn btn-primary btn-xs" title="Trace"><i class="mdi mdi-transit-connection-variant"></i></a>
- {% include 'dcim/inc/cable_toggle_buttons.html' with cable=record.cable %}
- {% elif perms.dcim.add_cable %}
- <span class="dropdown">
- <button type="button" class="btn btn-success btn-xs dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
- <span class="mdi mdi-lan-connect" aria-hidden="true"></span>
- </button>
- <ul class="dropdown-menu dropdown-menu-right">
- <li><a href="{% url 'dcim:powerport_connect' termination_a_id=record.pk termination_b_type='power-outlet' %}?return_url={% url 'dcim:device_powerports' pk=device.pk %}">Power Outlet</a></li>
- <li><a href="{% url 'dcim:powerport_connect' termination_a_id=record.pk termination_b_type='power-feed' %}?return_url={% url 'dcim:device_powerports' pk=device.pk %}">Power Feed</a></li>
- </ul>
- </span>
- {% endif %}
- """
- POWEROUTLET_BUTTONS = """
- {% if record.cable %}
- <a href="{% url 'dcim:poweroutlet_trace' pk=record.pk %}" class="btn btn-primary btn-xs" title="Trace"><i class="mdi mdi-transit-connection-variant"></i></a>
- {% include 'dcim/inc/cable_toggle_buttons.html' with cable=record.cable %}
- {% elif perms.dcim.add_cable %}
- <a href="{% url 'dcim:poweroutlet_connect' termination_a_id=record.pk termination_b_type='power-port' %}?return_url={% url 'dcim:device_poweroutlets' pk=device.pk %}" title="Connect" class="btn btn-success btn-xs">
- <i class="mdi mdi-lan-connect" aria-hidden="true"></i>
- </a>
- {% endif %}
- """
- INTERFACE_BUTTONS = """
- {% if perms.ipam.add_ipaddress %}
- <a href="{% url 'ipam:ipaddress_add' %}?interface={{ record.pk }}&return_url={% url 'dcim:device_interfaces' pk=device.pk %}" class="btn btn-xs btn-success" title="Add IP address">
- <i class="mdi mdi-plus-thick" aria-hidden="true"></i>
- </a>
- {% endif %}
- {% if record.cable %}
- <a href="{% url 'dcim:interface_trace' pk=record.pk %}" class="btn btn-primary btn-xs" title="Trace"><i class="mdi mdi-transit-connection-variant"></i></a>
- {% include 'dcim/inc/cable_toggle_buttons.html' with cable=record.cable %}
- {% elif record.is_connectable and perms.dcim.add_cable %}
- <span class="dropdown">
- <button type="button" class="btn btn-success btn-xs dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
- <span class="mdi mdi-ethernet-cable" aria-hidden="true"></span>
- </button>
- <ul class="dropdown-menu dropdown-menu-right">
- <li><a href="{% url 'dcim:interface_connect' termination_a_id=record.pk termination_b_type='interface' %}?return_url={% url 'dcim:device_interfaces' pk=device.pk %}">Interface</a></li>
- <li><a href="{% url 'dcim:interface_connect' termination_a_id=record.pk termination_b_type='front-port' %}?return_url={% url 'dcim:device_interfaces' pk=device.pk %}">Front Port</a></li>
- <li><a href="{% url 'dcim:interface_connect' termination_a_id=record.pk termination_b_type='rear-port' %}?return_url={% url 'dcim:device_interfaces' pk=device.pk %}">Rear Port</a></li>
- <li><a href="{% url 'dcim:interface_connect' termination_a_id=record.pk termination_b_type='circuit-termination' %}?return_url={% url 'dcim:device_interfaces' pk=device.pk %}">Circuit Termination</a></li>
- </ul>
- </span>
- {% endif %}
- """
- FRONTPORT_BUTTONS = """
- {% if record.cable %}
- <a href="{% url 'dcim:frontport_trace' pk=record.pk %}" class="btn btn-primary btn-xs" title="Trace"><i class="mdi mdi-transit-connection-variant"></i></a>
- {% include 'dcim/inc/cable_toggle_buttons.html' with cable=record.cable %}
- {% elif perms.dcim.add_cable %}
- <span class="dropdown">
- <button type="button" class="btn btn-success btn-xs dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
- <span class="mdi mdi-lan-connect" aria-hidden="true"></span>
- </button>
- <ul class="dropdown-menu dropdown-menu-right">
- <li><a href="{% url 'dcim:frontport_connect' termination_a_id=record.pk termination_b_type='interface' %}?return_url={% url 'dcim:device_frontports' pk=device.pk %}">Interface</a></li>
- <li><a href="{% url 'dcim:frontport_connect' termination_a_id=record.pk termination_b_type='console-server-port' %}?return_url={% url 'dcim:device_frontports' pk=device.pk %}">Console Server Port</a></li>
- <li><a href="{% url 'dcim:frontport_connect' termination_a_id=record.pk termination_b_type='console-port' %}?return_url={% url 'dcim:device_frontports' pk=device.pk %}">Console Port</a></li>
- <li><a href="{% url 'dcim:frontport_connect' termination_a_id=record.pk termination_b_type='front-port' %}?return_url={% url 'dcim:device_frontports' pk=device.pk %}">Front Port</a></li>
- <li><a href="{% url 'dcim:frontport_connect' termination_a_id=record.pk termination_b_type='rear-port' %}?return_url={% url 'dcim:device_frontports' pk=device.pk %}">Rear Port</a></li>
- <li><a href="{% url 'dcim:frontport_connect' termination_a_id=record.pk termination_b_type='circuit-termination' %}?return_url={% url 'dcim:device_frontports' pk=device.pk %}">Circuit Termination</a></li>
- </ul>
- </span>
- {% endif %}
- """
- REARPORT_BUTTONS = """
- {% if record.cable %}
- <a href="{% url 'dcim:rearport_trace' pk=record.pk %}" class="btn btn-primary btn-xs" title="Trace"><i class="mdi mdi-transit-connection-variant"></i></a>
- {% include 'dcim/inc/cable_toggle_buttons.html' with cable=record.cable %}
- {% elif perms.dcim.add_cable %}
- <span class="dropdown">
- <button type="button" class="btn btn-success btn-xs dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
- <span class="mdi mdi-lan-connect" aria-hidden="true"></span>
- </button>
- <ul class="dropdown-menu dropdown-menu-right">
- <li><a href="{% url 'dcim:rearport_connect' termination_a_id=record.pk termination_b_type='interface' %}?return_url={% url 'dcim:device_rearports' pk=device.pk %}">Interface</a></li>
- <li><a href="{% url 'dcim:rearport_connect' termination_a_id=record.pk termination_b_type='front-port' %}?return_url={% url 'dcim:device_rearports' pk=device.pk %}">Front Port</a></li>
- <li><a href="{% url 'dcim:rearport_connect' termination_a_id=record.pk termination_b_type='rear-port' %}?return_url={% url 'dcim:device_rearports' pk=device.pk %}">Rear Port</a></li>
- <li><a href="{% url 'dcim:rearport_connect' termination_a_id=record.pk termination_b_type='circuit-termination' %}?return_url={% url 'dcim:device_rearports' pk=device.pk %}">Circuit Termination</a></li>
- </ul>
- </span>
- {% endif %}
- """
- DEVICEBAY_BUTTONS = """
- {% if perms.dcim.change_devicebay %}
- {% if record.installed_device %}
- <a href="{% url 'dcim:devicebay_depopulate' pk=record.pk %}?return_url={% url 'dcim:device_devicebays' pk=device.pk %}" class="btn btn-danger btn-xs">
- <i class="mdi mdi-close-thick" aria-hidden="true" title="Remove device"></i>
- </a>
- {% else %}
- <a href="{% url 'dcim:devicebay_populate' pk=record.pk %}?return_url={% url 'dcim:device_devicebays' pk=device.pk %}" class="btn btn-success btn-xs">
- <i class="mdi mdi-plus-thick" aria-hidden="true" title="Install device"></i>
- </a>
- {% endif %}
- {% endif %}
- """
|