Merge pull request #440 from tohojo/bird-203
[feed/routing.git] / luci-app-bmx7 / files / usr / lib / lua / luci / view / bmx7 / status_j.htm
1 <%+header%>
2 <script type="text/javascript" src="<%=resource%>/cbi.js"></script>
3 <script type="text/javascript" src="<%=resource%>/bmx7/js/polling.js"></script>
4
5 <div class="cbi-map">
6 <center>
7 <img src="<%=resource%>/bmx7/bmx7logo.png" />
8 <br />
9 <br />
10 A mesh routing protocol for Linux devices.<br />
11 Visit <a href="http://bmx6.net">bmx6.net</a> for more information.<br />
12 <br />
13 </center>
14
15 <div class="cbi-map-descr"></div>
16
17 <div class="cbi-section">
18 <legend><%:Node configuration%></legend>
19 <div class="cbi-section-node">
20 <div class="table" id="config_div">
21 <div class="tr table-titles">
22 <div class="th"><%:Short ID%></div>
23 <div class="th"><%:Node name%></div>
24 <div class="th"><%:Primary IPv6 address%></div>
25 <div class="th"><%:Node key%></div>
26 <div class="th"><%:Short DHash%></div>
27 <div class="th"><%:BMX7 revision%></div>
28 </div>
29 </div>
30 </div>
31 </div>
32
33
34 <div class="cbi-section">
35 <legend><%:Node status%></legend>
36 <div class="cbi-section-node">
37 <div class="table" id="status_div">
38 <div class="tr table-titles">
39 <div class="th"><%:Nodes seen%></div>
40 <div class="th"><%:Neighbours%></div>
41 <div class="th"><%:Tunnelled IPv6 address%></div>
42 <div class="th"><%:Tunnelled IPv4 address%></div>
43 <div class="th"><%:Uptime%></div>
44 <div class="th"><%:CPU usage%></div>
45 <div class="th"><%:Memory usage%></div>
46 <div class="th"><%:Tx queue%></div>
47 </div>
48 </div>
49 </div>
50 </div>
51
52 <div class="cbi-section">
53 <legend><%:Network interfaces%></legend>
54 <div class="cbi-section-node">
55 <div class="table" id="ifaces_div">
56 <div class="tr table-titles">
57 <div class="th"><%:Interface%></div>
58 <div class="th"><%:State%></div>
59 <div class="th"><%:Type%></div>
60 <div class="th"><%:Max rate%></div>
61 <div class="th"><%:LinkLocal Ipv6%></div>
62 <div class="th"><%:RX BpP%></div>
63 <div class="th"><%:TX BpP%></div>
64 </div>
65 </div>
66 </div>
67 </div>
68
69
70 <div class="cbi-section">
71 <legend><%:Links%></legend>
72 <div class="cbi-section-node">
73 <div class="table" id="links_div">
74 <div class="tr table-titles">
75 <div class="th"><%:Short ID%></div>
76 <div class="th"><%:Name%></div>
77 <div class="th"><%:Link key%></div>
78 <div class="th"><%:Remote linklocal IPv6%></div>
79 <div class="th"><%:Device%></div>
80 <div class="th"><%:RX rate%></div>
81 <div class="th"><%:TX rate%></div>
82 <div class="th"><%:Routes%></div>
83 </div>
84 </div>
85 </div>
86 </div>
87
88 </div>
89
90 <script type="text/javascript">//<![CDATA[
91 new TablePooler(1,"/cgi-bin/bmx7-info", {'$info':''}, "config_div", function(st){
92 var res = Array();
93 var sta = st.info[0].status;
94 res.push([sta.shortId, sta.name, sta.primaryIp, sta.nodeKey, sta.shortDhash, sta.revision]);
95 return res;
96 });
97
98 new TablePooler(1,"/cgi-bin/bmx7-info", {'$info':''}, "status_div", function(st){
99 var res = Array();
100 var sta = st.info[0].status;
101 var mem = st.info[3].memory.bmx7;
102 var txQ = sta.txQ.split('/');
103 var ptxQ = '<p style="color:rgb('+parseInt(255*txQ[0]/txQ[1])+','+parseInt(128*(txQ[1]-txQ[0])/txQ[1])+',0)")>'+sta.txQ+'</p>';
104 res.push([sta.nodes, sta.nbs, sta.tun6Address, sta.tun4Address, sta.uptime, sta.cpu, mem, ptxQ]);
105 return res;
106 });
107
108 new TablePooler(1,"/cgi-bin/bmx7-info", {'$info':''}, "ifaces_div", function(st){
109 var res = Array();
110 var ifaces = st.info[1].interfaces;
111
112 ifaces.forEach(function(iface){
113 res.push([iface.dev, iface.state, iface.type, iface.rateMax, iface.localIp, iface.rxBpP, iface.txBpP]);
114 });
115 return res;
116 });
117
118 new TablePooler(1,"/cgi-bin/bmx7-info", {'$info':''}, "links_div", function(st){
119 var res = Array();
120 links = st.info[2].links;
121
122 links.forEach(function(link){
123 res.push([link.shortId, link.name, link.linkKey, link.nbLocalIp, link.dev, link.rxRate, link.txRate, link.rts]);
124 });
125 return res;
126 });
127
128 //]]></script>
129
130 <%+footer%>