(let* ((c (connection m))
(log (logging-stream c)))
(with-input-from-string (s message)
- (let* ((minutes (read s))
+ (let* ((minutes (read s)) ;;FIXME DANGEROUS
(btus (read s)))
- (format log "[~a:~a]: ~%" minutes btus)))))
+ (format log "[~a:~a]: ~%" minutes btus)
+ (empire-web:prompt minutes btus)))))
(defparameter *line-type-dispatch*
(list `(,+C_DATA+ . handle-data)
(:export :create :enqueue :dequeue))
(defpackage :empire-web
(:use :cl :hunchentoot)
- (:export :start :send)))
+ (:export :start :send :prompt)))
dojo.byId("output").appendChild(p);
}
-function hello() {
+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: 5000, // Time in milliseconds
+ timeout: 30000, // Time in milliseconds
// The LOAD function will be called on a successful response.
load: function(response, ioArgs) {
// The ERROR function will be called in an error case.
error: function(response, ioArgs) {
- console.error("HTTP status code: ", ioArgs.xhr.status);
- return response;
+ if (response.dojoType == "timeout") {
+ ioArgs.xhr.abort();
+ get_next_update();
+ return response;
+ }
+
+ console.error("HTTP status code: ", ioArgs.xhr.status);
+ return response;
}
});
}
+function prompt(minutes, btus) {
+ eowOut("[" + minutes + "," + btus + "]: ");
+ get_next_update();
+}
<link rel="stylesheet" type="text/css" href="style.css">
<title>Empire Web Client</title>
-<script type="text/javascript" src="dojo-release-1.1.1/dojo/dojo.js"
+<script type="text/javascript" src="dojo-release-1.1.1/dojo/dojo.js.uncompressed.js"
djConfig="parseOnLoad:true, isDebug:false"></script>
<script type="text/javascript" src="eow.js"></script>
<script type="text/javascript">
var init = function(){
console.log("I run after the page is ready. See this in the console");
- hello();
+ get_next_update();
};
dojo.addOnLoad(init);
</script>
<hr>
<address></address>
-<!-- hhmts start --> Last modified: Sun Nov 23 01:38:22 CET 2008 <!-- hhmts end -->
+<!-- hhmts start --> Last modified: Sat Nov 29 23:06:08 CET 2008 <!-- hhmts end -->
</body> </html>
"Push a javascript update fragment to the client."
(locked-queue:enqueue *update-queue* string))
+(defun prompt (minutes btus)
+ (send (format nil "prompt(~a,~a);~%" minutes btus)))
+
(defun dispatch (request)
(let ((script-name (script-name request)))
(cond