//HttpRequest °´Ã¼ »ý¼º
function getXMLHttpRequest(){
	if(window.XMLHttpRequest){//IE ÀÌ¿ÜÀÇ XMLHttpRequest °´Ã¼ ±¸ÇÏ±â(ÆÄÀÌ¾îÆø±×, ¿ÀÆä¶óµî)
		return new XMLHttpRequest();
	} else if(window.ActiveXObject){//IE¿¡¼­ XMLHttpRequest °´Ã¼ ±¸ÇÏ±â
		try{
			return new ActiveXObject("Msxml2.XMLHTTP");//Microsoft.XMLHTTP º¸´Ù ÃÖ½Å¹öÀüÀÌ±â ¶§¹®¿¡ ¸ÕÀú °´Ã¼»ý¼ºÀ» ½ÃµµÇÑ´Ù.
		}catch(ex){
			try{
				return new ActiveXObject("Microsoft.XMLHTTP");
			}catch(ex1){
				return null;
			}
		}
	} else {
		return null;
	}
}// End Function


//ÀÏ¹ÝÀûÀÎ ÆäÀÌÁö ÄÝ GET ¹æ½Ä
function call_normal_ajax_get(ElementById,url){
	 var xmlHttp=getXMLHttpRequest(); // XMLHttpRequest °ª »ý¼º

	if (xmlHttp==null)
	  {
	  alert ("Your browser does not support AJAX!");
	  return;
	  }

		xmlHttp.onreadystatechange=function(){stateChanged(xmlHttp,ElementById)}; // ÄÝ¹éÇÔ¼ö¸¦ ¿©·¯°÷¿¡¼­ »ç¿ëÇÏµµ·Ï ÇÑ´Ù.
		xmlHttp.open("GET",url,true);
		xmlHttp.send(null);
}// End Function

/**
*  È­¸é¿¡ »Ñ¸®±â
*/
function stateChanged(xmlHttp,ElementById)
{
	if (xmlHttp.readyState==4){ // ¼­¹ö¿¡¼­ ÀÛ¾÷ÀÌ ¿Ï·á
	  if (xmlHttp.status==200){ //¿äÃ»¼º°ø
		  //403 Á¢±Ù °ÅºÎ  //404 ÆäÀÌÁö ¾øÀ½ //500 ¼­¹ö ¿À·ù
			document.getElementById(ElementById).innerHTML=xmlHttp.responseText;
		}
	}
}// End function


//ÀÏ¹ÝÀûÀÎ ÆäÀÌÁö ÄÝ[ajaxFormAction(»ðÀÔ°´Ã¼,URL)]
	function call_ajax(ElementById,url,call_f){

		var HttpRequest = getXMLHttpRequest();

		if(url){
			HttpRequest.open("POST", url, true);

			HttpRequest.onreadystatechange = function() {

				if(typeof(HttpRequest) =="object"){
					if(HttpRequest.readyState == 4 && HttpRequest.status == 200){
							var respTxt = HttpRequest.responseText;
							ajaxParseAction(respTxt,ElementById,call_f);
	//						document.getElementById(ElementById).innerHTML = respTxt;

							HttpRequest = null; // <-- ÀÌ°÷¿¡ Ãß°¡
							respTxt = null;
					}
				}

			}
			HttpRequest.send(null);

		}


	}

//Æû°´Ã¼ ¿ë ÆäÀÌÁö È£Ãâ[ajaxFormAction(Æû°´Ã¼, »ðÀÔ°´Ã¼)]

	// AJAX POST SEND
	var ajaxFormProcessing = false;
	var ajaxProcessing = false;
	var ajaxXmlHttp = null;
	var ajaxForm = null;
	var ajaxElementById = null;


	function ajaxFormAction(form,ElementById,call_f) {

		if (ajaxFormProcessing) {
			alert("ÇöÀç Ã³¸®ÁßÀÔ´Ï´Ù.");
			return;
		}

		ajaxForm = form;
//		ajaxElementById = ElementById;
		ajaxFormProcessing = true;
	//	alert("È®ÀÎ")

		var inputObjs = form.getElementsByTagName("input");
		var param = "";
		for(var i=0;i<inputObjs.length;i++) {
			var inputObj = inputObjs[i];

			if (inputObj.name && inputObj.value) {
				if (inputObj.type == "text" || inputObj.type == "hidden" || inputObj.type == "password") {
					param += inputObj.name + "=" + encodeURIComponent(inputObj.value) + "&";
				}
				else if (inputObj.type == "radio" || inputObj.type == "checkbox") {
					if (inputObj.checked)
						param += inputObj.name + "=" + encodeURIComponent(inputObj.value) + "&";
				}
			}
		}

		var selectObjs = form.getElementsByTagName("select");

		for(var i=0;i<selectObjs.length;i++) {
			var selectObj = selectObjs[i];

			if (selectObj.name && selectObj.value) {
				param += selectObj.name + "=" + encodeURIComponent(selectObj.value) + "&";
			}
		}

		var textAreaObjs = form.getElementsByTagName("textarea");
		for(var i=0;i<textAreaObjs.length;i++) {
			if (textAreaObjs[i].name && textAreaObjs[i].value) {
				param += textAreaObjs[i].name + "=" + encodeURIComponent(textAreaObjs[i].value) + "&";
			}
		}

		param += "1=1";

		ajaxAction(param,ElementById,call_f);

		return false;

	}

	function ajaxAction(param,ElementById,call_f) {
		if (ajaxProcessing) {
			alert("ÇöÀç Ã³¸®ÁßÀÔ´Ï´Ù.");
			return;
		}


		ajaxProcessing = true;
		ajaxXmlHttp = getXMLHttpRequest();
		ajaxXmlHttp.onreadystatechange = function() {
			if (ajaxXmlHttp.readyState == 4) {
				if(ajaxXmlHttp.status == 200) {
					var respTxt = ajaxXmlHttp.responseText;

					ajaxProcessing = false;
					ajaxFormProcessing = false;

					ajaxParseAction(respTxt,ElementById,call_f);

				} else {
				}

			}
		}

		ajaxXmlHttp.open("POST",ajaxForm.action,true);
		ajaxXmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;charset=utf-8");
		ajaxXmlHttp.setRequestHeader("Content-length", param.length);
		ajaxXmlHttp.setRequestHeader("Connection", "close");
		ajaxXmlHttp.send(param);






	}


	function ajaxParseAction(xmlObj,ElementById,call_f) {
	// ³Ñ¾î¿Â xmlObj ·Î °á°ú Ã³¸® ÇØ ÁÖ¸é µÈ´Ù.
	//				alert(respTxt);
	//				div_List.insertAdjacentHTML = respTxt;
	//				div_List.innerHTML=respTxt;
	//				alert(document.getElementById(ajaxElementById));

						document.getElementById(ElementById).innerHTML =xmlObj;
//					alert(document.getElementById(ajaxElementById).innerHTML);
//						alert("·Îµù¿Ï·á");

					if(call_f !=null && call_f != ""){

//							document.getElementById(ajaxElementById).innerText =xmlObj;
							(new Function(call_f))();


//							ajaxCallF=null;
					}

					xmlObj=null;
	}
