/*
 * Descripcion:	procesador ajax
*/
function sb_RootTag(t,a,n){
	if(a==''){return root.getElementsByTagName(t)[n];}
	else{return root.getElementsByTagName(t)[n].getAttribute(a)}
}
function sb_RootTagValue(t,n,v){return sb_RootTag(t,'',n).childNodes[v].nodeValue}
function sb_SortTable(or,dir,url,fnc){
	$order="&orden="+or+"&dir="+dir
	sb_Xhr.Open(url+$params+$order,'GET','',fnc);
}
var $params="",$order=""
var sb_Xhr={
	Parser:function(){
		if(typeof XMLHttpRequest=="undefined"&&window.ActiveXObject){
			var xhr=["MSXML2.XMLHTTP.5.0","MSXML2.XMLHTTP.4.0","MSXML2.XMLHTTP.3.0","MSXML2.XMLHTTP","Microsoft.XMLHTTP"]
			for(var i=0;i<xhr.length;i++){try{return new ActiveXObject(xhr[i])}catch(e){return false}}
		}
		else if(window.XMLHttpRequest){return new XMLHttpRequest()}
		else{return false}
	},
	message:function(msg){return msg},
	Open:function(pagData,method,params,func){
		sb_showElem.Display("loader","i")
		var Process=function(){
				if(xDoc.readyState==4){
					if(xDoc.status==200){sb_showElem.Display("loader","n");root=xDoc.responseXML.documentElement;return eval(func)}
					else{sb_showElem.Display("loader","n");alert("Error: "+xDoc.statusText)}
					
				}
			}
			xDoc=this.Parser()
			xDoc.onreadystatechange=Process
			try{xDoc.open(method,pagData,true)}catch(exception){alert(exception)}
			if(method=='POST'){
				xDoc.setRequestHeader('Connection','close')
				xDoc.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
			}
			try{xDoc.send(method=='POST'?params:null)}catch(exception){alert(exception)}
		}
}

//paginacion
var numPag=1
function sb_GoPage(dir,url){
	var nP=parseInt(sb_Id("numPag").firstChild.nodeValue); var tP=parseInt(sb_Id("nTotPag").firstChild.nodeValue);
	if(dir=='next'&&nP<tP){numPag=nP+1}	else if(dir=='prev'&&nP>1){numPag=nP-1}
	else if(dir=='ini'){numPag=1} else if(dir=='fin'){numPag=tP}
	else if(dir=='goTo'){
		var goP=sb_Id("goToPage").value;
		if(goP>=1&&goP<=tP){numPag=goP} else{alert("El número de página no existe."); return}
	}
	else{return}
	var pagData=url+"?nporpag="+sb_Id("nRegPorPag").value+"&pag="+numPag+$params+$order
	sb_Xhr.Open(pagData,"GET","","SC_gridProduct()")
}

