/** * returns the default UI for this page * @return string string with HTML for body of this page */ function disp_default() { global $_token; global $settings; $disp_body = ''; /* show VM network and VPN overview */ //VPN control UI $disp_body .= '<noscript><p>please enable javascript to activate the advanced UI</p></noscript>'; $disp_body .= '<div id="overview_net_control">'; $disp_body .= '<h2>Network Control</h2>'; $pass = array('handle user request - establish or disconnect VPN'); $tokens = $_token->pgen($pass); $disp_body .= '<form id="frm_vpn_connection" class="inline" action="/" method="post">'; $disp_body .= '<input type="hidden" name="cmd" value="network_control">'; $disp_body .= '<table class="control_box">'; $disp_body .= '<tr>'; $disp_body .= '<td>'; $disp_body .= VPN_get_connections('vpn_connections', array('initial' => 'Connect To', 'onchange' => 'vpn_connect();')) . "\n"; // Connect VPN $disp_body .= '</td>'; $disp_body .= '<td id="ele_vpn_connect">'; $disp_body .= ' <input type="submit" name="vpn_connect" value="Connect VPN">'; $disp_body .= '</td>'; $disp_body .= '<td>'; $disp_body .= ' <input type="submit" name="vpn_disconnect" value="Disconnect VPN">'; $disp_body .= '</td>'; $disp_body .= '</tr>'; $disp_body .= '</table>'; $disp_body .= '<input type="hidden" name="token" value="' . $tokens[0] . '">'; $disp_body .= " </form>\n"; $pass = array('handle user request - start or stop pia-daemon'); $tokens = $_token->pgen($pass); $disp_body .= '<form class="inline" action="/" method="post">'; $disp_body .= '<input type="hidden" name="cmd" value="network_control">'; $disp_body .= '<table class="control_box">'; $disp_body .= '<tr>'; $disp_body .= '<td id="ele_daemon_lbl">PIA VPN Daemon</td>'; $disp_body .= '<td>'; $disp_body .= ' <input type="submit" name="daemon_start" value="Start pia-daemon">'; $disp_body .= '</td>'; $disp_body .= '<td>'; $disp_body .= ' <input type="submit" name="daemon_stop" value="Stop pia-daemon">'; $disp_body .= '</td>'; $disp_body .= '</tr>'; $disp_body .= '</table>'; $disp_body .= '<input type="hidden" name="token" value="' . $tokens[0] . '">'; $disp_body .= " </form>\n"; if ($settings['SOCKS_INT_ENABLED'] == 'yes' || $settings['SOCKS_EXT_ENABLED'] == 'yes') { $pass = array('handle user request - start or restart SOCKS proxy'); $tokens = $_token->pgen($pass); $disp_body .= '<form id="frm_socks_proxy" class="inline" action="/" method="post">'; $disp_body .= '<input type="hidden" name="cmd" value="socks_proxy_control">'; $disp_body .= '<table class="control_box">'; $disp_body .= '<tr>'; $disp_body .= '<td id="ele_socks_lbl">'; $disp_body .= "SOCKS5 Proxy\n"; $disp_body .= '</td>'; $disp_body .= '</td>'; $disp_body .= '<td>'; $disp_body .= ' <input type="submit" name="socks_start" value="Start Proxy Server">'; $disp_body .= '</td>'; $disp_body .= '<td>'; $disp_body .= ' <input type="submit" name="socks_stop" value="Stop Proxy Server">'; $disp_body .= '</td>'; $disp_body .= '</tr>'; $disp_body .= '</table>'; $disp_body .= '<input type="hidden" name="token" value="' . $tokens[0] . '">'; $disp_body .= " </form>\n"; } //firewall control UI $pass = array('handle user request - start or stop the firewall'); $tokens = $_token->pgen($pass); $disp_body .= '<form class="inline" action="/" method="post">'; $disp_body .= '<input type="hidden" name="cmd" value="firewall_control">'; $disp_body .= '<table class="control_box">'; $disp_body .= '<tr>'; $disp_body .= '<td id="ele_firewall_lbl">'; $disp_body .= "Firewall\n"; $disp_body .= '</td>'; $disp_body .= '<td>'; $disp_body .= ' <input type="submit" name="firewall_enable" value="Restart Firewall">'; $disp_body .= '</td>'; $disp_body .= '<td>'; $disp_body .= ' <input type="submit" name="firewall_disable" value="Stop Forwarding">'; $disp_body .= '</td>'; $disp_body .= '</tr>'; $disp_body .= '</table>'; $disp_body .= '<input type="hidden" name="token" value="' . $tokens[0] . '">'; $disp_body .= "</form>\n"; //OS control UI $pass = array('handle user request - shutdown or reboot the OS'); $tokens = $_token->pgen($pass); $disp_body .= '<form class="inline" action="/" method="post">'; $disp_body .= '<input type="hidden" name="cmd" value="os_control">'; $disp_body .= '<table class="control_box">'; $disp_body .= '<tr>'; $disp_body .= '<td> </td><td> </td>'; //empty row to move buttons out of the way $disp_body .= '</tr>'; $disp_body .= '<tr>'; $disp_body .= '<td id="ele_os_lbl">'; $disp_body .= "Operating System\n"; $disp_body .= '</td>'; $disp_body .= '<td>'; $disp_body .= ' <input type="submit" name="vm_restart" value="Restart PIA-VM">'; $disp_body .= '</td>'; $disp_body .= '<td>'; $disp_body .= ' <input type="submit" name="vm_shutdown" value="Shutdown PIA-VM">'; $disp_body .= '</td>'; $disp_body .= '</tr>'; $disp_body .= '</table>'; $disp_body .= '<input type="hidden" name="token" value="' . $tokens[0] . '">'; $disp_body .= "</form>\n"; $disp_body .= "</div>\n"; /* show system status */ $disp_body .= '<div id="overview_net_status">'; $disp_body .= '<h2>System Status</h2>'; $disp_body .= '<div id="system_status">' . VM_get_status() . '</div>'; $disp_body .= "</div>\n"; $disp_body .= '<script type="text/javascript">' . 'var timr1=setInterval(function(){' . 'var _overview = new OverviewObj();' . '_overview.refresh_status();' . '_overview.clean_feedback();' . '},' . $settings['WEB_UI_REFRESH_TIME'] . ');' . 'var _overview = new OverviewObj();' . '_overview.set_js_network_control();' . '/* handle the "connect" event on the overview page */ function vpn_connect(){ var submit_form = document.getElementById(\'frm_vpn_connection\'); var ele_conn = document.createElement((\'input\')); ele_conn.setAttribute(\'type\', \'hidden\'); ele_conn.setAttribute(\'name\', \'vpn_connect\'); submit_form.appendChild(ele_conn); submit_form.submit(); }' . '</script>'; return $disp_body; }
/* @var $_auth AuthenticateUser */ /* @var $_token token */ $inc_dir = './include/'; require_once $inc_dir . 'basic.php'; $type = isset($_REQUEST['type']) ? $_REQUEST['type'] : ''; $value = isset($_REQUEST['value']) ? $_REQUEST['value'] : ''; header("Content-Type:text/plain"); switch ($type) { case 'online': /* used by scripts to determine if system is ready */ echo 'OK'; break; case 'JSON': echo json_encode(VM_get_status('array')); break; case 'value': $ar = VM_get_status('array'); //var_dump($ar); $value = trim(strtolower($value)); reset($ar); foreach ($ar as $k => $v) { if (trim(strtolower($k)) == $value) { echo $ar[$k]; die; } } break; default: echo VM_get_status(); break; }