diff options
Diffstat (limited to 'applications/luci-app-olsr/luasrc/view/status-olsr/hna.htm')
-rw-r--r-- | applications/luci-app-olsr/luasrc/view/status-olsr/hna.htm | 129 |
1 files changed, 129 insertions, 0 deletions
diff --git a/applications/luci-app-olsr/luasrc/view/status-olsr/hna.htm b/applications/luci-app-olsr/luasrc/view/status-olsr/hna.htm new file mode 100644 index 0000000000..689bafdfae --- /dev/null +++ b/applications/luci-app-olsr/luasrc/view/status-olsr/hna.htm @@ -0,0 +1,129 @@ +<%# +LuCI - Lua Configuration Interface +Copyright 2008 Steven Barth <steven@midlink.org> +Copyright 2008 Jo-Philipp Wich <xm@leipzig.freifunk.net> +Copyright 2011 Manuel Munz <freifunk at somakoma dot de> + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +-%> + +<% +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> + + </thead> + <tbody id="olsrd_hna"> + <% for k, route in ipairs(hna) do %> + + <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"> + <% 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%> |