var posiT=0
var posiL=0
var gCampob=""
var contenedor=""
var vGidref=""
function buscador(modulo,vcampo,vini,vcontenedor){
	console.log(localStorage.getItem("proyecto"))
	gCampob=vcampo.id
	console.log(vcampo)
	url="modulo="+modulo;
	url+="&tipo="+"l";
	url+="&accion="+"s";
	url+="&valor="+vcampo.value;
	url+="&codemp="+VGempresa;
	cDiv=document.getElementById(vcampo.name)
	console.log(cDiv)
	var posicion = cDiv.getBoundingClientRect();
	
	posiT=posicion.top+25
	posiL=posicion.left-20
 	console.log(posicion.top, posicion.right, posicion.bottom, posicion.left);
	contenedor=vcontenedor
	var Rpage =VGRutaRiz+"controllers/registros/";
	console.log(Rpage+url);	 
	doAjax(Rpage,url,'resp_filtrar_search','gets','0','Ccargar');
}

function resp_filtrar_search(ResTex) {
	console.log(ResTex);//listado segun busqueda
	
	Detalle="<table><tr> <a href='javascript:cerrar_modal()'> Cerrar <a/> </tr>";
	voption="";
	cTabla=document.getElementById('mimodal');
	var oJsonDatos = JSON.parse(ResTex);
	console.log(ResTex.length)
	z=0;
	vTam=30
	if(oJsonDatos.Datos!="ERROR" && ResTex.length>25){
	    if(ResTex.length>1){
			
			JsonActividad=ResTex;
			var oJsonDatos = JSON.parse(JsonActividad);
	        var NJsonItem=oJsonDatos.Datos.length;

			RowArray=0;//esto lo adicione nuevo
			//cCombo.options[RowArray] = new Option("Seleccione","")
			w=0
			for (RowArray=0;RowArray<NJsonItem; RowArray++){	
				console.log(NJsonItem)
				cad=oJsonDatos.Datos[RowArray];	
				Detalle+="<tr>";	
				for (i in cad){//para armar tabla de listado
					w=w+1
					cId='td'+w
					cNom=i;
					cDet=rpt_textos(cad[i]);
					Detalle+='<td><a href="javascript:asignarval(\''+cad['Id']+'\',\''+contenedor+'\')" style="text-decoration:none">'+cDet+"</a><input type='text' id='"+cId+"' name='"+i+"' class=' buscador "+cad['Id']+"' value='"+cDet+"'Style='display:none'></input><td>"// se indica que se asigna valor segun el Id del listado
					
				}
				Detalle+="</tr>"
			}
			vTam=(30*RowArray)+50
			Detalle+=Detalle+"</table>"
			//console.log(Detalle)
			cTabla.innerHTML=Detalle;
		}else{
			Detalle="No hay registros"
    	}
	}
	//console.log(Detalle)
	if(vTam>300){
		vTam=300
	}
	document.getElementById('mimodal').innerHTML=Detalle
	document.getElementById('mimodal').style.top=posiT+'px'
	document.getElementById('mimodal').style.left=posiL+'px'
	document.getElementById('mimodal').style.display='block'
	document.getElementById('mimodal').style.height=vTam+'px'
	document.getElementById('mimodal').style.overflowY='scroll'
	document.getElementById('mimodal').style.width='50%'

	

}
function cerrar_modal(){
	document.getElementById('mimodal').style.display='none'
	document.getElementById('mimodal').innerHTML=''
	document.getElementById(gCampob).value=""
	var jSonhijos=document.getElementsByClassName(gCampob);
	for(i=0;i<jSonhijos.length;i++){
		jCampo = jSonhijos[0].id;
		document.getElementById(jCampo).value=""
	}
}
function asignarval(nValor,container){//aqui trae el id dela seleccion de la fila de tabla que se hizo
	var jSondet=document.getElementsByClassName('buscador');//aqui se extrae toda las columnas correspondientes a esa fila
	console.log(jSondet)
	console.log(container)
	nTam=jSondet.length;
	var cadcampos="";
	//container con el objetivo de asignar valor solo a lo que pertenece al mismo contenedor
	if(sessionStorage.getItem("modulo")=="cli_historia_odonto"){
	//	document.getElementById('mimodal').style.display='none'
	}
	for(var i=0;i<nTam;i++){//aqui recorremos cada columna
		item=document.getElementById(jSondet[i].id)
		
		if(item.classList.contains(nValor)){

			iCampo=jSondet[i].id//aqui obtenemos el id de la columna
			nCampo=jSondet[i].name//aqui obtenemos el nombre de la columna, el cual debe ser igual al que tiene la casilla a la que se asignara
			cValor=document.getElementById(iCampo).value// Aqui es el valor de la columna
			try {

				console.log(nCampo+iCampo);
				ocampo = document.getElementsByName(nCampo);
				//if(VGproyect=="cli"){
				console.log(ocampo)
				sw=0
				for(var j=0;j<ocampo.length;j++){
					iCampo=ocampo[j].id;
					jsClases=document.classList
					item = document.getElementById(iCampo);
					if(item.classList.contains(container)){
						document.getElementById(iCampo).value=cValor
						sw=1
					}
				}

				if (sw==0){
					////Aqui obtengo el Id de acuerdo al nombre de la columna revisada para que se asigne ala casilla que va a guardar en la base de datos.
					iCampo = ocampo[0].id;
					document.getElementById(iCampo).value=cValor
				}
		  
		 	 } catch (err) { 
			
			} 
		
		}
      	
		//console.log(iCampo+cValor)
		
		
		
	}
	document.getElementById('mimodal').style.display='none'
	document.getElementById('mimodal').innerHTML=''
	if(sessionStorage.getItem("tipo")=="HCLI" && container=='bloque1'){
		filter_histo("nriper")
	}
	
	
}
function asignarval_local(){
	console.log("aqi")
	var jSondet=document.getElementsByClassName('local');
	console.log(jSondet)
	nTam=jSondet.length;
	for(var i=0;i<nTam;i++){
		nCampo=jSondet[i].name
		iCampo=jSondet[i].id
		
		
		vCampo=document.getElementById(jSondet[i].id).value
		clases=document.getElementById(jSondet[i].id).classList 
		nvector=clases[0]
		vector=localStorage.getItem(nvector)
		vector=vector.substring(9,vector.length-1);
		array=JSON.parse(vector)

		var jSonhijos=document.getElementsByClassName(iCampo);
		console.log(jSonhijos)
		var idx = array.find((vector) => vector.Id === vCampo)
		console.log(idx.nombre)
		ocampo = jSonhijos[0].name;
		jCampo = jSonhijos[0].id;
		console.log(jCampo)
		document.getElementById(jCampo).value=idx.nombre
		
		return
		
		
		/*jSondet=document.getElementsByClassName('local');
		if (nCampo=="nrorem"){
			cRemi=vCampo
		}
		zCampo="c"+z.toString()
		if(fin==0 && i==0){}else{cadcampos+=",";caddatos+=","}
		caddatos+='"'+nCampo+'":'+'"'+vCampo+'"';
		cadcampos+='"'+zCampo+'":'+'"'+nCampo+'"';
		*/
		z++
	}
	
			//////////////////////////////////////INICIO PARA UBICAR UN ELEMENTO DENTRO DE UN VECTOR GENERICO
	/*	ciu=localStorage.getItem("ciudades")
		ciu=ciu.substring(9,ciu.length-1);	
		array=JSON.parse(ciu)
		var idx = array.find((vector) => vector.Id === vCampo)
		console.log(idx.nombre)
		*/
		///////////////////////////////////FIN FUNCION PARA UBICAR UN ELEMENTO

	
}

function refresh(nMod,vCampo,cValor,cCondicion){
	
	ocampo = document.getElementsByName(cCondicion);
	iCampo=ocampo[0].id;
	nVlrCond=document.getElementById(iCampo).value
	cCondicion=' and '+cCondicion+'="'+nVlrCond+'"'
	
	url="modulo="+nMod;
	url+="&tipo="+"l";
	url+="&accion="+"i";
	url+="&condicion="+cCondicion;
	url+="&codemp="+VGempresa;
	console.log(url)
	
	vGidref=vCampo;

	vTmod=nMod
	vGval=cValor;
	console.log(vGval);
	console.log(url);
	var Rpage =VGRutaRiz+"controllers/registros/";
	console.log(Rpage+vGmod);
	doAjax(Rpage,url,'resp_filtrar_refresh','gets','0','Ccargar');
	}

function resp_filtrar_refresh(ResTex) {
	console.log(vGnum)
	console.log(jGfunciones.Datos.length);
	console.log(ResTex+vGid);
	Detalle="<option value='' ></option>";
	//Detalle="";
	voption="";
	var oJsonDatos = JSON.parse(ResTex);
	z=0;
	if(oJsonDatos.Datos!="ERROR" && ResTex.length>15){
	    if(ResTex.length>1){
			
			cCombo=document.getElementById(vGidref);
			JsonActividad=ResTex;
			var oJsonDatos = JSON.parse(JsonActividad);
	        var NJsonItem=oJsonDatos.Datos.length;
			RowArray=0;//esto lo adicione nuevo
			cCombo.options[RowArray] = new Option("Seleccione","")
			for (RowArray=0;RowArray<NJsonItem; RowArray++){
				cad=oJsonDatos.Datos[RowArray];	
				
			//if(vGid='c0'){	
          	//Detbuscador+='<tr><td>'+oJsonDatos.Datos[RowArray].codigo+'</td><td>'+oJsonDatos.Datos[RowArray].nombre+'</td><td>'+oJsonDatos.Datos[RowArray].nombre+'</td></tr>'
			//}
				j=RowArray+1;
				if(vGval==oJsonDatos.Datos[RowArray].codigo && vGval!=""){
					z=1;
					Detalle+='<option value="'+oJsonDatos.Datos[RowArray].codigo+'" selected>'+oJsonDatos.Datos[RowArray].nombre+'</option>'
					//Detalle+='<option value="'+oJsonDatos.Datos[RowArray].codigo+'" >'+oJsonDatos.Datos[RowArray].nombre+'</option>'
				}else{
					Detalle+='<option value="'+oJsonDatos.Datos[RowArray].codigo+'">'+oJsonDatos.Datos[RowArray].nombre+'</option>'
				}
			}
			console.log(Detalle)
			Detalle=rpt_textos(Detalle);
			cCombo.innerHTML=Detalle;
		}else{
			alert("no hay registros");
    	}
	}
	

}