diff options
-rw-r--r-- | data/test.html | 319 |
1 files changed, 264 insertions, 55 deletions
diff --git a/data/test.html b/data/test.html index 929d096..860851f 100644 --- a/data/test.html +++ b/data/test.html @@ -1,86 +1,295 @@ -<HTML> -<HEAD> -<TITLE>SPICE xpi test page</TITLE> -</HEAD> -<BODY onload='BodyLoad()' onunload='BodyUnload()'> +<html> +<head> +<title>Spice-XPI test page</title> +<style type="text/css"> + + caption { + text-align: left; + font-weight: bold; + } + + th { + text-align: left; + } + +</style> +</head> +<body onload='bodyLoad()' onunload='bodyUnload()'> <center> <h1>SPICE xpi test page</h1> </center> -SPICE xpi test page. -<br><br> +SPICE xpi test page. Disabled (greyed out) values are passed to SPICE xpi as empty variables, asterisk-marked ones are passed when you press button marked in the same fashion. +<br /> <center> -<embed type="application/x-spice" width=0 height=0><br> +<embed type="application/x-spice" width="0" height="0" id="spice-xpi" /><br /> -<script> +<script type="text/javascript"> -var embed = document.embeds[0]; +var embed = document.getElementById("spice-xpi"); -function BodyLoad() { - document.getElementById("log").innerHTML += "BodyLoad<br>"; +function bodyLoad() +{ + log("BodyLoad"); } -function BodyUnload() { - document.getElementById("log").innerHTML += "BodyUnload<br>"; +function bodyUnload() +{ + log("BodyUnload"); } -function Execute() +function connect() { - document.getElementById("log").innerHTML += "Execute<br>"; - embed.hostIP = document.all["Host"].value; - embed.port = document.all["Port"].value; - embed.SecurePort = document.all["SecurePort"].value; - embed.Password = document.all["Password"].value; - embed.HostSubject = document.all["HostSubject"].value; - embed.TrustStore = document.all["TrustStore"].value; - embed.fullScreen = false; - embed.AdminConsole = (document.all["AdminConsole"].value == "1"); - embed.HotKeys = document.all["HotKeys"].value; - embed.SendCtrlAltDelete = (document.all["SendCtrlAltDelete"].value == "1") - embed.fAudio = true; - embed.connect(); + setConnectVars(); + log("connect: host '" + embed.hostIP + "', port '" + embed.port + "', secure port '" + embed.SecurePort + "', USB port '" + embed.UsbListenPort + "'"); + embed.connect(); } -function Status() +function disconnect() { - var status = embed.ConnectedStatus(); - document.getElementById("log").innerHTML += "ConnectedStatus = " + status + "<br>"; + embed.disconnect(); + log("disconnected by page"); } -function Show() +/* FIXME +function OnDisconnected(msg) { - embed.show(); - document.getElementById("log").innerHTML += "Show was called<br>"; + log(msg); +} +*/ + +function log(message) +{ + var log = document.getElementById("log"); + var ts = new Date().toString() + ": "; + var newRow = document.createElement("tr"); + var tsCell = document.createElement("td"); + var msgCell = document.createElement("td"); + + tsCell.innerHTML = ts; + msgCell.innerHTML = message; + + newRow.appendChild(tsCell); + newRow.appendChild(msgCell); + log.appendChild(newRow); +} + +function setLanguageStrings() +{ + section = document.getElementById("LanguageStringsSectionToggled").checked == true ? document.getElementById("LanguageStringsSection").value : ""; + lang = document.getElementById("LanguageStringsLangToggled").checked == true ? document.getElementById("LanguageStringsLang").value : ""; + embed.SetLanguageStrings(section, lang) + log("Language Strings were set to '" + section + "' '" + lang + "'"); +} + +function setUsbFilter() +{ + filter = document.getElementById("UsbFilterToggled").checked == true ? document.getElementById("UsbFilter").value : ""; + embed.SetUsbFilter(filter); + log("USB Filter String was set to: '" + filter + "'"); +} + +function setConnectVars() +{ + if(document.getElementById("hostIPToggled").checked == true) { embed.hostIP = document.getElementById("hostIP").value; } else { embed.hostIP = ""; } + if(document.getElementById("portToggled").checked == true) { embed.port = document.getElementById("port").value; } else { embed.port = ""; } + if(document.getElementById("SecurePortToggled").checked == true) { embed.SecurePort = document.getElementById("SecurePort").value; } else { embed.SecurePort = ""; } + if(document.getElementById("PasswordToggled").checked == true) { embed.Password = document.getElementById("Password").value; } else { embed.Password = ""; } + if(document.getElementById("CipherSuiteToggled").checked == true) { embed.CipherSuite = document.getElementById("CipherSuite").value; } else { embed.CipherSuite = ""; } + if(document.getElementById("SSLChannelsToggled").checked == true) { embed.SSLChannels = document.getElementById("SSLChannels").value; } else { embed.SSLChannels = ""; } + if(document.getElementById("TrustStoreToggled").checked == true) { embed.TrustStore = document.getElementById("TrustStore").value; } else { embed.TrustStore = ""; } + if(document.getElementById("HostSubjectToggled").checked == true) { embed.HostSubject = document.getElementById("HostSubject").value; } else { embed.HostSubject = ""; } + if(document.getElementById("fullScreenToggled").checked == true) { embed.fullScreen = document.getElementById("fullScreen").checked; } else { embed.fullScreen = ""; } + if(document.getElementById("AdminConsoleToggled").checked == true) { embed.AdminConsole = document.getElementById("AdminConsole").checked; } else { embed.AdminConsole = ""; } + if(document.getElementById("TitleToggled").checked == true) { embed.Title = document.getElementById("Title").value; } else { embed.Title = ""; } + if(document.getElementById("dynamicMenuToggled").checked == true) { embed.dynamicMenu = document.getElementById("dynamicMenu").value; } else { embed.dynamicMenu = ""; } + if(document.getElementById("NumberOfMonitorsToggled").checked == true) { embed.NumberOfMonitors = document.getElementById("NumberOfMonitors").value; } else { embed.NumberOfMonitors = ""; } + if(document.getElementById("GuestHostNameToggled").checked == true) { embed.GuestHostName = document.getElementById("GuestHostName").value; } else { embed.GuestHostName = ""; } + if(document.getElementById("HotKeyToggled").checked == true) { embed.HotKey = document.getElementById("HotKey").value; } else { embed.HotKey = ""; } + if(document.getElementById("NoTaskMgrExecutionToggled").checked == true) { embed.NoTaskMgrExecution = document.getElementById("NoTaskMgrExecution").checked; } else { embed.NoTaskMgrExecution = ""; } + if(document.getElementById("SendCtrlAltdeleteToggled").checked == true) { embed.SendCtrlAltdelete = document.getElementById("SendCtrlAltdelete").checked; } else { embed.SendCtrlAltDelete = ""; } + if(document.getElementById("UsbListenPortToggled").checked == true) { embed.UsbListenPort = parseInt( document.getElementById("UsbListenPort").value ); } else { embed.UsbListenPort = ""; } + if(document.getElementById("UsbAutoShareToggled").checked == true) { embed.UsbAutoShare = document.getElementById("UsbAutoShare").checked; } else { embed.UsbAutoShare = ""; } + if(document.getElementById("SmartcardToggled").checked == true) { embed.Smartcard = document.getElementById("Smartcard").checked; } else { embed.Smartcard = ""; } +} + +function show() +{ + embed.show(); + log("Show was called"); +} + +function status() +{ + var status = embed.ConnectedStatus(); + log("ConnectedStatus = " + status); +} + +function toggle(checkboxID) +{ + var checkbox = document.getElementById(checkboxID); + for (var i = 1; i < arguments.length; i++) + { + var toggle = document.getElementById(arguments[i]); + var updateToggle = checkbox.checked ? toggle.disabled = false : toggle.disabled = true; + } } </script> -<br> -Host: <input id="Host" type="text" size="13"> </input> -Port: <input id="Port" type="text" size="13"> </input> <BR> -SecurePort: <input id="SecurePort" type="text" size="13"> </input> <BR> -Password: <input id="Password" type="text" size="13"> </input> -HotKeys: <input id="HotKeys" type="text" size="13" value="release-cursor=ctrl+alt"> </input> -AdminConsole: <input id="AdminConsole" type="text" size="5" value="1"> </input> -SendCtrlAltDelete: <input id="SendCtrlAltDelete" type="text" size="5" value="1"> </input> -<BR> -HostSubject: <input id="HostSubject" type="text" size="60"> </input></br> -TrustStore: <textarea id="TrustStore" type="text" cols="65" rows="15"> </textarea> <BR> +<table id="values"> +<tr> -<input type=button value="Exec" onclick='Execute()'/> -<input type=button value="Check Status" onclick='Status()'> </input> -<input type=button value="Show" onclick='Show()'> </input> +<td> +<table> +<tr> +<td><input type="checkbox" id="hostIPToggled" onclick="toggle('hostIPToggled', 'hostIP')" checked /></td> +<td>Host:</td> +<td> <input id="hostIP" type="text" size="30" /></td> +</tr> +<tr> +<td><input type="checkbox" id="portToggled" onclick="toggle('portToggled', 'port')" checked /></td> +<td>Port:</td> +<td> <input id="port" type="text" size="30" /> </td> +</tr> +<tr> +<td><input type="checkbox" id="SecurePortToggled" onclick="toggle('SecurePortToggled', 'SecurePort')" /></td> +<td>SecurePort:</td> +<td> <input id="SecurePort" type="text" size="30" disabled /> </td> +</tr> +<tr> +<td><input type="checkbox" id="PasswordToggled" onclick="toggle('PasswordToggled', 'Password')" /></td> +<td>Password:</td> +<td> <input id="Password" type="text" size="30" disabled /><br /> +</tr> +<tr> +<td><input type="checkbox" id="CipherSuiteToggled" onclick="toggle('CipherSuiteToggled', 'CipherSuite')" /></td> +<td>Cipher Suite:</td> +<td> <input id="CipherSuite" type="text" size="30" disabled /></td> +</tr> +<tr> +<td><input type="checkbox" id="SSLChannelsToggled" onclick="toggle('SSLChannelsToggled', 'SSLChannels')" /></td> +<td>Secure Channels:</td> +<td> <input id="SSLChannels" type="text" size="30" disabled /></td> +</tr> +<tr> +<td><input type="checkbox" id="HostSubjectToggled" onclick="toggle('HostSubjectToggled', 'HostSubject')" /></td> +<td>Host Subject:</td> +<td> <input id="HostSubject" type="text" size="30" disabled /></td> +</tr> +<tr> +<td><input type="checkbox" id="fullScreenToggled" onclick="toggle('fullScreenToggled', 'fullScreen')" /></td> +<td>Full Screen:</td> +<td> <input id="fullScreen" type="checkbox" disabled /> </td> +</tr> +<tr> +<td><input type="checkbox" id="AdminConsoleToggled" onclick="toggle('AdminConsoleToggled', 'AdminConsole')" checked /></td> +<td>AdminConsole:</td> +<td> <input id="AdminConsole" type="checkbox" checked /></td> +</tr> +<tr> +<td><input type="checkbox" id="TitleToggled" onclick="toggle('TitleToggled', 'Title')" /></td> +<td>Title:</td> +<td> <input id="Title" type="text" size="30" disabled /></td> +</tr> +<tr> +<td><input type="checkbox" id="dynamicMenuToggled" onclick="toggle('dynamicMenuToggled', 'dynamicMenu')" /></td> +<td>Dynamic Menu:</td> +<td> <input id="dynamicMenu" type="text" size="30" disabled /></td> +</tr> +<tr> +<td><input type="checkbox" id="NumberOfMonitorsToggled" onclick="toggle('NumberOfMonitorsToggled', 'NumberOfMonitors')" /></td> +<td>Number of Monitors:</td> +<td> <input id="NumberOfMonitors" type="text" size="30" disabled /></td> +</tr> +<tr> +<td><input type="checkbox" id="GuestHostNameToggled" onclick="toggle('GuestHostNameToggled', 'GuestHostName')" /></td> +<td>GuestHostName:</td> +<td> <input id="GuestHostName" type="text" size="30" disabled /></td> +</tr> +<tr> +<td><input type="checkbox" id="HotKeyToggled" onclick="toggle('HotKeyToggled', 'HotKey')" checked /></td> +<td>Hot Key:</td> +<td> <input id="HotKey" type="text" size="30" value="toggle-fullscreen=shift+f11,release-cursor=shift+f12,smartcard-insert=shift+f8,smartcard-remove=shift+f9" /></td> +</tr> +<tr> +<td><input type="checkbox" id="NoTaskMgrExecutionToggled" onclick="toggle('NoTaskMgrExecutionToggled', 'NoTaskMgrExecution')" /></td> +<td title="Suppress launching of task manager when Ctrl+Alt+Del is pressed">NoTaskMgrExecution:</td> +<td> <input id="NoTaskMgrExecution" type="checkbox" disabled /></td> +</tr> +<tr> +<td><input type="checkbox" id="SendCtrlAltdeleteToggled" onclick="toggle('SendCtrlAltdeleteToggled', 'SendCtrlAltdelete')" /></td> +<td>Send Ctrl+Alt+Delete:</td> +<td> <input id="SendCtrlAltdelete" type="checkbox" disabled /></td> +</tr> +<tr> +<td><input type="checkbox" id="UsbListenPortToggled" onclick="toggle('UsbListenPortToggled', 'UsbListenPort')" /></td> +<td>USB listen port:</td> +<td> <input id="UsbListenPort" type="text" size="30" value="32023" disabled /></td> +</tr> +<tr> +<td><input type="checkbox" id="UsbAutoShareToggled" onclick="toggle('UsbAutoShareToggled', 'UsbAutoShare')" /></td> +<td>USB Auto Share:</td> +<td> <input id="UsbAutoShare" type="checkbox" disabled /></td> +</tr> +<tr> +<td><input type="checkbox" id="SmartcardToggled" onclick="toggle('SmartcardToggled', 'Smartcard')" checked /></td> +<td>Smartcard:</td> +<td> <input id="Smartcard" type="checkbox" /></td> +</tr> +<tr> +<td><input type="checkbox" id="LanguageStringsSectionToggled" onclick="toggle('LanguageStringsSectionToggled', 'LanguageStringsSection')" checked /></td> +<td>*Language Strings - section:</td> +<td> <input id="LanguageStringsSection" type="input" size="30" /></td> +</tr> +<tr> +<td><input type="checkbox" id="LanguageStringsLangToggled" onclick="toggle('LanguageStringsLangToggled', 'LanguageStringsLang')" checked /></td> +<td>*Language Strings - lang:</td> +<td> <input id="LanguageStringsLang" type="input" size="30" /></td> +</tr> +<tr> +<td><input type="checkbox" id="UsbFilterToggled" onclick="toggle('UsbFilterToggled', 'UsbFilter')" checked /></td> +<td>**Set USB Filter:</td> +<td><input id="UsbFilter" type="text" size="30" /></td> +</tr> +</table> +</td> -</center> +<td rowspan="21" width="25px" > </td> +<td> +<table> +<td> +<tr> +<td><input type="checkbox" id="TrustStoreToggled" onclick="toggle('TrustStoreToggled', 'TrustStore')" /></td> +<td title="CA Certificate in plain text. For RHEV-M, it can be found in 'http://rhev-m.example.com/ca.crt'">Trust Store:</td> +</tr> +<tr><td colspan="2"><textarea id="TrustStore" cols="66" rows="33" disabled ></textarea></td></tr> +</table> +</td> + +</tr> +</table> + +<input type="button" value="Connect" onclick='connect()' /> +<input type="button" value="Check Status" onclick='status()' /> +<input type="button" value="Show" onclick='show()' /> +<input type="button" value="*Set Language Strings" onclick='setLanguageStrings()' id="LanguageStringsButton" /> +<input type="button" value="**Set Usb Filter" onclick='setUsbFilter()' id="UsbFilterButton" /> +<input type="button" value="Disconnect" onclick='disconnect()' /> + +</center> ----<br> -<div id="log"> -</div> ----<br> -</BODY> -</HTML> +<hr /> +<table style="border: 1px; border-color: black; " > +<caption >log:</caption> +<thead><tr><th style="width: 22em; ">timestamp</th><th>message</th></tr></thead> +<tbody style="font-family: monospace; " id="log"> +</tbody> +</table> +</body> +</html> |