112 lines
3.5 KiB
HTML
112 lines
3.5 KiB
HTML
<%#
|
|
Copyright 2010 Jo-Philipp Wich <jow@openwrt.org>
|
|
Licensed to the public under the Apache License 2.0.
|
|
-%>
|
|
|
|
<%+header%>
|
|
|
|
<%
|
|
local fs = require "nixio.fs"
|
|
local has_ping6 = fs.access("/bin/ping6") or fs.access("/usr/bin/ping6")
|
|
local has_traceroute6 = fs.access("/usr/bin/traceroute6")
|
|
%>
|
|
|
|
<script type="text/javascript" src="<%=resource%>/cbi.js"></script>
|
|
<script type="text/javascript">//<![CDATA[
|
|
var stxhr = new XHR();
|
|
|
|
function update_status(field, proto)
|
|
{
|
|
var tool = field.name;
|
|
var addr = field.value;
|
|
var protocol = proto ? "6" : "";
|
|
|
|
var legend = document.getElementById('diag-rc-legend');
|
|
var output = document.getElementById('diag-rc-output');
|
|
|
|
if (legend && output)
|
|
{
|
|
output.innerHTML =
|
|
'<img src="<%=resource%>/icons/loading.gif" alt="<%:Loading%>" style="vertical-align:middle" /> ' +
|
|
'<%:Waiting for command to complete...%>'
|
|
;
|
|
|
|
legend.parentNode.style.display = 'block';
|
|
legend.style.display = 'inline';
|
|
|
|
stxhr.get('<%=url('freifunk/status')%>/diag_' + tool + protocol + '/' + addr, null,
|
|
function(x)
|
|
{
|
|
if (x.responseText)
|
|
{
|
|
legend.style.display = 'none';
|
|
output.innerHTML = String.format('<pre>%h</pre>', x.responseText);
|
|
}
|
|
else
|
|
{
|
|
legend.style.display = 'none';
|
|
output.innerHTML = '<span class="error"><%:Bad address specified!%></span>';
|
|
}
|
|
}
|
|
);
|
|
}
|
|
}
|
|
//]]></script>
|
|
|
|
<form method="post" action="<%=pcdata(luci.http.getenv("REQUEST_URI"))%>">
|
|
<div class="cbi-map">
|
|
<h2 name="content"><%:Diagnostics%></h2>
|
|
|
|
<fieldset class="cbi-section">
|
|
<legend><%:Network Utilities%></legend>
|
|
|
|
<br />
|
|
|
|
<div style="width:30%; float:left">
|
|
<input style="margin: 5px 0" type="text" value="dev.openwrt.org" name="ping" /><br />
|
|
<% if has_ping6 then %>
|
|
<select name="ping_proto" style="width:auto">
|
|
<option value="" selected="selected"><%:IPv4%></option>
|
|
<option value="6"><%:IPv6%></option>
|
|
</select>
|
|
<input type="button" value="<%:Ping%>" class="cbi-button cbi-button-apply" onclick="update_status(this.form.ping, this.form.ping_proto.selectedIndex)" />
|
|
<% else %>
|
|
<input type="button" value="<%:Ping%>" class="cbi-button cbi-button-apply" onclick="update_status(this.form.ping)" />
|
|
<% end %>
|
|
</div>
|
|
|
|
<div style="width:33%; float:left">
|
|
<input style="margin: 5px 0" type="text" value="dev.openwrt.org" name="traceroute" /><br />
|
|
<% if has_traceroute6 then %>
|
|
<select name="traceroute_proto" style="width:auto">
|
|
<option value="" selected="selected"><%:IPv4%></option>
|
|
<option value="6"><%:IPv6%></option>
|
|
</select>
|
|
<input type="button" value="<%:Traceroute%>" class="cbi-button cbi-button-apply" onclick="update_status(this.form.traceroute, this.form.traceroute_proto.selectedIndex)" />
|
|
<% else %>
|
|
<input type="button" value="<%:Traceroute%>" class="cbi-button cbi-button-apply" onclick="update_status(this.form.traceroute)" />
|
|
<% end %>
|
|
<% if not has_traceroute6 then %>
|
|
<p> </p>
|
|
<p><%:Install iputils-traceroute6 for IPv6 traceroute%></p>
|
|
<% end %>
|
|
</div>
|
|
|
|
<div style="width:33%; float:left;">
|
|
<input style="margin: 5px 0" type="text" value="openwrt.org" name="nslookup" /><br />
|
|
<input type="button" value="<%:Nslookup%>" class="cbi-button cbi-button-apply" onclick="update_status(this.form.nslookup)" />
|
|
</div>
|
|
|
|
<br style="clear:both" /><br />
|
|
|
|
</fieldset>
|
|
</div>
|
|
|
|
<fieldset class="cbi-section" style="display:none">
|
|
<legend id="diag-rc-legend"><%:Collecting data...%></legend>
|
|
<span id="diag-rc-output"></span>
|
|
</fieldset>
|
|
</form>
|
|
|
|
<%+footer%>
|