123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105 |
- <!--
- noVNC Example: Automatically connect on page load.
- Connect parameters are provided in query string:
- http://example.com/?host=HOST&port=PORT&encrypt=1&true_color=1
- -->
- <html>
- <head>
- <title>VNC Client</title>
- <link rel="stylesheet" href="include/plain.css" TITLE="plain">
- <link rel="Alternate StyleSheet" href="include/black.css" TITLE="Black">
- <!--
- <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"
- onclick="sendCtrlAltDel();"></div></td>
- </tr></table>
- </div>
- <canvas id="VNC_canvas" width="640px" height="20px">
- Canvas not supported.
- </canvas>
- </div>
- </body>
- <script>
- function setPassword() {
- RFB.sendPassword($('password_input').value);
- return false;
- }
- function sendCtrlAltDel() {
- RFB.sendCtrlAltDel();
- }
- function updateState(state, msg) {
- var s, sb, klass, html;
- s = $('VNC_status');
- sb = $('VNC_status_bar');
- cad = $('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>';
- // Fall through
- 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;
- url = document.location.href;
- host = (url.match(/host=([A-Za-z0-9.\-]*)/) || ['',''])[1];
- port = (url.match(/port=([0-9]*)/) || ['',''])[1];
- password = (url.match(/password=([^&#]*)/) || ['',''])[1];
- if ((!host) || (!port)) {
- updateState('failed',
- "Must specify host and port in URL");
- return;
- }
- RFB.setEncrypt((url.match(/encrypt=([A-Za-z0-9]*)/) || ['',1])[1]);
- RFB.setBase64((url.match(/base64=([A-Za-z0-9]*)/) || ['',1])[1]);
- RFB.setTrueColor((url.match(/true_color=([A-Za-z0-9]*)/) || ['',1])[1]);
- RFB.setCursor((url.match(/cursor=([A-Za-z0-9]*)/) || ['',true])[1]);
- RFB.setUpdateState(updateState);
- RFB.load();
- RFB.connect(host, port, password);
- }
- </script>
- </html>
|