var xmlhttp;
var objet;
var PrOdDiV;
var xtraJS;

function doAjax(act,act2,obj,params,extraJS){
	var xtra = "";
	var confirmed = true;
	var subact = act2.substr(0,act2.indexOf("_"));
	if(subact == "del"){confirmed = confirm(getMSG('del'));}
	else if(subact == "del2"){confirmed = confirm(getMSG('del'));act2 = act2.replace("del2_","");}
	else if(subact == "rep"){confirmed = confirm(getMSG('rep'));}
	else if(subact == "conf"){confirmed = confirm(getMSG('conf'));}
					
	if(confirmed){
		if(act2 != ""){xtra = "_" + act2;}
		if(validateAll(act + xtra,"NotEmpty")){
			init(act,act2);
			objet = obj;
			xtraJS = extraJS;
			if(act2.substr(0,7) == "PrOdGeT"){PrOdDiV = "yes";}
		
			//read extra parameters
			var xtra = "";
			var elem = "";
			if(params == undefined){params = "";}
			else if(params != ""){params += "|";}
			while(params.indexOf('|') > -1){
				elem = params.substring(0,params.indexOf('|'));
				params = params.substring(params.indexOf('|') + 1);
				var vall = document.getElementById(elem).value.replace(new RegExp( "\\r\\n", "g" ),"%0D%0A");
				//xtra += "&" + elem + "=" + document.getElementById(elem).value;
				xtra += "&" + elem + "=" + vall;
			}
		
			var url="/_js/Ajax.php";
			url=url+"?action="+act;
			url=url+"&action2="+act2;
			url=url+"&doAjax=yes";
			url=url+xtra;
			xmlhttp.onreadystatechange=stateChanged;
			xmlhttp.open("GET",url,true);
			xmlhttp.send(null);
		}
	}
}

function stateChanged(){
	if(xmlhttp.readyState==4){
		var RES = xmlhttp.responseText;
		var c = 0;
		var data = "";
		
		if(RES.indexOf('[[[DATA]]]') > -1){
			if(objet != ""){data =  RES.substring(RES.indexOf('[[[DATA]]]')+10,RES.indexOf('[[[/DATA]]]'));document.getElementById(objet).innerHTML = data;data = objet + ":::" + data + "+++++++++++++++++";}
		}
		if(RES.indexOf('[[[ERROR]]]') > -1){showError(RES.substring(RES.indexOf('[[[ERROR]]]')+11,RES.indexOf('[[[/ERROR]]]')));c=5000;}
		else if(RES.indexOf('[[[INFO]]]') > -1){showInfo(RES.substring(RES.indexOf('[[[INFO]]]')+10,RES.indexOf('[[[/INFO]]]')));c=5000;}
		//TO DISBALE POP_UP, UPDATE VALUE DEBUG TO DEBUGGGGG
		if(RES.indexOf('[[[DEBUGG]]]') > -1){alert( "\"" + RES.substring( RES.indexOf('[[[DEBUG]]]')+11,RES.indexOf('[[[/DEBUG]]]')) + "\"");}
		if(PrOdDiV == "yes"){
			showAtCenter('PrOdDiV');
			PrOdDiV = "";
			if(document.getElementById('val0') != null){setTimeout("document.getElementById('val0').focus()",200);}
			blockInput("");
		}
		if(xtraJS != undefined && xtraJS != ""){eval(xtraJS);xtraJS = "";}
  }
}

function init(act,act2){
	if (window.XMLHttpRequest){// code for IE7+, Firefox, Chrome, Opera, Safari
  	xmlhttp =  new XMLHttpRequest();
 	}else if (window.ActiveXObject){// code for IE6, IE5
  	xmlhttp =  new ActiveXObject("Microsoft.XMLHTTP");
  }else{//alert ("Your browser does not support XMLHTTP!");
  	doAction(act + "_" + act2);
  }
  //doAction(act + "_" + act2);
}

/* FUNCTION QUALITYCENTER JNJ
function CreateXMLHttpRequest(){
	try {objXMLHttpRequest = new XMLHttpRequest();}
	catch(err1){
		try {objXMLHttpRequest = new ActiveXObject("Msxml2.XMLHTTP");} 
		catch (err2){
    	try{objXMLHttpRequest = new ActiveXObject("Microsoft.XMLHTTP");} 
			catch (err3){objXMLHttpRequest = false;}
   	}
	}
	return objXMLHttpRequest;
}
*/