
var m_xslDoc = null;

var m_sXSL_PATH_MAIN = "SITEDATA/main.xsl";
var m_sXML_PATH_HOME = "SITEDATA/home.xml";
var m_sXML_PATH_ASSETS = "SITEDATA/assets.xml";
var m_sXML_PATH_INVESTORS = "SITEDATA/investors.xml";
var m_sXML_PATH_PRESS = "SITEDATA/press.xml";
var m_sXML_PATH_ABOUT = "SITEDATA/about.xml";
var m_sXML_PATH_CONTACT = "SITEDATA/contact.xml";
var m_sXML_PATH_DISCLAIMER = "SITEDATA/disclaimer.xml";
var m_sXML_PATH_COPYRIGHT = "SITEDATA/copyright.xml";

var XML_HOME = "";
var XML_ASSETS = "";
var XML_INVESTORS = "";
var XML_PRESS = "";
var XML_ABOUT = "";
var XML_CONTACT = "";
var XML_DISCLAIMER = "";
var XML_COPYRIGHT = "";

selectedMenu = ""
// code for mozilla
if (document.implementation && document.implementation.createDocument) {
	Node.prototype.transformNode = function (oXslDom) {
		var oProcessor = new XSLTProcessor();		
		oProcessor.importStylesheet(oXslDom);
		
		var oResultDom = oProcessor.transformToDocument(this);

		var sResult
		var serXML = new XMLSerializer();
		sResult = serXML.serializeToString(oResultDom);
		if (sResult.indexOf("<transformiix:result") > -1) {
			sResult = sResult.substring(sResult.indexOf(">") + 1, 
			sResult.lastIndexOf("<"));
		}
		return sResult;
	};

	Document.prototype.loadXML = function(strXML) {
		try {
			//create a DOMParser
			var objDOMParser = new DOMParser();
			//create new document from string
			var objDoc = objDOMParser.parseFromString(strXML, "text/xml");

			//make sure to remove all nodes from the document
			while (this.hasChildNodes())
				this.removeChild(this.lastChild);

			//add the nodes from the new document
			for (var i=0; i < objDoc.childNodes.length; i++) {            
				//import the node
				var objImportedNode = this.importNode(objDoc.childNodes[i], true);

				//append the child to the current document
				this.appendChild(objImportedNode);        
			} //End: for
			return true;
		} catch (e) {
			return false;
		}
	};

	var suagent=navigator.userAgent;
	if (suagent.match('Safari') != null) {	
		BrowserName = 'SAFARI';
		Document.prototype.load = function (sURL) {
			var myXMLHTTPRequest = new XMLHttpRequest();
			try {			
				myXMLHTTPRequest.open("GET", sURL, false);
				myXMLHTTPRequest.send(null);			
				var xmlSource = myXMLHTTPRequest.responseXML;        
				//make sure to remove all nodes from the document
				while (this.hasChildNodes())
					this.removeChild(this.lastChild);

				//add the nodes from the new document
				for (var i=0; i < xmlSource.childNodes.length; i++) {
					//import the node
					var objImportedNode = this.importNode(xmlSource.childNodes[i], true);

					//append the child to the current document
					this.appendChild(objImportedNode);
				} //End: for
				return true;
			} catch (e) {
				return false;
			}
		};
	}

};

function initXSL(sURL) {
	var xslDoc = null;
	var bErr = false;
	if (document.implementation && document.implementation.createDocument) { 
		xslDoc = document.implementation.createDocument("", "", null);
	} else { // IE
		try {
			xslDoc = new ActiveXObject('Msxml2.FreeThreadedDOMDocument');
		}	
		catch (e) {
			bErr = true;
		}
	}
	xslDoc.async = false;	
	xslDoc.load(sURL);			
	if (bErr) 
		xslDoc = null;
	m_xslDoc = xslDoc;
}

function retrieveXMLData(sURL, sParam, sfunc, divID, mID, bAsync) {
	var ajaxObj = null;
	ajaxObj = prepareAJAX_XMLDOM(sfunc, divID, mID);	
	if (ajaxObj != null) {
		if (bAsync) 
			getURLData(ajaxObj, sURL, sParam);
		else
			getURLDataSync(ajaxObj, sURL, sParam);
	}
}

function transformXMLData(oXML, oXSL, divID) {
	var which = null;
	var output = ""
	if ((oXML != null)  && (oXSL != null)) {
		which = document.getElementById(divID);
		if (which != null) {
			if (arguments.length > 3) {
				output = transformNodeWithParam(oXML, oXSL, arguments) 
			} else {

				output = oXML.transformNode(oXSL);
			}
			which.innerHTML = output;
		}
	}	
}

function loadXMLText(sXML, bXSL) {
	var xmlDoc = null;
	var xmlParser = null;
	if (document.implementation && document.implementation.createDocument) {
		try {
			xmlParser = new DOMParser();
			xmlDoc = xmlParser.parseFromString(sXML, "text/xml");
		} catch(e) {
			alert("Unable to load the data retrieved. ERROR: " + e);
		}
	} else { // IE
		try {
			if (bXSL) 
				xmlDoc = new ActiveXObject('Msxml2.FreeThreadedDOMDocument');
			else
				xmlDoc = new ActiveXObject('Microsoft.XMLDOM');
			xmlDoc.async = false;
			xmlDoc.setProperty("ServerHTTPRequest", true);
			xmlDoc.loadXML(sXML);
		}
		catch (e) {
			alert("Unable to load the data retrieved. ERROR: " + e);
		}
	}
	return xmlDoc;
}


function loadMainData(divID, xmlpath, xslpath) {
	var mdetail
	var output
	var xmlDoc
	var xslDoc
	var bWith
	if (document.implementation && document.implementation.createDocument) { 
		xslDoc = document.implementation.createDocument("", "", null);
		xmlDoc = document.implementation.createDocument("", "", null);				
	} else { // IE
		try {
			xmlDoc = new ActiveXObject('Microsoft.XMLDOM')
		}
		catch (e) {
		}
		try {
			xslDoc = new ActiveXObject('Msxml2.FreeThreadedDOMDocument');
			//xslDoc = new ActiveXObject('Microsoft.XMLDOM')
		}
		catch (e) {
		}

		
	}
	xmlDoc.async = false;
	xslDoc.async = false;

	bWith = xmlDoc.load(xmlpath);
	bWith = xslDoc.load(xslpath);		
	if (arguments.length > 3) {
		output = transformNodeWithParam(xmlDoc, xslDoc, arguments) 
	} else {
	
		output = xmlDoc.transformNode(xslDoc);
	}
		
	mdetail = document.getElementById(divID);
	
	if (mdetail) {
		mdetail.innerHTML = output
	}
}

function loadData(divID, xmlpath, xslpath) {
	var mdetail
	var output
	var xmlDoc
	var xslDoc
	
	if (document.implementation && document.implementation.createDocument) { 
		xslDoc = document.implementation.createDocument("", "", null);
		xmlDoc = document.implementation.createDocument("", "", null);		
		
	} else { // IE
		try {
			xmlDoc = new ActiveXObject('Microsoft.XMLDOM')
		}
		catch (e) {
		}
		try {
			xslDoc = new ActiveXObject('Msxml2.FreeThreadedDOMDocument');
			//xslDoc = new ActiveXObject('Microsoft.XMLDOM')
		}
		catch (e) {
		}

	}
	xmlDoc.async = false;
	xslDoc.async = false;
	
	xmlDoc.load(xmlpath);
	xslDoc.load(xslpath);			

	if (arguments.length > 3) {
		output = transformNodeWithParam(xmlDoc, xslDoc, arguments) 
	} else {
		output = xmlDoc.transformNode(xslDoc);
		
	}
		
	mdetail = document.getElementById(divID);
	
	if (mdetail) {
		mdetail.innerHTML = output
	}
}

function loadNewsData(divID, xmlpath, xslpath) {
	var mdetail
	var output
	var xmlDoc
	var xslDoc
	var parser
	var sdata 
	if (document.implementation && document.implementation.createDocument) { 
		try {
			xslDoc = document.implementation.createDocument("", "", null);
		} catch (e) {
		}
		try {
			// xmlDoc = document.implementation.createDocument("", "", null);
			parser = new DOMParser();
		} catch (e) {
		}
		xmlDoc = parser.parseFromString(xmlpath, "text/xml");

	} else { // IE
		try {
			xmlDoc = new ActiveXObject('MSXML2.DOMDocument');
		}
		catch (e) {
		}
		try {
			xslDoc = new ActiveXObject('Msxml2.FreeThreadedDOMDocument');
			//xslDoc = new ActiveXObject('Microsoft.XMLDOM')
		}
		catch (e) {
		}
		xmlDoc.async = false;
		xmlDoc.setProperty("ServerHTTPRequest", true);					
		sdata = xmlpath.substr(xmlpath.indexOf("?>") +2, xmlpath.length);
		xmlDoc.loadXML(sdata);

	}
	xslDoc.async = false;
	xslDoc.load(xslpath);
	
	if (arguments.length > 3) {
		output = transformNodeWithParam(xmlDoc, xslDoc, arguments) 
	} else {
		output = xmlDoc.transformNode(xslDoc);	
	}

	mdetail = document.getElementById(divID);

	if (mdetail) {
		mdetail.innerHTML = output
	}
}

function transformNodeWithParam(xmlDoc, xslDoc) {
	var totArgs;
	var i;
	var ioffset = 3;
	var xsltProcessor;
	totArgs = 0;

	if (arguments.length > 2) {
		totArgs = arguments[2].length;		
	}

	if (document.implementation && document.implementation.createDocument) {
		
		xsltProcessor = new XSLTProcessor();
		xsltProcessor.importStylesheet(xslDoc);
		
		for (i = ioffset; i < totArgs; i+=2) {
		
			xsltProcessor.setParameter(null,arguments[2][i],arguments[2][i + 1]);
		}
		var oResultDom = xsltProcessor.transformToDocument(xmlDoc);

		var sResult
		var serXML = new XMLSerializer();
		sResult = serXML.serializeToString(oResultDom);
		if (sResult.indexOf("<transformiix:result") > -1) {
			sResult = sResult.substring(sResult.indexOf(">") + 1,
			sResult.lastIndexOf("<"));
		}
		return sResult;
	} else  {
		var xslt = new ActiveXObject('Msxml2.XSLTemplate');
		xslt.stylesheet = xslDoc;
		xsltProcessor = xslt.createProcessor();

		xsltProcessor.input = xmlDoc;
		for (i = ioffset;i < totArgs; i+=2) {
			xsltProcessor.addParameter(arguments[2][i], arguments[2][i + 1]);
		}
		xsltProcessor.transform();
		return xsltProcessor.output;
	}
}


function transformXMLDoc(xmlDoc, xslpath, divID) {
	var xslDoc = null;
	var mdetail = null;
	var output = "";
	if (document.implementation && document.implementation.createDocument) {
		try {
			xslDoc = document.implementation.createDocument("", "", null);
		} catch(e) {
		}

	
	} else {
		try {
			xslDoc = new ActiveXObject('Msxml2.FreeThreadedDOMDocument');
		}
		catch (e) {
		}	
	}
	xslDoc.async = false;	
	xslDoc.load(xslpath);		

	if (arguments.length > 3) {
		output = transformNodeWithParam(xmlDoc, xslDoc, arguments);
	} else {
		output = xmlDoc.transformNode(xslDoc)		
	}
	mdetail = document.getElementById(divID);
	if (mdetail) {
		mdetail.innerHTML = output
	}	
}

function loadText(sXML, xslpath, divID) {
	var mdetail = null;
	var output = "";
	var xslDoc = null;
	var xmlDoc = null;
	var xmlParser = null;
	if (document.implementation && document.implementation.createDocument) {
		try {
			xslDoc = document.implementation.createDocument("", "", null);
			xslDoc.async = false;
		} catch(e) {
		}
		try {
			xmlParser = new DOMParser();
			xmlDoc = xmlParser.parseFromString(sXML, "text/xml");
		} catch(e) {
		}
	} else { // IE
		try {
			xmlDoc = new ActiveXObject('MSXML2.DOMDocument');
			xmlDoc.async = false;
			xmlDoc.setProperty("ServerHTTPRequest", true);
			xmlDoc.loadXML(sXML);
		}
		catch (e) {
		}
		try {
			xslDoc = new ActiveXObject('Msxml2.FreeThreadedDOMDocument');
			xslDoc.async = false;
		}
		catch (e) {
		}
	}
	xslDoc.load(xslpath);	

	if (arguments.length > 3) {
		output = transformNodeWithParam(xmlDoc, xslDoc, arguments);
	} else {
		output = xmlDoc.transformNode(xslDoc)		
	}
	mdetail = document.getElementById(divID);
	if (mdetail) {
		mdetail.innerHTML = output
	}
}
