function request(theurl) { // console.log("send request: " + theurl); var webclientObject = this; // var argumentsObject = new Object; // argumentsObject["foo"] = "bar space"; // argumentsObject["foo2"] = "bar2"; dojo.xhrPost( { // The following URL must match that used to test the server. url: theurl, timeout: 0, // Time in milliseconds // content : argumentsObject, // The LOAD function will be called on a successful response. load: function(response, ioArgs) { if (theurl == webclientObject.idleUrl) webclientObject.hasIdler = false; // 'this' seems to point to the fucntion at this point. webclientObject.eventHandler(response); if (webclientObject.hasIdler == false) { webclientObject.hasIdler = true; webclientObject.request(webclientObject.idleUrl); } }, // The ERROR function will be called in an error case. error: function(response, ioArgs) { console.error("HTTP status code: ", ioArgs.xhr.status); return response; } }); } function sessionHandlerSetupObject(webclientObject) { webclientObject.request = request; webclientObject.idleUrl = webclientObject.baseUrl + "idle"; webclientObject.hasIdler = false; }