function AJAX() {
	var httpRequest = false;

	try {
		httpRequest = new XMLHttpRequest();
	} catch (e) {
		try {
			httpRequest = new ActiveXObject('Msxml2.XMLHTTP')
		} catch (e) {
			try {
				httpRequest = new ActiveXObject('Microsoft.XMLHTT')
			} catch (e) {}
		}
	}

	this.getRequest = function(url, data, callback) {
		httpRequest.onreadystatechange = function() {
			if (httpRequest.readyState == 4) {
				callback(httpRequest);
			}
		};
		httpRequest.open('GET', url + '?' + this.urlEncode(data), true);
		httpRequest.send(null);
	}

	this.postRequest = function(url, data, callback) {
		httpRequest.onreadystatechange = function() {
			if (httpRequest.readyState == 4) {
				callback(httpRequest);
			}
		};
		httpRequest.open('POST', url, true);
		httpRequest.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
		httpRequest.send(this.urlEncode(data));
	}

	this.urlEncode = function(data) {
		var urlString = '';

		for (i = 0; i < data.length; i++) {
			if (urlString != '') {
				urlString += '&';
			}
			urlString += data[i][0] + '=' + escape(data[i][1]);
		}
		return urlString;
	}
	
	this.updateDIV = function(url, data) {
	}
}


