function byId(id) { return document.getElementById(id); } function eowOut(output) { var t = document.createTextNode(output); var p = document.createElement("pre"); p.appendChild(t); byId("output").appendChild(p); window.scrollTo(0, window.scrollMaxY); } //t = window.setTimeout(f, 10000); //window.clearTimeout(t) //e = document.getElementById(id) function get_next_update() { dojo.xhrGet( { // The following URL must match that used to test the server. url: "/eow/update", handleAs: "javascript", //handleAs: "text", timeout: 30000, // Time in milliseconds // The LOAD function will be called on a successful response. load: function(response, ioArgs) { console.log(response); return response; }, // The ERROR function will be called in an error case. error: function(response, ioArgs) { if (response.dojoType == "timeout") { ioArgs.xhr.abort(); get_next_update(); return response; } console.error("HTTP status code: ", ioArgs.xhr.status); return response; } }); } function submit_cmdline(cmdline_form) { dojo.xhrGet( { // The following URL must match that used to test the server. url: "/eow/command", handleAs: "text", timeout: 30000, // Time in milliseconds // The LOAD function will be called on a successful response. load: function(response, ioArgs) { console.log(response); return response; }, // The ERROR function will be called in an error case. error: function(response, ioArgs) { if (response.dojoType == "timeout") { ioArgs.xhr.abort(); return response; } console.error("HTTP status code: ", ioArgs.xhr.status); return response; }, form: cmdline_form }); } function prompt(minutes, btus) { byId("prompt").textContent = "[" + minutes + "," + btus + "]: "; get_next_update(); } function msg(m) { eowOut(m); get_next_update(); } function setup_client() { var input = byId("inputfield"); input.focus(); } function inputfield_keyup(e) { if (e.keyCode == 13) { // Enter eowOut(byId("prompt").textContent + e.target.value); submit_cmdline(e.target.form.id); window.scrollTo(0, window.scrollMaxY); e.target.value = ""; } }