X-Git-Url: http://git.pond.sub.org/?p=eow;a=blobdiff_plain;f=static%2Feow.js;h=631894f0b70ff92059ca0daa4dddb03d8bb3c4e2;hp=19807e408f2a920c9390ee310b130455c26d9be2;hb=d0df339544e58ba26876518ca78eedc1ebb72583;hpb=761774603f988ef58b11ab22c5bbf862819f9cef diff --git a/static/eow.js b/static/eow.js index 19807e4..631894f 100644 --- a/static/eow.js +++ b/static/eow.js @@ -1,96 +1,85 @@ -function byId(id) { - return document.getElementById(id); +function setup() { + $.ajaxSetup({ + timeout: 30000 + }); + + $("#cmdline").ajaxForm({ + url: "/eow/command", + type: "GET" + }); } 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); + $("#output").append("
" + output + "
"); + $("input")[0].scrollIntoView(false); } -//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; + $.ajax({ + url: "/eow/update", + dataType: "script", + success: function(data, textStatus) { + console.log(textStatus + " " + data); }, + error: function(xhr, textStatus, error) { + if (textStatus == "timeout") { + xhr.abort(); + next(); + } - // 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; + console.error("HTTP status code: ", xhr.status); } }); } -function submit_cmdline(cmdline_form) { - dojo.xhrGet( { +function submit_cmdline(command) { + $.ajax({ // The following URL must match that used to test the server. url: "/eow/command", - handleAs: "text", + dataType: "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; - }, + success: function(data, textStatus) { + console.log(textStatus + " " + data); + }, // The ERROR function will be called in an error case. - error: function(response, ioArgs) { - if (response.dojoType == "timeout") { - ioArgs.xhr.abort(); - return response; - } + error: function(xhr, textStatus, error) { + if (textStatus == "timeout") { + xhr.abort(); + } - console.error("HTTP status code: ", ioArgs.xhr.status); - return response; - }, + console.error("HTTP status code: ", xhr.status); + }, - form: cmdline_form + data: { + "q": command + } }); } function prompt(p) { - byId("prompt").textContent = p; - get_next_update(); + $("#prompt").text(p); } function msg(m) { eowOut(m); +} + +function next() { get_next_update(); } function setup_client() { - var input = byId("inputfield"); - input.focus(); + $("#inputfield").focus(); } function inputfield_keyup(e) { if (e.keyCode == 13) { // Enter - eowOut(byId("prompt").textContent + e.target.value); - submit_cmdline(e.target.form.id); + eowOut($("#prompt").text() + e.target.value); + submit_cmdline(e.target.value); window.scrollTo(0, window.scrollMaxY); e.target.value = ""; }