r1206 + distinguish connected and notconnect ports in switchvlans gateway
authorDenis Ovsienko <infrastation@yandex.ru>
Mon, 15 Oct 2007 14:39:50 +0000 (14:39 +0000)
committerDenis Ovsienko <infrastation@yandex.ru>
Mon, 15 Oct 2007 14:39:50 +0000 (14:39 +0000)
gateways/switchvlans/cisco.connector
inc/gateways.php
inc/interface.php
pi.css

index 83f7b6340f642e8ea866298facbf051aa6be5912..d675a4c69acf9fb0f3fccd8b9ca2641a15255559 100755 (executable)
@@ -85,7 +85,7 @@ do_fetch()
        nc $ENDPOINT 23 < $CMDS2 > "$OUT2"
        nc $ENDPOINT 23 < $CMDS3 > "$OUT3"
        cat "$OUT1" | fgrep ' active    ' | sed -E 's/^([[:digit:]]+)[[:space:]]+(.+)[[:space:]]+ active    (.*)/\1=\2/;s/[[:space:]]+$//' > $FILE1
-       cat "$OUT2" | egrep '^(Et|Fa|Gi|Te)' | sed -E 's/ +(notconnect|connected) +/=/;s/=(trunk|([0-9]+)) .*$/=\1/' > $FILE2
+       cat "$OUT2" | egrep '^(Et|Fa|Gi|Te)' | sed -E 's/ +(notconnect|connected) +/=\1,/;s/,(trunk|([0-9]+)) .*$/,\1/' > $FILE2
        # FIXME
 #      cat "$OUT3" > "$FILE3" 
 }
index c7d7f7aa4a35e1c0db1aa51be0368d2a184cb0b5..23da0c2dd5413a7e26c3bc3afae26d99f0eddfdb 100644 (file)
@@ -127,10 +127,11 @@ function getSwitchVLANs ($object_id = 0)
                $vlanlist[$vlanid] = $vlandescr;
        }
        $portlist = array();
-       foreach (explode (';', substr ($data[2], strlen ('OK '))) as $pair)
+       foreach (explode (';', substr ($data[2], strlen ('OK!'))) as $pair)
        {
-               list ($portname, $vlanid) = explode ('=', $pair);
-               $portlist[] = array ('portname' => $portname, 'vlanid' => $vlanid);
+               list ($portname, $pair2) = explode ('=', $pair);
+               list ($status, $vlanid) = explode (',', $pair2);
+               $portlist[] = array ('portname' => $portname, 'status' => $status, 'vlanid' => $vlanid);
        }
        if (count ($portlist) == 0)
        {
index 7b41f90f36cab2c1d81ba7f41a0a7d102b967672..c580b5f82ee6a3fc7d6519348dd057f4a31e9035 100644 (file)
@@ -2969,7 +2969,7 @@ function renderVLANMembership ($object_id = 0)
                                echo "</tr>\n";
                        echo "<tr><th>" . ($portno + 1) . "-" . ($portno + $ports_per_row) . "</th>";
                }
-               echo '<td>' . $port['portname'] . '<br>';
+               echo '<td class=port_' . $port['status'] . '>' . $port['portname'] . '<br>';
                echo "<input type=hidden name=portname_${portno} value=" . $port['portname'] . '>';
                if ($port['vlanid'] == 'trunk')
                {
diff --git a/pi.css b/pi.css
index ebb2c99461ea8ecdb30d4fb1713b359cad040b1e..0e2f3bfab2b151b47314d6a9f9f948b5897fe9b1 100644 (file)
--- a/pi.css
+++ b/pi.css
@@ -504,3 +504,11 @@ div.commentblock {
        white-space: pre;
        text-align: left;
 }
+
+.port_connected {
+       background-color: red;
+}
+
+.port_notconnect {
+       background-color: green;
+}