﻿

var Ajax = function() {
}

Ajax.prototype.getXmlHttpRequest = function() {
	var xmlhttp = false;

	if (window.XMLHttpRequest) {
		xmlhttp = new XMLHttpRequest();
	} else {
		xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
	}
	return xmlhttp;
}
	
Ajax.prototype.callByAjax = function(url, callbackHandler) {
	try {
		var xmlhttp = this.getXmlHttpRequest();
		xmlhttp.open("GET", url , true);
		xmlhttp.onreadystatechange = function() { 
			if (xmlhttp.readyState == 4) {
				if (xmlhttp.status == 200) {
					var data = xmlhttp.responseText;
					callbackHandler(data);
				} else {
					alert("Ajax request failed");
				}
			}
		}
		xmlhttp.send(null);
	} catch (e) {
		alert(e.message);
	}
	return false;
}

Ajax.prototype.callByAjaxWithId = function(url, callbackHandler, id) {
	try {
		var xmlhttp = this.getXmlHttpRequest();
		xmlhttp.open("GET", url , true);
		xmlhttp.onreadystatechange = function() { 
			if (xmlhttp.readyState == 4) {
				if (xmlhttp.status == 200) {
					var data = xmlhttp.responseText;
					callbackHandler(data, id);
				} else {
					alert("Ajax request failed");
				}
			}
		}
		xmlhttp.send(null);
	} catch (e) {
		alert(e.message);
	}
	return false;
}

Ajax.prototype.getByAjaxWithId = function(url,id){
	try {
		var xmlhttp = this.getXmlHttpRequest();
		xmlhttp.open("GET", url , true);
		xmlhttp.onreadystatechange = function() { 
			if (xmlhttp.readyState == 4) {
				if (xmlhttp.status == 200) {
					var data = xmlhttp.responseText;
					$(id).innerHTML = data;
				} else {
					alert("Ajax request failed");
				}
			}
		}
		xmlhttp.send(null);
	} catch (e) {
		alert(e.message);
	}
	return false;
}

Ajax.prototype.postByAjax = function(url,callbackHandler,postStr){
	try {
		var xmlhttp = this.getXmlHttpRequest();
		xmlhttp.open("POST", url , true);
		xmlhttp.onreadystatechange = function() { 
			if (xmlhttp.readyState == 4) {
				if (xmlhttp.status == 200) {
					var data = xmlhttp.responseText;
					callbackHandler(data); 
				} else {
					alert("Ajax request failed");
				}
			}
		}
                xmlhttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); 
                xmlhttp.send(postStr); 
	} catch (e) {
		alert(e.message + 'fuck');
	}
	return false;
}

Ajax.prototype.postByAjaxWithId = function(url,callbackHandler,id,postStr){
	try {
		var xmlhttp = this.getXmlHttpRequest();
		xmlhttp.open("POST", url , true);
		xmlhttp.onreadystatechange = function() { 
			if (xmlhttp.readyState == 4) {
				if (xmlhttp.status == 200) {
					var data = xmlhttp.responseText;
					callbackHandler(data, id); 
				} else {
					alert("Ajax request failed");
				}
			}
		}
		xmlhttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
                xmlhttp.send(postStr); 
	} catch (e) {
		alert(e.message);
	}
	return false;
}



