vnc.js 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. /*
  2. * noVNC: HTML5 VNC client
  3. * Copyright (C) 2010 Joel Martin
  4. * Licensed under LGPL-3 (see LICENSE.txt)
  5. *
  6. * See README.md for usage and integration instructions.
  7. */
  8. "use strict";
  9. /*jslint evil: true */
  10. /*global window, document, VNC_uri_prefix */
  11. // Globals defined here
  12. var VNC_native_ws, WEB_SOCKET_SWF_LOCATION;
  13. /*
  14. * Load supporting scripts
  15. */
  16. function get_VNC_uri_prefix() {
  17. return (typeof VNC_uri_prefix !== "undefined") ? VNC_uri_prefix : "include/";
  18. }
  19. (function () {
  20. var extra = "", start, end;
  21. start = "<script src='" + get_VNC_uri_prefix();
  22. end = "'><\/script>";
  23. // Uncomment to activate firebug lite
  24. //extra += "<script src='http://getfirebug.com/releases/lite/1.2/" +
  25. // "firebug-lite-compressed.js'><\/script>";
  26. extra += start + "util.js" + end;
  27. extra += start + "webutil.js" + end;
  28. extra += start + "base64.js" + end;
  29. extra += start + "des.js" + end;
  30. extra += start + "canvas.js" + end;
  31. extra += start + "rfb.js" + end;
  32. /* If no builtin websockets then load web_socket.js */
  33. if (window.WebSocket) {
  34. VNC_native_ws = true;
  35. } else {
  36. VNC_native_ws = false;
  37. WEB_SOCKET_SWF_LOCATION = get_VNC_uri_prefix() +
  38. "web-socket-js/WebSocketMain.swf";
  39. extra += start + "web-socket-js/swfobject.js" + end;
  40. extra += start + "web-socket-js/FABridge.js" + end;
  41. extra += start + "web-socket-js/web_socket.js" + end;
  42. }
  43. document.write(extra);
  44. }());