0byt3m1n1
Path:
/
data
/
applications
/
aps.bak
/
lifetype
/
1.2.11-2
/
standard
/
htdocs
/
js
/
moo.fx
/
[
Home
]
File: moo.ajax.js
//based on prototype's ajax class //to be used with prototype.lite, moofx.mad4milk.net. ajax = Class.create(); ajax.prototype = { initialize: function(url, options){ this.transport = this.getTransport(); this.postBody = options.postBody || ''; this.method = options.method || 'post'; this.onComplete = options.onComplete || null; this.update = $(options.update) || null; this.request(url); }, request: function(url){ this.transport.open(this.method, url, true); this.transport.onreadystatechange = this.onStateChange.bind(this); if (this.method == 'post') { this.transport.setRequestHeader('Content-type', 'application/x-www-form-urlencoded'); if (this.transport.overrideMimeType) this.transport.setRequestHeader('Connection', 'close'); } this.transport.send(this.postBody); }, onStateChange: function(){ if (this.transport.readyState == 4 && this.transport.status == 200) { if (this.onComplete) setTimeout(function(){this.onComplete(this.transport);}.bind(this), 10); if (this.update) setTimeout(function(){this.update.innerHTML = this.transport.responseText;}.bind(this), 10); this.transport.onreadystatechange = function(){}; } }, getTransport: function() { if (window.ActiveXObject) return new ActiveXObject('Microsoft.XMLHTTP'); else if (window.XMLHttpRequest) return new XMLHttpRequest(); else return false; } };