<!DOCTYPE html> <html> <!-- noVNC Example: Automatically connect on page load. Copyright (C) 2010 Joel Martin Licensed under LGPL-3 (see LICENSE.txt) Connect parameters are provided in query string: http://example.com/?host=HOST&port=PORT&encrypt=1&true_color=1 --> <head> <title>noVNC</title> <meta http-equiv="X-UA-Compatible" content="chrome=1"> <link rel="stylesheet" href="include/plain.css" title="plain"> <!-- <script type='text/javascript' src='http://getfirebug.com/releases/lite/1.2/firebug-lite-compressed.js'></script> --> <script src="include/vnc.js"></script> </head> <body style="margin: 0px;"> <div id="VNC_screen"> <div id="VNC_status_bar" class="VNC_status_bar" style="margin-top: 0px;"> <table border=0 width="100%"><tr> <td><div id="VNC_status">Loading</div></td> <td width="1%"><div id="VNC_buttons"> <input type=button value="Send CtrlAltDel" id="sendCtrlAltDelButton"> </div></td> </tr></table> </div> <canvas id="VNC_canvas" width="640px" height="20px"> Canvas not supported. </canvas> </div> <script> /*jslint white: false */ /*global window, $, Util, RFB, */ "use strict"; var rfb; function setPassword() { rfb.sendPassword($D('password_input').value); return false; } function sendCtrlAltDel() { rfb.sendCtrlAltDel(); return false; } function updateState(rfb, state, oldstate, msg) { var s, sb, cad, klass; s = $D('VNC_status'); sb = $D('VNC_status_bar'); cad = $D('sendCtrlAltDelButton'); switch (state) { case 'failed': case 'fatal': klass = "VNC_status_error"; break; case 'normal': klass = "VNC_status_normal"; break; case 'disconnected': case 'loaded': klass = "VNC_status_normal"; break; case 'password': msg = '<form onsubmit="return setPassword();"'; msg += ' style="margin-bottom: 0px">'; msg += 'Password Required: '; msg += '<input type=password size=10 id="password_input" class="VNC_status">'; msg += '<\/form>'; klass = "VNC_status_warn"; break; default: klass = "VNC_status_warn"; } if (state === "normal") { cad.disabled = false; } else { cad.disabled = true; } if (typeof(msg) !== 'undefined') { sb.setAttribute("class", klass); s.innerHTML = msg; } } window.onload = function () { var host, port, password; $D('sendCtrlAltDelButton').onclick = sendCtrlAltDel; host = WebUtil.getQueryVar('host', null); port = WebUtil.getQueryVar('port', null); password = WebUtil.getQueryVar('password', ''); if ((!host) || (!port)) { updateState('failed', "Must specify host and port in URL"); return; } rfb = new RFB({'target': $D('VNC_canvas'), 'encrypt': WebUtil.getQueryVar('encrypt', false), 'true_color': WebUtil.getQueryVar('true_color', true), 'local_cursor': WebUtil.getQueryVar('cursor', true), 'shared': WebUtil.getQueryVar('shared', true), 'updateState': updateState}); rfb.connect(host, port, password); }; </script> </body> </html>