Client settings
					
						
					2 ) {	
								exec( 'wpa_passphrase '.$ssid. ' ' . $psk,$network );
								foreach($network as $b) {
				$config .= "$b
";
								}
							}
						}
						exec( "echo '$config' > /tmp/wifidata", $return );
						system( 'sudo cp /tmp/wifidata ' . RASPI_WPA_SUPPLICANT_CONFIG, $returnval );
						if( $returnval == 0 ) {
							echo '
Wifi settings updated successfully
									
';
						} else {
							echo '
Wifi settings failed to be updated
									
';
						}
					// scan networks
					} elseif( isset($_POST['Scan']) ) {
						$return = '';
						exec( 'sudo wpa_cli scan',$return );
						sleep(3);
						exec( 'sudo wpa_cli scan_results',$return );
						for( $shift = 0; $shift < 4; $shift++ ) {
							array_shift($return);
						}
						// display output
						echo '
';
	} else {
		$status = '
HostAPD is running
					
';
	}
	$arrConfig = array();
	$arrChannel = array('a','b','g');
	$arrSecurity = array( 1 => 'WPA', 2 => 'WPA2',3=> 'WPA+WPA2');
	$arrEncType = array('TKIP' => 'TKIP', 'CCMP' => 'CCMP', 'TKIP CCMP' => 'TKIP+CCMP');
	foreach( $return as $a ) {
		if( $a[0] != "#" ) {
			$arrLine = explode( "=",$a) ;
			$arrConfig[$arrLine[0]]=$arrLine[1];
		}
	};
	?>
	
	
    	           
			 Configure hotspot
            
        
        
        	
            
            
           	
           		
            	
            		
            		Basic settings
					 
				
            		Security settings
            		
						
            			
                		
						
					 
					
						
						
						
						
					 
					
            	 
				
				
				';
				} else {
					echo '
';
				};
				?>
				
			
 
	     
	    
	 
	 
Dnsmasq is not running
 ';
	} else {
		$status = '
Dnsmasq is running
';
	}
	?>
	
	
    	           
			 Configure DHCP
            
        
        
        
            
        
        
		
		
		
		
		Client list
		
			
			
				Active DHCP leases
			
			
			
				
					
						
							
								| Expire time | MAC Address | IP Address | Host name | Client ID | 
						
						
							
								' . $lease_item . '';
									}
									echo '
';
								};
								?>
							
						
					
				 
			 
			 
		 
		 /tmp/dhcpddata',$temp );
			system( 'sudo cp /tmp/dhcpddata '. RASPI_DNSMASQ_CONFIG, $return );
			
			if( $return == 0 ) {
				echo "Dnsmasq configuration updated successfully";
			} else {
				echo "Dnsmasq configuration failed to be updated";
			}
		}
		if( isset( $_POST['startdhcpd'] ) ) {
			$line = system('sudo /etc/init.d/dnsmasq start',$return);
			echo "Attempting to start dnsmasq";
		}
		if( isset($_POST['stopdhcpd'] ) ) {
			$line = system('sudo /etc/init.d/dnsmasq stop',$return);
			echo "Stopping dnsmasq";
		}
		?>
		
 
		 
		 
		
             
		 
	 
OpenVPN is not running
					
 ';
	} else {
		$status = '
OpenVPN is running
					
';
	}
	// parse client settings
	foreach( $returnClient as $a ) {
		if( $a[0] != "#" ) {
			$arrLine = explode( " ",$a) ;
			$arrClientConfig[$arrLine[0]]=$arrLine[1];
		}
	}
	// parse server settings
	foreach( $returnServer as $a ) {
		if( $a[0] != "#" ) {
			$arrLine = explode( " ",$a) ;
			$arrServerConfig[$arrLine[0]]=$arrLine[1];
		}
	}
	?>
	
';
	} else {
		$status = '
TOR is running
					
';
	}
	foreach( $return as $a ) {
		if( $a[0] != "#" ) {
			$arrLine = explode( " ",$a) ;
			$arrConfig[$arrLine[0]]=$arrLine[1];
		}
	}
	?>
	
 1)? 's ':' '); }
	if ($hours   != 0) { $uptime .= $hours   . ' hour'   . (($hours   > 1)? 's ':' '); }
	if ($minutes != 0) { $uptime .= $minutes . ' minute' . (($minutes > 1)? 's ':' '); }
	// mem used
	exec("free -m | awk '/Mem:/ { total=$2 } /buffers\/cache/ { used=$3 } END { print used/total*100}'", $memarray);
	$memused = floor($memarray[0]);
	if     ($memused > 90) { $memused_status = "danger";  }
	elseif ($memused > 75) { $memused_status = "warning"; }
	elseif ($memused >  0) { $memused_status = "success"; }
	// cpu load
	$cores   = exec("grep -c ^processor /proc/cpuinfo");
        $loadavg = exec("awk '{print $1}' /proc/loadavg");
	$cpuload = floor(($loadavg * 100) / $cores);
	if     ($cpuload > 90) { $cpuload_status = "danger";  }
	elseif ($cpuload > 75) { $cpuload_status = "warning"; }
	elseif ($cpuload >  0) { $cpuload_status = "success"; }
	?>
	
	
	
	 System
	
		System Rebooting Now!
';
			$result = shell_exec("sudo /sbin/reboot");
		}
		if (isset($_POST['system_shutdown'])) {
			echo '
System Shutting Down Now!
';
			$result = shell_exec("sudo /sbin/shutdown -h now");
		}
		?>
		
		
		
		
			System Information
			Hostname
 
			Uptime
   
			Memory Used
				
			CPU Load
				
		 
		 
		 
		 
		
	 
	 
	 
	 
	 /tmp/hostapddata", $return );
		system( "sudo cp /tmp/hostapddata " . RASPI_HOSTAPD_CONFIG, $return );
		
			if( $return == 0 ) {
			echo "Wifi Hotspot settings saved";
		} else {
			echo "Wifi Hotspot settings failed to be saved";
		}
	} elseif( isset($_POST['SaveOpenVPNSettings']) ) {
		// TODO
	} elseif( isset($_POST['SaveTORProxySettings']) ) {
		// TODO
	} elseif( isset($_POST['StartHotspot']) ) {
		echo "Attempting to start hotspot";
		exec( 'sudo /etc/init.d/hostapd start', $return );
		foreach( $return as $line ) {
			echo $line."
";
		}
	} elseif( isset($_POST['StopHotspot']) ) {
		echo "Attempting to stop hotspot";
		exec( 'sudo /etc/init.d/hostapd stop', $return );
		foreach( $return as $line ) {
			echo $line."
";
		}
	} elseif( isset($_POST['StartOpenVPN']) ) {
		echo "Attempting to start openvpn";
		exec( 'sudo /etc/init.d/openvpn start', $return );
		foreach( $return as $line ) {
			echo $line."
";
		}
	} elseif( isset($_POST['StopOpenVPN']) ) {
		echo "Attempting to stop openvpn";
		exec( 'sudo /etc/init.d/openvpn stop', $return );
		foreach( $return as $line ) {
			echo $line."
";
		}
	} elseif( isset($_POST['StartTOR']) ) {
		echo "Attempting to start TOR";
		exec( 'sudo /etc/init.d/tor start', $return );
		foreach( $return as $line ) {
			echo $line."
";
		}
	} elseif( isset($_POST['StopTOR']) ) {
		echo "Attempting to stop TOR";
		exec( 'sudo /etc/init.d/tor stop', $return );
		foreach( $return as $line ) {
			echo $line."