Adding support for link state to GUI.

Change-Id: I6476cf04810f7bc7e88af629a36ce671b42748d0
diff --git a/web/gui/src/main/java/org/onlab/onos/gui/TopologyViewMessages.java b/web/gui/src/main/java/org/onlab/onos/gui/TopologyViewMessages.java
index dcc2355..fdc8d06 100644
--- a/web/gui/src/main/java/org/onlab/onos/gui/TopologyViewMessages.java
+++ b/web/gui/src/main/java/org/onlab/onos/gui/TopologyViewMessages.java
@@ -188,7 +188,8 @@
         ControllerNode node = event.subject();
         ObjectNode payload = mapper.createObjectNode()
                 .put("id", node.id().toString())
-                .put("online", clusterService.getState(node.id()) == ACTIVE);
+                .put("online", clusterService.getState(node.id()) == ACTIVE)
+                .put("uiAttached", event.subject().equals(clusterService.getLocalNode()));
 
         ArrayNode labels = mapper.createArrayNode();
         labels.add(node.id().toString());
@@ -236,7 +237,7 @@
         ObjectNode payload = mapper.createObjectNode()
                 .put("id", compactLinkString(link))
                 .put("type", link.type().toString().toLowerCase())
-                .put("online", true) // link.state()) TODO: add link state field
+                .put("online", link.state() == Link.State.ACTIVE)
                 .put("linkWidth", 2)
                 .put("src", link.src().deviceId().toString())
                 .put("srcPort", link.src().port().toString())
diff --git a/web/gui/src/main/webapp/mast2.js b/web/gui/src/main/webapp/mast2.js
index 237c511..bf8694a 100644
--- a/web/gui/src/main/webapp/mast2.js
+++ b/web/gui/src/main/webapp/mast2.js
@@ -30,7 +30,7 @@
     var api = onos.api;
 
     // Config variables
-    var guiTitle = 'Open Networking Operating System';
+    var guiTitle = 'Open Network Operating System';
 
     // DOM elements and the like
     var mast = d3.select('#mast');
diff --git a/web/gui/src/main/webapp/topo2.css b/web/gui/src/main/webapp/topo2.css
index 438f265..2eb6a8e 100644
--- a/web/gui/src/main/webapp/topo2.css
+++ b/web/gui/src/main/webapp/topo2.css
@@ -108,6 +108,11 @@
     opacity: .7;
 }
 
+#topo svg .link.inactive {
+    opacity: .2;
+    stroke-dasharray: 8 4;
+}
+
 #topo svg .link.primary {
     stroke: #f11;
     stroke-width: 6px;
diff --git a/web/gui/src/main/webapp/topo2.js b/web/gui/src/main/webapp/topo2.js
index f34f247..5329545 100644
--- a/web/gui/src/main/webapp/topo2.js
+++ b/web/gui/src/main/webapp/topo2.js
@@ -826,7 +826,7 @@
         // merge in remaining data
         $.extend(lnk, link, {
             class: 'link',
-            svgClass: type ? 'link ' + type : 'link'
+            svgClass: (type ? 'link ' + type : 'link') + ' ' + (link.online ? 'active' : 'inactive')
         });
         return lnk;
     }