Commit dd47b891 authored by Ad Schellevis's avatar Ad Schellevis

(legacy) refactor status_wireless.php

parent 1571fa31
......@@ -30,16 +30,29 @@
require_once("guiconfig.inc");
require_once("interfaces.inc");
include("head.inc");
$if = $_POST['if'];
if($_GET['if'] <> "")
$if = $_GET['if'];
if ($_SERVER['REQUEST_METHOD'] === 'GET') {
if(!empty($_GET['if'])) {
$if = htmlspecialchars($_GET['if']);
}
if (!empty($_GET['savemsg']) && $_GET['savemsg'] == 'rescan') {
$savemsg = gettext("Rescan has been initiated in the background. Refresh this page in 10 seconds to see the results.");
}
} elseif ($_SERVER['REQUEST_METHOD'] === 'POST') {
if (!empty($_POST['if'])) {
$if = htmlspecialchars($_POST['if']);
}
$rwlif = escapeshellarg(get_real_interface($if));
if(!empty($_POST['rescanwifi'])) {
mwexec_bg("/sbin/ifconfig {$rwlif} scan 2>&1");
header("Location: status_wireless.php?if=" . $if. "&savemsg=rescan");
exit;
}
}
$ciflist = get_configured_interface_with_descr();
if(empty($if)) {
/* Find the first interface
that is wireless */
/* Find the first wireless interface */
foreach($ciflist as $interface => $ifdescr) {
if(is_interface_wireless(get_real_interface($interface))) {
$if = $interface;
......@@ -47,69 +60,57 @@ if(empty($if)) {
}
}
}
$rwlif = escapeshellarg(get_real_interface($if));
include("head.inc");
?>
<body>
<?php include("fbegin.inc"); ?>
<section class="page-content-main">
<div class="container-fluid">
<div class="row">
<section class="col-xs-12">
<?php if (isset($savemsg)) print_info_box($savemsg); ?>
<?php
<?php
$tab_array = array();
foreach($ciflist as $interface => $ifdescr) {
if (is_interface_wireless(get_real_interface($interface))) {
$enabled = false;
if($if == $interface)
if($if == $interface) {
$enabled = true;
$tab_array[] = array(gettext("Status") . " ({$ifdescr})", $enabled, "status_wireless.php?if={$interface}");
}
$tab_array[] = array(gettext("Status") . " ({$ifdescr})", $enabled, "status_wireless.php?if={$interface}");
}
$rwlif = get_real_interface($if);
if($_POST['rescanwifi'] <> "") {
mwexec_bg("/sbin/ifconfig {$rwlif} scan 2>&1");
$savemsg = gettext("Rescan has been initiated in the background. Refresh this page in 10 seconds to see the results.");
}
if (isset($savemsg)) print_info_box($savemsg);
display_top_tabs($tab_array);
?>
<section class="col-xs-12">
?>
<div class="content-box">
<form action="status_wireless.php" method="post" name="iform" id="iform">
<input type="hidden" name="if" id="if" value="<?php echo htmlspecialchars($if); ?>">
<div class="col-xs-12">
<input type="submit" name="rescanwifi" id="rescanwifi" value="Rescan" class="btn btn-primary"/>
<p><?php echo gettext("Nearby access points or ad-hoc peers"); ?></p>
</div>
<form method="post" name="iform" id="iform">
<input type="hidden" name="if" id="if" value="<?=$if;?>">
<header class="content-box-head container-fluid">
<h3><?=gettext("Nearby access points or ad-hoc peers"); ?></h3>
</header>
<div class="table-responsive">
<table class="table table-striped table-sort">
<table class="table table-striped">
<thead>
<tr>
<td>SSID</td>
<td>BSSID</td>
<td>CHAN</td>
<td>RATE</td>
<td>RSSI</td>
<td>INT</td>
<td>CAPS</td>
<th><?=gettext("SSID");?></th>
<th><?=gettext("BSSID");?></th>
<th><?=gettext("CHAN");?></th>
<th><?=gettext("RATE");?></th>
<th><?=gettext("RSSI");?></th>
<th><?=gettext("INT");?></th>
<th><?=gettext("CAPS");?></th>
</tr>
</thead>
<tbody>
<?php
<?php
exec("/sbin/ifconfig {$rwlif} list scan 2>&1", $states, $ret);
/* Skip Header */
array_shift($states);
$counter=0;
foreach($states as $state) {
foreach($states as $state):
/* Split by Mac address for the SSID Field */
$split = preg_split("/([0-9a-f][[0-9a-f]\:[0-9a-f][[0-9a-f]\:[0-9a-f][[0-9a-f]\:[0-9a-f][[0-9a-f]\:[0-9a-f][[0-9a-f]\:[0-9a-f][[0-9a-f])/i", $state);
preg_match("/([0-9a-f][[0-9a-f]\:[0-9a-f][[0-9a-f]\:[0-9a-f][[0-9a-f]\:[0-9a-f][[0-9a-f]\:[0-9a-f][[0-9a-f]\:[0-9a-f][[0-9a-f])/i", $state, $bssid);
......@@ -122,78 +123,87 @@ if(empty($if)) {
$rssi = $split[3];
$int = $split[4];
$caps = "$split[5] $split[6] $split[7] $split[8] $split[9] $split[10] $split[11] ";
print "<tr>";
print "<td>{$ssid}</td>";
print "<td>{$bssid}</td>";
print "<td>{$channel}</td>";
print "<td>{$rate}</td>";
print "<td>{$rssi}</td>";
print "<td>{$int}</td>";
print "<td>{$caps}</td>";
print "</tr>\n";
}
?>
?>
<tr>
<td><?=$ssid;?></td>
<td><?=$bssid;?></td>
<td><?=$channel;?></td>
<td><?=$rate;?></td>
<td><?=$rssi;?></td>
<td><?=$int;?></td>
<td><?=$caps;?></td>
</tr>
<?php
endforeach;?>
</tbody>
</table>
</div>
<br/>
<div class="table-responsive">
<p><?php echo gettext("Associated or ad-hoc peers"); ?></p>
<table class="table table-striped sortable" colspan="3" cellpadding="3" width="100%">
<header class="content-box-head container-fluid">
<h3><?=gettext("Associated or ad-hoc peers"); ?></h3>
</header>
<table class="table table-striped">
<thead>
<tr>
<td>ADDR</td>
<td>AID</td>
<td>CHAN</td>
<td>RATE</td>
<td>RSSI</td>
<td>IDLE</td>
<td>TXSEQ</td>
<td>RXSEQ</td>
<td>CAPS</td>
<td>ERP</td>
<th><?=gettext("ADDR");?></th>
<th><?=gettext("AID");?></th>
<th><?=gettext("CHAN");?></th>
<th><?=gettext("RATE");?></th>
<th><?=gettext("RSSI");?></th>
<th><?=gettext("IDLE");?></th>
<th><?=gettext("TXSEQ");?></th>
<th><?=gettext("RXSEQ");?></th>
<th><?=gettext("CAPS");?></th>
<th><?=gettext("ERP");?></th>
</tr>
</thead>
<tbody>
<?php
<?php
$states = array();
exec("/sbin/ifconfig {$rwlif} list sta 2>&1", $states, $ret);
array_shift($states);
$counter=0;
foreach($states as $state) {
$split = preg_split("/[ ]+/i", $state);
/* Split the rest by using spaces for this line using the 2nd part */
print "<tr>";
print "<td>{$split[0]}</td>";
print "<td>{$split[1]}</td>";
print "<td>{$split[2]}</td>";
print "<td>{$split[3]}</td>";
print "<td>{$split[4]}</td>";
print "<td>{$split[5]}</td>";
print "<td>{$split[6]}</td>";
print "<td>{$split[7]}</td>";
print "<td>{$split[8]}</td>";
print "<td>{$split[9]}</td>";
print "</tr>\n";
}
/* XXX: what stats to we get for adhoc mode? */
?>
foreach($states as $state):
$split = preg_split("/[ ]+/i", $state);?>
<tr>
<td><?=$split[0];?></td>
<td><?=$split[1];?></td>
<td><?=$split[2];?></td>
<td><?=$split[3];?></td>
<td><?=$split[4];?></td>
<td><?=$split[5];?></td>
<td><?=$split[6];?></td>
<td><?=$split[7];?></td>
<td><?=$split[8];?></td>
<td><?=$split[9];?></td>
</tr>
<?php
endforeach;?>
</tbody>
</table>
</div>
<div class="table-responsive">
<table class="table table-striped">
<tr>
<td>
<input type="submit" name="rescanwifi" value="<?=gettext("Rescan");?>" class="btn btn-primary"/>
</td>
</tr>
<tfoot>
<tr>
<td>
<b><?=gettext('Flags:') ?></b> <?=gettext('A = authorized, E = Extended Rate (802.11g), P = Power save mode') ?><br />
<b><?=gettext('Capabilities:') ?></b> <?=gettext('E = ESS (infrastructure mode), I = IBSS (ad-hoc mode), P = privacy (WEP/TKIP/AES), S = Short preamble, s = Short slot time') ?>
</td>
</tr>
</tfoot>
</table>
</div>
</form>
</div>
</section>
</div>
</div>
</section>
</section>
<?php include("foot.inc"); ?>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment