//*******************************************************************
//***   this function load xml                  	        	  ***
//*******************************************************************
function xml_load(sXml,sSrc,IsConstXml)
{
	//IsConstXml=0;
	
	if(eval("" + sXml + ".xml=='' || IsConstXml==0"))
	{	
		eval("" + sXml + ".async=false") ;
		eval("" + sXml + ".load('" + sSrc + "')") ;
	}
}

//this fucntion insert xml parameters to select form
function insert_xml_select(sForm,sSelect,sXml,sXsl,sEqual,sDefault,sOnChange)
{
	//create xml select
	if(sXsl=='')
	{
		eval("tempXmlDI=" + sXml + ".xml") ;
	}
	else
	{
		eval("arr=" + sXsl + ".selectNodes('//@match')") ;
		eval("arr[1].value='" + sEqual + "'") ;
		eval("tempXmlDI=" + sXml + ".transformNode(" + sXsl + ".XMLDocument)") ;
	}
		
	//insert xml select to form
	sData ="" ;
	sData=sData + "<select name='" + sSelect + "' class='midInput' onchange='changes=1; "
	if(sOnChange!='')
		sData=sData + sOnChange + "; "
	sData=sData + "						  ' >"	

	if(sDefault!='-1')
		sData=sData + "<option value='0' class='txtInput' selected > " + sDefault + " </option>" ;	
	sData=sData + tempXmlDI ;
	sData=sData + "</select>" ;
	eval("" + sForm + "." + sSelect + ".outerHTML=sData") ;
}

function open_and_save_url(sUrl,sButtonName,PageName,PageDesc,OpenType)
{
	var sData="";

	sData+="<PageName>" + RCT_JS2XML(PageName) + "</PageName>"
	sData+="<PageDesc>" + RCT_JS2XML(PageDesc) + "</PageDesc>"
	sData+="<ButtonName>" + RCT_JS2XML(sButtonName) + "</ButtonName>"
	sData+="<Goto>" + RCT_JS2XML(sUrl) + "</Goto>"

	ans=postXML('','AddClick__Post.asp',sData)
	//alert(ans);

	if(sUrl!='')
	{
		if(OpenType == 'parent')
			parent.location.href = sUrl;
		if(OpenType == '')
			location.href = sUrl;
	}
}

//this fucntion posts xml document to the server
function postXML(sFormName,sFormAction,sXml,sUndefined)
{
	var xmlhttp,oDom,strXml ;	
	changes=0;
	
	strXml="" ;
	strXml=strXml + "<MainPostSrc>" ;	
	if(sFormName!='') // transfer form to xml
	{
		for(i=0;eval("i<" + sFormName + ".elements.length");i++)
		{
			//alert(  eval("" + sFormName + ".elements[i].name") + "=" + eval("" + sFormName + ".elements[i].value")   )
			eval("strXml=strXml + '<' + " + sFormName + ".elements[i].name + '>'") ;
				eval("strXml=strXml + " + sFormName + ".elements[i].value.replace(/</g,'~lt~').replace(/>/g,'~gt~').replace(/&/g,'&amp;') ") ;
			eval("strXml=strXml + '</' + " + sFormName + ".elements[i].name + '>'") ;
		}
	}
	//DT(strXml);
	if(sXml!=sUndefined) //add hardcoded xml
	{
		strXml=strXml + sXml ;	
	}
	strXml=strXml + "</MainPostSrc>" ;	
	//alert (strXml);
	//create XML document
	oDom = new ActiveXObject("Msxml.DOMDocument")		
	oDom.loadXML(strXml);
	
	//create http post connection
	xmlhttp = new ActiveXObject("microsoft.XMLHTTP")
	eval("xmlhttp.open('POST','" + sFormAction + "',false)") ;
	xmlhttp.send(oDom);
	
	if(xmlhttp.ResponseText.indexOf("<?xml")==(-1))
		return(xmlhttp.ResponseText) ;
	else		
		return(xmlhttp.ResponseXML.xml) 
}

function RCT_JS2XML(sData)
{
	sData = sData.replace(/</g,'~lt~');
	sData = sData.replace(/>/g,'~gt~');
	sData = sData.replace(/&/g,'&amp;');
	return sData ;
}
