rendered paste bodyfunction AjaxWorker(remoteTarget, customRequestHandler) {
this.sendRequest = sendRequest;
this.createRequestObject = createRequestObject;
this.remoteTarget = remoteTarget;
this.customRequestHandler = customRequestHandler;
this.request = createRequestObject();
this.requestHandler = requestHandler;
}
function requestHandler() {
if(this.request.readyState == 4) {
this.customRequestHandler();
}
}
function createRequestObject() {
if (navigator.appName == "Microsoft Internet Explorer") {
return new ActiveXObject("Microsoft.XMLHTTP");
} else {
return new XMLHttpRequest();
}
}
function sendRequest(reqParams) {
this.request.open('get', this.remoteTarget + "?" + reqParams);
this.request.onreadystatechange = createMethodReference(this, "requestHandler");
this.request.send(null);
}
function createMethodReference(object, methodName) {
return function () {
object[methodName].apply(object, arguments);
};
}