/***************************************************************************
 * filename : FFCallXml.js<br>
 * CallXml 구현, 자바스크립트와 ActiveX를 이용해 페이지 이동없이 실시간으로 서버페이지의 결과를 받는다<br>
 *
 * @version	: 1.0
 * @author	: Copyright (c) 2003 by free270. All Rights Reserved.
****************************************************************************/
if(FFCALLXML_CLASS!=null) {
	alert("[FFCallXml.js]는 이미 include 되어있습니다!!");
}
var FFCALLXML_CLASS = true;

var isIE=(document.all)?true:false; 
var isN4=(document.layers)?true:false; 
var isN6=(!isIE&&document.getElementById)?true:false; 

function FFCallXmlClass( responseText ){
	//[PROPERTY]------------------------------------
	this.responseText	= responseText

	//[METHOD]--------------------------------------
	this.getString		= FFCallXml_getString;
	this.getDoc			= FFCallXml_getDoc;

	this.xml = new ActiveXObject("microsoft.xmldom");
	this.xml.loadXML(this.responseText);
}


/*###########[아래 함수들은 클래스의 정의를       ]######################*/
/*###########[위해서만 사용됩니다.                ]######################*/
/*###########[직접 사용하시지 마시고 위에 정의된  ]######################*/
/*###########[클래스를 이용해 호출해 주세요       ]######################*/

function FFCallXml_getString(field_nm){
	var txt = "this.xml.getElementsByTagName('" + field_nm + "').item(0)"
	var xmltmp
		

	try{ 
		xmltmp = eval(txt).text;
		return xmltmp;
	}catch(e) { 
		alert("'" + field_nm + "' 은 잘못된 필드명입니다. 자바스크립트를 수정하십시요");
		return ""; 
	}
}

function FFCallXml_getDoc(str){
	return this.responseText;
}

function FFCallXml_isSuccess(){
	if(this.getString("CODE")=="1"){
		return true;
	}else{
		return false;
	}
}



/*
 * 일반 함수
 */

 /*
 * CallXml
 */
function callXml( url, debug ){
	if(debug!=null && debug){
		open(url,"callXml","width=500,height=500");
	}

	if(!isIE){
		alert("Internet Explorer 5.0이상에서만 지원하는 기능입니다.\n\n사용을 원하시면 Internet Explorer의 최신버젼으로 업데이트 하시기 바랍니다");
	}

	var xmlhttp = new ActiveXObject("MSXML2.XMLHTTP");
	xmlhttp.Open("GET", url , false);
	xmlhttp.setRequestHeader("Content-Type", "text/xml; charset=euc-kr");
	xmlhttp.Send();

	var callXml = new FFCallXmlClass( xmlhttp.responseText );


	return callXml;
}
