// JavaScript Document// JavaScript Document
function createREQ() {
	try {
    	req = new XMLHttpRequest(); /* p.e. Firefox */
	} 
	catch(err1) {
       try {
       		req = new ActiveXObject('Msxml2.XMLHTTP'); /* algunas versiones IE */
       } 
	   catch (err2) {
       		try {
         		req = new ActiveXObject("Microsoft.XMLHTTP"); /* algunas versiones IE */
         	} 
			catch (err3) {
          		req = false;
         	}
      }
   }
   return req;
}
function requestGET(url, query, req) {
	myRand=parseInt(Math.random()*99999999);
	req.open("GET",url+'?'+query+'&rand='+myRand,true);
	req.send(null);
}
function requestPOST(url, query, req) {
	req.open("POST", url,true);
	req.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
	req.send(query);
}
function doCallback(callback,item) {
	eval(callback + '(item)');
}
function doAjax(url,query,callback,reqtype,getxml) { 
	// crea la instancia del objeto XMLHTTPRequest 
	var myreq = createREQ();
	var item = null;
	myreq.onreadystatechange = function() { 
		if(myreq.readyState == 4) { 
			if(myreq.status == 200) {
				item = myreq.responseText;
				if(getxml==1) {
					item = myreq.responseXML;			
				}
			doCallback(callback, item);
		   }
		   else if(myreq.status == 404){ 
			   doCallback(callback, "Error interno cod: 1");
		   }
		   else if(myreq.status == 403){
			   doCallback(callback, "Error interno cod: 2");
		   }
		}
	}
	if(reqtype=='post') {
		requestPOST(url,query,myreq);
	} 
	else {
		requestGET(url,query,myreq);
	}
}

function createXMLHttp(){
	if(typeof XMLHttpRequest != "undefined"){
		return new XMLHttpRequest();
	}
	else if(window.ActiveXObject){
		var aVersions = ["MSXML2.XMLHttp.5.0","MSXML2.XMLHttp.4.0","MSXML2.XMLHttp.3.0", "MSXML2.XMLHttp", "Microsoft.XMLHttp"];
		for (var i=0; i < aVersions.length; i++){
			try{
				var oXmlHttp = new ActiveXObject(aVersions[i]);
				return oXmlHttp;
			}
			catch(oError){
				// error
			}
		}
	}
	throw new Error("Error Interno cod: 3");
}
function transfromaFormularioPost(oForm){
	var aParams = new Array();
	for (var i=0; i <oForm.elements.length; i++){
		var comilla1 =/\'/g;
		var comilla2 = /\"/g;
		var sParam = encodeURIComponent(oForm.elements[i].name);
		sParam += "=";
		var con = encodeURIComponent(oForm.elements[i].value);
	//	con =con.replace(comilla1,"");
	//	con =con.replace(comilla2,"");
		sParam += encodeURIComponent(con);
		aParams.push(sParam);
	}
	return aParams.join("&");
}
function transfromaFormularioPostXML(oForm){
	var aParams = new Array();
	for (var i=0; i <oForm.elements.length; i++){
		var sParam = encodeURIComponent(oForm.elements[i].name);
		sParam += "=";
		sParam += encodeURIComponent(oForm.elements[i].value);
		aParams.push(sParam);
	}
	return aParams.join("-");
}
