diff options
author | Manuel Munz <freifunk@somakoma.de> | 2013-03-16 18:08:13 +0000 |
---|---|---|
committer | Manuel Munz <freifunk@somakoma.de> | 2013-03-16 18:08:13 +0000 |
commit | 97f0cf2996be5ce5ad58e22c35ea81336727db08 (patch) | |
tree | 0b7921d2986695ca3366d2e15684cfac0a9b4c4f /applications/luci-olsr/luasrc/view/status-olsr/hna.htm | |
parent | a0183b2f75a772366336671a818707df3dc04e79 (diff) |
applications/luci-olsr: Use jsoninfo instead of txtinfo as data source.
Diffstat (limited to 'applications/luci-olsr/luasrc/view/status-olsr/hna.htm')
-rw-r--r-- | applications/luci-olsr/luasrc/view/status-olsr/hna.htm | 97 |
1 files changed, 89 insertions, 8 deletions
diff --git a/applications/luci-olsr/luasrc/view/status-olsr/hna.htm b/applications/luci-olsr/luasrc/view/status-olsr/hna.htm index bde1f009b5..689bafdfae 100644 --- a/applications/luci-olsr/luasrc/view/status-olsr/hna.htm +++ b/applications/luci-olsr/luasrc/view/status-olsr/hna.htm @@ -10,39 +10,120 @@ You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 -$Id$ - -%> + <% local i = 1 + +if luci.http.formvalue("status") == "1" then + local rv = {} + for k, hna in ipairs(hna) do + rv[#rv+1] = { + proto = hna["proto"], + destination = hna["destination"], + genmask = hna["genmask"], + gateway = hna["gateway"], + hostname = hna["hostname"], + validityTime = hna["validityTime"] + } + end + luci.http.prepare_content("application/json") + luci.http.write_json(rv) + return +end %> <%+header%> +<script type="text/javascript" src="<%=resource%>/cbi.js"></script> +<script type="text/javascript">//<![CDATA[ +XHR.poll(10, '<%=REQUEST_URI%>', { status: 1 }, + function(x, info) + { + var hnadiv = document.getElementById('olsrd_hna'); + if (hnadiv) + { + var s = ''; + for (var idx = 0; idx < info.length; idx++) + { + var hna = info[idx]; + var linkgw = '' + s += '<tr class="cbi-section-table-row cbi-rowstyle-'+(1 + (idx % 2))+' proto-' + hna.proto + '">' + if (hna.proto == '6') { + linkgw = '<a href="http://[' + hna.gateway + ']/cgi-bin-status.html">' + hna.gateway + '</a>' + } else { + linkgw = '<a href="http://' + hna.gateway + '/cgi-bin-status.html">' + hna.gateway + '</a>' + } + + if (hna.validityTime != undefined) { + validity = hna.validityTime + 's' + } else { + validity = '-' + } + + if (hna.hostname != undefined) { + hostname = ' / <a href="http://' + hna.hostname + '/cgi-bin-status.html">' + hna.hostname + '</a>' + } else { + hostname = '' + } + + s += String.format( + '<td class="cbi-section-table-cell">%s</td>' + + '<td class="cbi-section-table-cell">%s</td>' + + '<td class="cbi-section-table-cell">%s</td>', hna.destination + '/' + hna.genmask, linkgw + hostname, validity + ) + s += '</tr>' + } + hnadiv.innerHTML = s; + } +} +); +//]]></script> + <h2><a id="content" name="content"><%:Active host net announcements%></a></h2> +<div id="togglebuttons"></div> <fieldset class="cbi-section"> + <legend><%:Overview of currently active OLSR host net announcements%></legend> <table class="cbi-section-table"> + <thead> <tr class="cbi-section-table-titles"> <th class="cbi-section-table-cell"><%:Announced network%></th> <th class="cbi-section-table-cell"><%:OLSR gateway%></th> + <th class="cbi-section-table-cell"><%:Validity Time%></th> </tr> - <% for k, route in ipairs(routes) do %> + </thead> + <tbody id="olsrd_hna"> + <% for k, route in ipairs(hna) do %> - <tr class="cbi-section-table-row cbi-rowstyle-<%=i%>"> - <td class="cbi-section-table-cell"><%=route.Destination%></td> + <tr class="cbi-section-table-row cbi-rowstyle-<%=i%> proto-<%=hna[k].proto%>"> + <td class="cbi-section-table-cell"><%=hna[k].destination%>/<%=hna[k].genmask%> </td> <td class="cbi-section-table-cell"> - <a href="http://<%=route.Gateway%>/cgi-bin-status.html"><%=route.Gateway%></a> - <% if route.Hostname then %> - / <a href="http://<%=route.Hostname%>/cgi-bin-status.html"><%=route.Hostname%></a> + <% if hna[k].proto == '6' then %> + <a href="http://[<%=hna[k].gateway%>]/cgi-bin-status.html"><%=hna[k].gateway%></a> + <% else %> + <a href="http://<%=hna[k].gateway%>/cgi-bin-status.html"><%=hna[k].gateway%></a> + <% end %> + <% if hna[k].hostname then %> + / <a href="http://<%=hna[k].hostname%>/cgi-bin-status.html"><%=hna[k].hostname%></a> <% end %> </td> + <% if hna[k].validityTime then + validity = hna[k].validityTime .. 's' + else + validity = '-' + end %> + + <td class="cbi-section-table-cell"><%=validity%></td> </tr> <% i = ((i % 2) + 1) end %> + </tbody> </table> </fieldset> + +<%+status-olsr/common_js%> <%+footer%> |