From 35759fdb70cdeee50b98e96c9fd297070ad185fa Mon Sep 17 00:00:00 2001 From: Jeremy Stretch Date: Wed, 7 Oct 2020 16:39:15 -0400 Subject: [PATCH] Redo the cable trace UI (WIP) --- netbox/templates/dcim/cable_trace.html | 89 +++++++++---------- .../templates/dcim/inc/cable_trace_end.html | 43 --------- netbox/templates/dcim/trace/cable.html | 15 ++++ netbox/templates/dcim/trace/circuit.html | 6 ++ netbox/templates/dcim/trace/device.html | 9 ++ netbox/templates/dcim/trace/powerfeed.html | 9 ++ netbox/templates/dcim/trace/termination.html | 9 ++ 7 files changed, 92 insertions(+), 88 deletions(-) delete mode 100644 netbox/templates/dcim/inc/cable_trace_end.html create mode 100644 netbox/templates/dcim/trace/cable.html create mode 100644 netbox/templates/dcim/trace/circuit.html create mode 100644 netbox/templates/dcim/trace/device.html create mode 100644 netbox/templates/dcim/trace/powerfeed.html create mode 100644 netbox/templates/dcim/trace/termination.html diff --git a/netbox/templates/dcim/cable_trace.html b/netbox/templates/dcim/cable_trace.html index 4b3f7f2d4..7df39caca 100644 --- a/netbox/templates/dcim/cable_trace.html +++ b/netbox/templates/dcim/cable_trace.html @@ -7,66 +7,65 @@ {% block content %}
-
- -
-
-

Near End

-
-
- {% if total_length %}
Total length: {{ total_length|floatformat:"-2" }} Meters
{% endif %} -
-
-

Far End

-
-
+
{% for near_end, cable, far_end in path.origin.trace %} + + {# Near end #} + {% if near_end.device %} + {% include 'dcim/trace/device.html' with device=near_end.device %} + {% include 'dcim/trace/termination.html' with termination=near_end %} + {% elif near_end.power_panel %} + {% include 'dcim/trace/powerfeed.html' with powerfeed=near_end %} + {% elif near_end.circuit %} + {% include 'dcim/trace/circuit.html' with circuit=near_end.circuit %} + {% include 'dcim/trace/termination.html' with termination=near_end %} + {% endif %} + + {# Cable #}
-
-

{{ forloop.counter }}

-
-
- {% include 'dcim/inc/cable_trace_end.html' with end=near_end %} -
-
- {% if cable %} -

- - {% if cable.label %}{{ cable.label }}{% else %}Cable #{{ cable.pk }}{% endif %} - -

-

{{ cable.get_status_display }}

-

{{ cable.get_type_display|default:"" }}

- {% if cable.length %}{{ cable.length }} {{ cable.get_length_unit_display }}{% endif %} - {% if cable.color %} -   - {% endif %} - {% else %} -

No Cable

- {% endif %} -
-
- {% if far_end %} - {% include 'dcim/inc/cable_trace_end.html' with end=far_end %} - {% endif %} -
+ {% if cable %} + {% include 'dcim/trace/cable.html' %} + {% else %} +

No cable

+ {% endif %}
-
+ + {# Far end #} + {% if far_end.device %} + {% include 'dcim/trace/termination.html' with termination=far_end %} + {% if forloop.last %} + {% include 'dcim/trace/device.html' with device=far_end.device %} + {% endif %} + {% elif far_end.power_panel %} + {% include 'dcim/trace/powerfeed.html' with powerfeed=far_end %} + {% elif far_end.circuit %} + {% include 'dcim/trace/termination.html' with termination=far_end %} + {% if forloop.last %} + {% include 'dcim/trace/circuit.html' with circuit=far_end.circuit %} + {% endif %} + {% endif %} + {% endfor %}
-
+

Trace completed!

+ {% if total_length %} +
Total length: {{ total_length|floatformat:"-2" }} Meters
+ {% endif %}
-
+

Related Paths

diff --git a/netbox/templates/dcim/inc/cable_trace_end.html b/netbox/templates/dcim/inc/cable_trace_end.html deleted file mode 100644 index 71b7c56ef..000000000 --- a/netbox/templates/dcim/inc/cable_trace_end.html +++ /dev/null @@ -1,43 +0,0 @@ -{% load helpers %} - -
-
- {% if end.device %} - {{ end.device }}
- - {{ end.device.site }} - {% if end.device.rack %} - / {{ end.device.rack }} - {% endif %} - - {% elif end.circuit %} - {{ end.circuit.provider }} - {% elif end.power_panel %} - {{ end.power_panel }}
- - {{ end.power_panel.site }} - - {% endif %} -
-
- {% if end.device %} - {# Device component #} - {% with model=end|meta:"verbose_name" %} - {{ model|bettertitle }} {{ end }}
- {% if model == 'interface' or model == 'front port' or model == 'rear port' %} - {{ end.get_type_display }} - {% endif %} - {% endwith %} - {% elif end.circuit %} - {# CircuitTermination #} - {{ end.circuit }}
- {{ end }} - {% elif end.power_panel %} - {# PowerFeed #} - Power Feed {{ end }}
- {% if end.rack %} - {{ end.rack }} - {% endif %} - {% endif %} -
-
diff --git a/netbox/templates/dcim/trace/cable.html b/netbox/templates/dcim/trace/cable.html new file mode 100644 index 000000000..2cb5ffed6 --- /dev/null +++ b/netbox/templates/dcim/trace/cable.html @@ -0,0 +1,15 @@ +
+

+

+ + {% if cable.label %}{{ cable.label }}{% else %}Cable #{{ cable.pk }}{% endif %} + +

+

{{ cable.get_status_display }}

+

{{ cable.get_type_display|default:"" }}

+ {% if cable.length %}{{ cable.length }} {{ cable.get_length_unit_display }}{% endif %} + {% if cable.color %} +   + {% endif %} +

+
diff --git a/netbox/templates/dcim/trace/circuit.html b/netbox/templates/dcim/trace/circuit.html new file mode 100644 index 000000000..ef1ed05bc --- /dev/null +++ b/netbox/templates/dcim/trace/circuit.html @@ -0,0 +1,6 @@ + diff --git a/netbox/templates/dcim/trace/device.html b/netbox/templates/dcim/trace/device.html new file mode 100644 index 000000000..c3ed109d7 --- /dev/null +++ b/netbox/templates/dcim/trace/device.html @@ -0,0 +1,9 @@ +
+
+ Device {{ device }}
+ {{ device.site }} + {% if device.rack %} + / {{ device.rack }} + {% endif %} +
+
diff --git a/netbox/templates/dcim/trace/powerfeed.html b/netbox/templates/dcim/trace/powerfeed.html new file mode 100644 index 000000000..a439aff27 --- /dev/null +++ b/netbox/templates/dcim/trace/powerfeed.html @@ -0,0 +1,9 @@ +
+
+ Power Feed {{ powerfeed }}
+ {{ powerfeed.power_panel }} + {% if powerfeed.rack %} + / {{ powerfeed.rack }} + {% endif %} +
+
diff --git a/netbox/templates/dcim/trace/termination.html b/netbox/templates/dcim/trace/termination.html new file mode 100644 index 000000000..dedb562ea --- /dev/null +++ b/netbox/templates/dcim/trace/termination.html @@ -0,0 +1,9 @@ +{% load helpers %} +
+
+ {{ termination|meta:"verbose_name"|bettertitle }} {{ termination }} + {% if termination.type %} +
{{ termination.get_type_display }} + {% endif %} +
+
\ No newline at end of file