/***************************************************************************
*
* IMPORTANT: This is a commercial product made by AntonLV and cannot be modified for other than personal usage. 
* This product cannot be redistributed for free or a fee without written permission from AntonLV. 
* This notice may not be removed from the source code.
*
***************************************************************************/

function alv_adv_onProfiles(sAction, oXML) {
	//--- Prepare profile's data and Cache it ---//	
	var oNode = null;
	var aProfiles = oXML.getElementsByTagName('profile');
	for(var iIndex=0; iIndex<aProfiles.length; iIndex++) {		
		aAdvSysProfiles[iIndex] = new Array();
		oNode = aProfiles[iIndex].firstChild;		
		while(oNode) {
			aAdvSysProfiles[iIndex][oNode.nodeName] = oNode.firstChild.nodeValue;
			oNode = oNode.nextSibling;
		}		
	}
}
function alv_adv_executeRequest(sAction, sParams, onLoadComplete) {
	var rRequest = false;		

	if (window.XMLHttpRequest) 
		rRequest = new XMLHttpRequest();
	else if (window.ActiveXObject)
		rRequest = new ActiveXObject("Microsoft.XMLHTTP");

	if(rRequest) {		
		rRequest.open("POST", sAdvUrl +'actions/'+ sAction + ".php", true);
		rRequest.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
		rRequest.onreadystatechange = function() {
			if(rRequest.readyState == 4 && rRequest.status == 200) {
				if(rRequest.responseXML != null && rRequest.responseXML.getElementsByTagName(sAction) && rRequest.responseXML.getElementsByTagName(sAction).length > 0)
					onLoadComplete(sAction, rRequest.responseXML);
				else
					alert(sAlvAdvResponceErr);
			}
		}
		var date = new Date();
		rRequest.send(sParams + "&_s=" + date.getTime());
	}	
}
function alv_adv_isArray(oObject) {
	if(typeof(oObject) != 'object' || oObject.constructor.toString().indexOf('Array') == -1)
		return false;
	else
		return true;
}