';
switch($page) {
case "wlan0_info":
exec('sudo /usr/bin/wicd-cli -d -y');
exec('/sbin/ifconfig wlan0',$return);
$strFlan0 = implode(" ",$return);
$strFlan0 = preg_replace('/\s\s+/', ' ', $strWlan0);
exec('/sbin/iwconfig wlan0',$return);
$strWlan0 = implode(" ",$return);
$strWlan0 = preg_replace('/\s\s+/', ' ', $strWlan0);
preg_match('/HWaddr ([0-9a-f:]+)/i',$strWlan0,$result);
$strHWAddress = $result[1];
preg_match('/inet addr:([0-9.]+)/i',$strWlan0,$result);
$strIPAddress = $result[1];
preg_match('/Mask:([0-9.]+)/i',$strWlan0,$result);
$strNetMask = $result[1];
preg_match('/RX packets:(\d+)/',$strWlan0,$result);
$strRxPackets = $result[1];
preg_match('/TX packets:(\d+)/',$strWlan0,$result);
$strTxPackets = $result[1];
preg_match('/RX bytes:(\d+ \(\d+.\d+ [K|M|G]iB\))/i',$strWlan0,$result);
$strRxBytes = $result[1];
preg_match('/TX Bytes:(\d+ \(\d+.\d+ [K|M|G]iB\))/i',$strWlan0,$result);
$strTxBytes = $result[1];
preg_match('/ESSID:\"([a-zA-Z0-9\_\-\s]+)\"/i',$strWlan0,$result);
$strSSID = str_replace('"','',$result[1]);
preg_match('/Access Point: ([0-9a-f:]+)/i',$strWlan0,$result);
$strBSSID = $result[1];
preg_match('/Bit Rate=([0-9.0-9]+ Mb\/s)/i',$strWlan0,$result);
$strBitrate = $result[1];
preg_match('/Tx-Power=([0-9]+ dBm)/i',$strWlan0,$result);
$strTxPower = $result[1];
preg_match('/Link Quality=([0-9]+\/[0-9]+)/i',$strWlan0,$result);
$strLinkQuality = $result[1];
preg_match('/Signal Level=(-[0-9]+ dBm)/i',$strWlan0,$result);
$strSignalLevel = $result[1];
if(strpos($strWlan0, "UP") !== false && strpos($strWlan0, "RUNNING") !== false) {
$strStatus = '
Interface is up';
} else {
$strStatus = '
Interface is down';
}
if(isset($_GET['ifdown_wlan0'])) {
exec('ifconfig wlan0 | grep -i running | wc -l',$test);
if($test[0] == 1) {
exec('/sbin/ifdown wlan0',$return);
} else {
echo 'Interface already down';
}
} elseif(isset($_GET['ifup_wlan0'])) {
exec('ifconfig wlan0 | grep -i running | wc -l',$test);
if($test[0] == 0) {
exec('/sbin/ifup wlan0',$return);
} else {
echo 'Interface already up';
}
}
echo '
Interface Name : wlan0
Interface Status : ' . $strStatus . '
IP Address : ' . $strIPAddress . '
Subnet Mask : ' . $strNetMask . '
Mac Address : ' . $strHWAddress . '
Received Packets : ' . $strRxPackets . '
Received Bytes : ' . $strRxBytes . '
Transferred Packets : ' . $strTxPackets . '
Transferred Bytes : ' . $strTxBytes . '
Connected To : ' . $strSSID . '
AP Mac Address : ' . $strBSSID . '
Bitrate : ' . $strBitrate . '
Transmit Power : ' . $strTxPower .'
Link Quality : ' . $strLinkQuality . '
Signal Level : ' . $strSignalLevel . '
';
break;
case "wpa_conf":
exec('/bin/cat /etc/wpa_supplicant/wpa_supplicant.conf',$return);
$ssid = array();
$psk = array();
foreach($return as $a) {
if(preg_match('/SSID/i',$a)) {
$arrssid = explode("=",$a);
$ssid[] = str_replace('"','',$arrssid[1]);
}
if(preg_match('/\#psk/i',$a)) {
$arrpsk = explode("=",$a);
$psk[] = str_replace('"','',$arrpsk[1]);
}
}
$numSSIDs = count($ssid);
$output = '
';
echo $output;
echo '';
if(isset($_POST['SaveWPAPSKSettings'])) {
$config = 'ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
';
$networks = $_POST['Networks'];
for($x = 0; $x < $networks; $x++) {
$network = '';
$ssid = escapeshellarg($_POST['ssid'.$x]);
$psk = escapeshellarg($_POST['psk'.$x]);
exec('wpa_passphrase '.$ssid. ' ' . $psk,$network);
foreach($network as $b) {
$config .= "$b
";
}
}
exec("echo '$config' > /tmp/wifidata",$return);
system('sudo /bin/cp /tmp/wifidata /etc/wpa_supplicant/wpa_supplicant.conf',$returnval);
if($returnval == 0) {
echo "Wifi Settings Updated Successfully";
} else {
echo "Wifi settings failed to be updated";
}
} elseif(isset($_POST['Connect'])) {
echo "Got here ";
} elseif(isset($_POST['Scan'])) {
$return = '';
exec('sudo /usr/bin/wicd-cli -y -S -l',$return);
for($shift = 0; $shift < 1; $shift++ ) {
array_shift($return);
}
echo "
";
}
break;
}
?>