var ajaxMadani = new Object();

ajaxMadani = function() {
	var request;

	this.getdata = function(div, url) {		
		request = this.GetXmlHttpObject();
	
		if (request == null) {
			alert("Your browser does not support AJAX.");
			return;
		}
	
		request.onreadystatechange = function() {
			if (request.readyState == 4) {
				if (request.status != 200) {
					// commented out becuase of bloody safari
					// alert("There was a problem retrieving the data:\n" + request.statusText);
					delete request;
				} else {
					var element = document.getElementById(div);
					element.innerHTML = request.responseText;
				}
			}
		}
	
		request.open("GET", url, true);
		request.send(null);
	}
	
	this.postdata = function(div, url, form) {
		var contentType = "application/x-www-form-urlencoded; charset=UTF-8";
		request = this.GetXmlHttpObject();
	
		if (request == null) {
			alert("Your browser does not support AJAX.");
			return;
		}
	
		request.onreadystatechange = function() {
			if (request.readyState == 4) {
				if (request.status != 200) {
					alert("There was a problem retrieving the data:\n" + request.statusText);
					delete request;
				} else {
					var element = document.getElementById(div);
					element.innerHTML = request.responseText;
				}
			}
		}

		param = this.createQuery(form);
	
		request.open("POST", url, true);
		request.setRequestHeader("Content-Type", contentType);
		request.send(param);
	}
	
	this.GetXmlHttpObject = function() {
		var xmlHttp = null;
		
		try {
			// Firefox, Opera 8.0+, Safari
			xmlHttp = new XMLHttpRequest();
		} catch (e) {
			// Internet Explorer
			try {
				xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
			} catch (e) {
				xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
			}
		}
		
		return xmlHttp;
	}
	
	this.createQuery = function (form) {
		var elements = document.getElementById(form);
		var pairs = new Array();

		for (var i = 0; i < elements.length; i++) {
			//if ((name = elements[i].name) && (value = elements[i].value))
			if ((name = elements[i].name)) {
				value = elements[i].value;
				pairs.push(name + "=" + encodeURIComponent(value));
			}
		}

		return pairs.join("&");
	}
}

ajaxMadani = new ajaxMadani;