/***************************************************************************************************
' ID         : func_Ajax.js
' ÀÛ¼ºÀÚ     : ÃÖ Çö ½Ä
' ÀÛ¼ºÀÏ     : 2007.07.13
' ±â´É¿ä¾à   : Ajax È°¿ë
' ÀÔ·Â       : 
' ¹ÝÈ¯       :
'---------------------------------------------------------------------------------------------------
' º¯°æ³»¿ª   :
' 	ÀÏÀÚ				º¯°æÀÚ		ºñ°í
'---------------------------------------------------------------------------------------------------
'	
'***************************************************************************************************/

	//Ajax¸¦ À§ÇÑ XMLHttpRequest °³Ã¼ »ý¼º
	//ºê¶ó¿ìÀú¿¡ µû¶ó ´Ù¸¥ ¹æ¹ý Àû¿ë Ã³¸®
	function createAjax()
	{
	  if(typeof(ActiveXObject) == "function")
	  {
	  	//IE6ÀÌÇÏ
	    return new ActiveXObject("Microsoft.XMLHTTP");  
	  }  
	  else if(typeof(XMLHttpRequest) == "object" || typeof(XMLHttpRequest) == "function")
	  {
	  	//IE7ÀÌ»ó, ¸ðÁú¶ó
	    return new XMLHttpRequest();
	  }  
	  else
	  {
	    self.alert("ºê¶ó¿ìÀú°¡ AJAX¸¦ Áö¿øÇÏÁö ¾Ê½À´Ï´Ù.");
	    return null;
	  }
	}

	//szType 	: txt|xml - ¹ÝÈ¯°ªÀÇ Çü½Ä Á¤ÀÇ
	//szUrl 	: ¿äÃ»URL
	//szParam : ÆÄ¶ó¹ÌÅÍ
	//szDebug : 1 - µð¹ö±× ¸ðµå On

	function fnSendXmlRequest(szType, szUrl, szParam, szDebug)
	{
		
	  //var xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
		//ºê¶ó¿ìÀú Ã¼Å©¸¦ À§ÇÑ ÇÔ¼ö »ç¿ëÇÏ¿© °³Ã¼ »ý¼º	  
	  var xmlHttp = createAjax();
	  xmlHttp.open("POST", szUrl, false);

	  if (arguments[4] == "kr")
		xmlHttp.setRequestHeader("Content-Type", "text/xml; charset=euc-kr");
	  else
		xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");

		if(szParam != '')
		{
		  xmlHttp.send(szParam);
		}
	
		if (xmlHttp.status != 200)
		{
			//xmlHttp.status´Â Àü¼Û°á°úÀÔ´Ï´Ù. º¸Åë 200ÀÌ Á¤»óÀûÀ¸·Î Ã³¸®µÈ °æ¿ìÀÔ´Ï´Ù.
			//ÆäÀÌÁö¸¦ Ã£À» ¼ö ¾ø´Ù°í ³ª¿À´Â 400, ¶Ç´Â 404¿¡·¯¸¦ È®ÀÎÇÒ ¼ö ÀÖÀ¸¸ç
			//Äõ¸®°á°ú µî¿¡ ¹®Á¦ µîÀ¸·Î ¿À·ù°¡ ¹ß»ýÇÒ °æ¿ì 500¿¡·¯¸¦ È®ÀÎÇÒ ¼ö ÀÖ½À´Ï´Ù.
			//°¢ ¿À·ù¸¶´Ù ¿À·ùÃ³¸®¸¦ ´Ù¸£°Ô ÇÒ ¼ö ÀÖ°ÚÀ¸³ª
			//ÀÏ´ÜÀº ÇÏ³ª·Î Ã³¸®ÇÏ°Ô Çß½À´Ï´Ù.
			//µð¹ö±×½Ã¿¡´Â ¿¡·¯ÄÚµå(status) ¹× ¿¡·¯³»¿ë(statusText)À» È®ÀÎÇÒ ¼ö ÀÖ½À´Ï´Ù.

			if(szDebug == 1)
			{
				return '¿¡·¯°¡ ¹ß»ýÇß½À´Ï´Ù.\n' + xmlHttp.status + ' : ' + xmlHttp.statusText;
			}

			//return 'E';
		}

		var xmlRtn;

		if(szType == 'xml')
		{
			xmlRtn = xmlHttp.responseXML;
		}
		else
		{
			xmlRtn = xmlHttp.responseText;
		}

	  return xmlRtn;
	}


	function logeval(obj)
	{
		self.document.getElementById("result").value += obj + ' : ' + eval(obj) + '\n';
	}

	function logwrite(msg)
	{
		self.document.getElementById("result").value += msg + '\n';
	}

	function childNodes(todo)
	{  
	  if(todo.hasChildNodes())
	  {  
	    var result = new Array();  
	    var myRe = /^[\s](1,)$/gi;  
	    for(var i=0;i<todo.childNodes.length;i++) {  
	      if(todo.childNodes[i].nodeType == 3) {  
	        if(todo.childNodes[i].nodeValue.replace(/\s/gi,"") != "") {  
	          result.push(todo.childNodes[i]);  
	        }    
	      }  
	      else {  
	        result.push(todo.childNodes[i]);  
	      }  
	    }    
	    return result;  
	  }  
	  else {  
	    return null;        
	  }    
	} 

	function trim(todo)
	{
	  return todo.replace(/^\s*/,"").replace(/\s*$/,"");
	}

//	var szRet = null;
	function createXmlDocument()
	{
		if(typeof(ActiveXObject) == "function")
		{
			return new ActiveXObject("MSXML2.DOMDocument.3.0");
		}
	}
