var arrPai = new Array();
var arrEst = new Array();
var arrCiu = new Array();
var arrTnd = new Array();
var arrSuc = new Array();

function gAP(strClv, strValor){genArrAgrega(arrPai, strClv, strValor);}
function gAE(strClv, strValor){genArrAgrega(arrEst, strClv, strValor);}
function gAC(strClv, strValor){genArrAgrega(arrCiu, strClv, strValor);}
function gAT(strClv, strValor){genArrAgrega(arrTnd, strClv, strValor);}
function gAS(strClv, strValor, strValor2){genArrAgrega(arrSuc, strClv, strValor, strValor2);}

function genArrAgrega(arrD, strClv, strValor){ if(genArrAgrega.arguments.length==4) arrD[arrD.length] = new Array(strClv, strValor, genArrAgrega.arguments[3]); else arrD[arrD.length] = new Array(strClv, strValor); }

var objFB=null, bolFB=false;

function A_BsqTdaInicializa(strF)
{
	if(document.forms[strF]) objFB = document.forms[strF];
	if(objFB) bolFB = true;
	if(bolFB){
/*
		objFB.cboP.strFrase = "";
		objFB.cboP.strFraseVacio = "No se encontraron Países en esta selección.";
		objFB.cboP.onchange = function() {A_BsqSelecciona('P', objFB.cboP);}
		pAgrCbo(arrPai, objFB.cboP, false);
*/

		objFB.cboE.strFrase = "Seleccione un Estado....";
		objFB.cboE.strFraseVacio = "No se encontraron Estados en esta selección.";
		objFB.cboE.onchange = function() {A_BsqSelecciona('E', this);}
		pAgrCbo(arrEst, objFB.cboE, false);
		//pAgrCbo(arrEst, objFB.cboE, false);

		objFB.cboC.strFrase = "Seleccione una Ciudad...";
		objFB.cboC.strFraseVacio = "No se encontraron Ciudades en esta selección.";
		objFB.cboC.onchange = function() {A_BsqSelecciona('C', this);}

		objFB.cboT.strFrase = "Seleccione una Tienda";
		objFB.cboT.strFraseVacio = "No se encontraron Tiendas en esta selección.";
		objFB.cboT.onchange = function() {A_BsqSelecciona('T', this);}
/*
		objFB.cboS.strFrase = "Seleccione una Sucursal...";
		objFB.cboS.strFraseVacio = "La tienda no cuenta con sucursales.";
		objFB.cboS.onchange = function() {A_BsqSelecciona('S', this);}
*/
		//objFB.cboP.onchange();
	}
}

function A_BsqSelecciona(strTipo, cboD)
{
	var strBsq, intS;

	switch(strTipo)
	{
		case 'P':
			strBsq = cboD.options[cboD.selectedIndex].value;
			//objFB.cboC.length=0;
			objFB.cboT.length=0;
			//objFB.cboS.length=0;
			gObj("celInfo").innerHTML = "";
			A_BsqBusca(arrEst, strBsq, 2, objFB.cboE);
			break;
		case 'E':
			strBsq = cboD.options[cboD.selectedIndex].value;
			objFB.cboC.length=0;
			objFB.cboT.length=0;
			//objFB.cboS.length=0;
			gObj("celInfo").innerHTML = "";
			A_BsqBusca(arrCiu, strBsq, 4, objFB.cboC);
//			A_BsqBusca(arrTnd, strBsq, 4, objFB.cboT);
			//A_BsqBuscaEstadoCompleto(strBsq, 4, gObj("celInfo"));
			break;
		case 'C':
			strBsq = cboD.options[cboD.selectedIndex].value;
			objFB.cboT.length=0;
			//objFB.cboS.length=0;
			gObj("celInfo").innerHTML = "";
			A_BsqBusca(arrTnd, strBsq, 7, objFB.cboT);
			break;
		case 'T':
			strBsq = cboD.options[cboD.selectedIndex].value;
			//objFB.cboS.length=0;
			gObj("celInfo").innerHTML = "";
			A_BsqBuscaTiendaCompleto(strBsq, 11, gObj("celInfo"));
			//intS = A_BsqBusca(arrSuc, strBsq, 11, objFB.cboS);
			//if (intS==1){
				//alert("muestra");
			//}
			break;
		case "S":
			strBsq = cboD.options[cboD.selectedIndex].value;
			gObj("celInfo").innerHTML = "";
			//alert(gObj("celInfo").innerText);
			gObj("celInfo").innerHTML = A_InfoSuc(strBsq);
			break;
	}
}

function A_BsqBuscaTiendaCompleto(strBsq, intLCmp, objHtml)
{
	var strHtml = "";
	var intMax, intI, strTienda, strTiendaAct;
	if(strBsq.length>0)
	{
		intMax = arrSuc.length;
		for(intI=0; intI<intMax; intI++)
		{
			if(arrSuc[intI][0].substr(0,intLCmp)==strBsq)
			{
				strTienda = pBsqTiendaDesdeIDSuc(arrSuc[intI][0]);
				if (strTienda==strTiendaAct) strTienda = ""; else strTiendaAct = strTienda;
				strHtml += ("<tr><td valign=\"top\" align=\"left\"><b>"+strTienda+"</b></td>"+
							"<td valign=\"top\" align=\"left\">"+arrSuc[intI][1]+"</td>"+
							"<td valign=\"top\" align=\"left\" width=\"260\">"+arrSuc[intI][2]+"</td></tr>");
			}


		}
		objHtml.innerHTML = ("<table width=\"460\" class=\"small\">"+
							"<tr><td width=\"100\"><b>Tienda</b></td><td width=\"100\"><b>Sucursal</b></td><td width=\"260\"><b>Dirección</b></td></tr>"+
							"<tr height=\"2\"><td width=\"460\" colspan=\"3\" bgcolor=\"black\"></td></tr>"+
							strHtml+
							"</table>");
							//alert(objHtml.innerHTML);
	}

}

var strHtml
function A_BsqBuscaEstadoCompleto(strBsq, intLCmp, objHtml)
{
	var strHtml = "";
	var intMax, intI, strTienda, strTiendaAct;
	if(strBsq.length>0)
	{
		intMax = arrSuc.length;
		for(intI=0; intI<intMax; intI++)
		{
			if(arrSuc[intI][0].substr(0,intLCmp)==strBsq)
			{
				strTienda = pBsqTiendaDesdeIDSuc(arrSuc[intI][0]);
				if (strTienda==strTiendaAct) strTienda = ""; else strTiendaAct = strTienda;
				strHtml += ("<tr><td valign=\"top\" align=\"left\"><b>"+strTienda+"</b></td>"+
							"<td valign=\"top\" align=\"left\">"+arrSuc[intI][1]+"</td>"+
							"<td valign=\"top\" align=\"left\" width=\"260\">"+arrSuc[intI][2]+"</td></tr>");
			}


		}
		objHtml.innerHTML = ("<table width=\"460\" class=\"small\">"+
							"<tr><td width=\"100\"><b>Sucursal</b></td><td width=\"100\"><b>Tienda</b></td><td width=\"260\"><b>Dirección</b></td></tr>"+
							"<tr height=\"2\"><td width=\"460\" colspan=\"3\" bgcolor=\"black\"></td></tr>"+
							strHtml+
							"</table>");
							//alert(objHtml.innerHTML);
	}

}

function pBsqTiendaDesdeIDSuc(strIDSuc)
{
	//*** 041129  HMO  Se cambió la longitud de la clave de la tienda...
	var intI, strRet = "", strIDTda = strIDSuc.substr(0, 11);
	for (intI=0;intI<arrTnd.length;intI++)
		if(arrTnd[intI][0] == strIDTda){
			strRet = arrTnd[intI][1];
			break;
		}
	return (strRet);
}


function A_InfoSuc(strB)
{
	var intI;
	for (intI=0;intI<arrSuc.length-1;intI++)
		if(arrSuc[intI][0] == strB){
			return (arrSuc[intI][2]);
		}
	return '';
}

function A_BsqBusca(arrD, strBsq, intLCmp, cboD)
{
	if(strBsq.length>0)
		pAgrCbo(arrD, cboD, false, strBsq, intLCmp);
	return (cboD.length);
}

function pAgrCbo(arrD, cboD, intSelec, strB, intLCmp)
{
	var intI,intMax,objO;
	var bolBsq =false, bolAgregar=false;
	var intArgs = pAgrCbo.arguments.length;

	cboD.length=0;
	intMax=arrD.length;
	//alert(intArgs);
	if(pAgrCbo.arguments.length<4) strB="";
	if(pAgrCbo.arguments.length<5) intLCmp=0;
	if(strB.length>0) bolBsq=true; else bolAgregar=true;

	for(intI=0;intI<intMax;intI++)
	{
		if (bolBsq){
		//alert("Busca " + strB + " contra " + arrD[intI][0] + " substracto = " + arrD[intI][0].substr(0,intLCmp) + "  longitud = " + intLCmp);
			if(arrD[intI][0].substr(0,intLCmp)==strB)
				bolAgregar = true;
			else
				bolAgregar = false;
		}
		if (bolAgregar) {
			if(cboD.length==0 && arrD[intI][1].length>0)
				if(cboD.strFrase.length>0)
					cboD.options[0] = new Option(cboD.strFrase,"","False","False");
			cboD.options[cboD.length] = new Option(arrD[intI][1], arrD[intI][0],"False","False");
		}
	}
	if(cboD.length==0 && cboD.strFraseVacio.length>0)
		cboD.options[0] = new Option(cboD.strFraseVacio,"","False","False");
	cboD.options[0].selected=true;
}


function gObj(n, d) { //v4.0
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  if(!x && d.layers) for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=gObj(n,d.layers[i].document);
  if(!x && document.getElementById) x=document.getElementById(n); return x;
}
