Browse Source

#1177: Render planned connections as dashed lines on topology maps

Jeremy Stretch 8 years ago
parent
commit
a49521d683
1 changed files with 3 additions and 2 deletions
  1. 3 2
      netbox/extras/models.py

+ 3 - 2
netbox/extras/models.py

@@ -318,7 +318,7 @@ class TopologyMap(models.Model):
     def render(self, img_format='png'):
 
         from circuits.models import CircuitTermination
-        from dcim.models import Device, InterfaceConnection
+        from dcim.models import CONNECTION_STATUS_CONNECTED, Device, InterfaceConnection
 
         # Construct the graph
         graph = graphviz.Graph()
@@ -360,7 +360,8 @@ class TopologyMap(models.Model):
             interface_a__device__in=devices, interface_b__device__in=devices
         )
         for c in connections:
-            graph.edge(c.interface_a.device.name, c.interface_b.device.name)
+            style = 'solid' if c.connection_status == CONNECTION_STATUS_CONNECTED else 'dashed'
+            graph.edge(c.interface_a.device.name, c.interface_b.device.name, style=style)
 
         # Add all circuits to the graph
         for termination in CircuitTermination.objects.filter(term_side='A', interface__device__in=devices):