// detecciçon del navegador ns4 = (document.layers) ? true:false;ie4 = (document.all) ? true:false;// abrir ventana nuevafunction abrir_v (pag,tam_x,tam_y,vent,scroll,resize,menu,tool,status) { var pos_x, pos_y; scroll = (scroll==null) ? false : scroll; scroll = (scroll) ? "yes" : "no"; resize = (resize==null) ? false : resize; resize = (resize) ? "yes" : "no"; menu = (menu==null) ? false : menu; menu = (menu) ? "yes" : "no"; tool = (tool==null) ? false : tool; tool = (tool) ? "yes" : "no"; status = (status==null) ? false : status; status = (status) ? "yes" : "no"; tam_x = (tam_x==null) ? 640 : tam_x; tam_y = (tam_y==null) ? 300 : tam_y; if (ns4 || ie4) { 	var alto=window.screen.height; 	var ancho=window.screen.width;	pos_x = (ancho-tam_x)/2;	pos_y = (alto-tam_y)/2-20; } else { 	pos_x = 0; 	pos_y = 0; } return(window.open(pag, vent, "toolbar="+tool+",directories=no,menubar="+menu+",scrollbars="+scroll+",location=no,status="+status+",resizable="+resize+",width="+tam_x+",height="+tam_y+",left="+pos_x+",top="+pos_y));}function abrir (pag) { vent = abrir_v(pag,null,null,"vent","true","true","true","true","true");}function abrir (pagina){  location.href=pagina;}// abrir chromelessfunction abrir_ventana (u,W,H,X,Y,n) {	var cD  ='../img/ventana/iCerrar.gif'	var cU  ='../img/ventana/iCerrar.gif'	var cO  ='../img/ventana/iCerrar_on.gif'	var cL  =''	var tH  ='../img/ventana/cabecera.gif'	var tW  =''	var wB  ='#000000'	var wBs ='#FC9048'	var wBG ='#FC9048'	var wBGs='#FF6600'	var wNS ='toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=0,resizable=0'	var fSO ='scrolling=no noresize'	return chromeless(u,n,W,H,X,Y,cD,cU,cO,cL,tH,tW,wB,wBs,wBG,wBGs,wNS,fSO)//chromeless(u,n,W,H,X,Y,cD,cU,cO,cL,tH,tW,wB,wBs,wBG,wBGs,wNS,fSO)//return false;}/**********************funciones de pagina***********************************/function comprobarcampo(ncampo){	if (document.getElementById(ncampo).value==''){		alert('El campo debe estar relleno');	}	else{		document.formaccion.submit();	}}function cambiarAcc(acc){	document.formaccion.action=acc;	document.formaccion.submit();}function cambiarFormu(acc){	document.formu.action=acc;	document.formu.submit();}function rellenarCampo(ncampo,valor){	document.getElementById(ncampo).value=valor;}function rellenarCampo(ncampo,valor){	document.getElementById(ncampo).value=valor;}function irA(acc,act,ncampo,valor,ncampo2,valor2){		if (acc=='borrar'){		if (confirm('¿Esta seguro de querer borrar el registro del inventario?')==false){						return;				}	}		if (acc){		document.formaccion.opcion.value=acc;}	if (ncampo){	document.getElementById(ncampo).value=valor;}	if (ncampo2){		document.getElementById(ncampo2).value=valor2;}	if (act){		document.formaccion.action=act;}	document.formaccion.submit();}function modiftarget(sttarget){	document.formu.target=sttarget;}function longitud(val, len){	if(val.length > len)	{		alert("Error. El campo sobrepasa de " + len + " caracteres");		return false;	}		return true;}/**************Comprueba que el string que le pasamos son todo numeros****************/function sondecimales(val, enteros, decimales){  var test1=',0123456789';  var test2=',0123456789';  var c, ndec=0, nent=0;  var decimal=false;  var numero=true;  var partedecimal=false;    while(val.indexOf(" ")!=-1)  {	val=val.substring(1,val.length);  }  for(var i=0;i < val.length;i++)  {	c=test2.indexOf(val.charAt(i));	if(c<0)		numero=false;	else	if(c==0)		partedecimal=true;	else	{		if(partedecimal==true)			ndec++;		else			nent++	}  }  if (numero==false || ndec>decimales || nent>enteros)  {	alert("Error. Introduzca un Número de "+enteros + " enteros y " + decimales + " decimales");    return false;  }  return true;}function soncantidades(val){  var test1=',0123456789';  var test2=',0123456789';  var c;  var decimal=false;  var numero=true;  while(val.indexOf(" ")!=-1){		val=val.substring(1,val.length);  }  for(var i=0;i < val.length;i++)    {	c=test2.indexOf(val.charAt(i));	if (c<0){		numero=false;		}	}  if (numero==false)    {	alert("Error. Introduzca un Número.");    return false;	}  return true;}function hastanumero(val,valor){	if (val!='')	{		if (sonnumeros(val))		{			if (parseInt(val,10)>parseInt(valor,10))			{				alert('El campo no puede contener un numero superior a '+valor);				return false;			}		}	}	return true;}function sonnumeros(val){  var test1='0123456789';  var test2='0123456789';  var c;  var decimal=false;  var numero=true;  while(val.indexOf(" ")!=-1){		val=val.substring(1,val.length);  }  for(var i=0;i < val.length;i++)    {	c=test2.indexOf(val.charAt(i));	if (c<0){		numero=false;		}	}  if (numero==false)    {	alert("Error. Introduzca un Número.");    return false;	}  return true;}/**************Busca el elemento que indiquemos****************/function Buscarelemento(elem,cadena){	if (cadena!=''){		if (cadena.indexOf(elem)!=-1)			{cadena=cadena.substring(cadena.indexOf(elem)+1,cadena.length);			if (cadena.indexOf(elem)!=-1)				{alert('El texto escrito no es un E-mail.Introduzca el dato correctamente.')				return false;}			else				{return true;}			}				else			{alert('El texto escrito no es un E-mail.Introduzca el dato correctamente.')			return false;}		}	return true;}/**************funcion para comprobar que el string que se pasa es una fecha****************/function compruebafecha(f) {	if (f.length == 10){		var test="0123456789";		var i;		for (i=0;i<2;i++)			{			if (test.indexOf(f.charAt(i))<0){				alert(f.substring(0,2)+" dia no valido");				return false;}			}		for (i=3;i<5;i++)			{			if (test.indexOf(f.charAt(i))<0){				alert(f.substring(3,5)+" mes no valido");				return false;}			}		for (i=6;i<10;i++)			{			if (test.indexOf(f.charAt(i))<0){				alert(f.substring(6,10)+" año no valido");				return false;}			}	 if  (isBetween(parseInt(f.substring(0,2),10),1,31)==false) {		alert(f.substring(0,3)+" dia no valido");		return false;	 }	 if (isBetween(parseInt(f.substring(3,5),10),1,12)==false) {		alert(f.substring(3,5)+" mes no valido");		return false;	 }	 if ( parseInt(f.substring(6,10),10)==false ) {		alert(f.substring(6,10)+" año no valido");		return false;	 }	 if ( (parseInt(f.substring(0,3),10)==31) && ((parseInt(f.substring(3,5),10)==11)||(parseInt(f.substring(3,5),10)==4)||(parseInt(f.substring(3,5),10)==6)||(parseInt(f.substring(3,5),10)==9))) {		alert(f+" fecha incorrecta");		return false;	 }	 if ( parseInt(f.substring(3,5),10)==2 && (parseInt(f.substring(0,3),10)>29)) {		alert(f+" fecha incorrecta");		return false;	 }	//bisiestos	 if (( parseInt(f.substring(3,5),10)==2) && (parseInt(f.substring(0,3),10)==29)) {		if ((parseInt(f.substring(8,10))==0) && (parseInt(f.substring(6,8)) % 4!=0))	{		  alert("No es bisiesto");		  return false;		}		if ((parseInt(f.substring(8,10),10)!=0) && (parseInt(f.substring(8,10),10) % 4 != 0))	{		  alert("No es bisiesto");		  return false;		}	 }	}	else	{		if (f.length > 0)		{			alert(f+" fecha incorrecta. El formato debe ser dd/mm/aaaa");			return false;		}	}	return true;}function ultimodiames(f){		mes=parseInt(f.substring(3,5),10);		if (mes==2) {		if ((parseInt(f.substring(8,10))==0) && (parseInt(f.substring(6,8)) % 4!=0))	{	   	  return '28';		}		if ((parseInt(f.substring(8,10),10)!=0) && (parseInt(f.substring(8,10),10) % 4 != 0))	{	   	  return '28';		}		return '29';	}	if ((mes==1)||(mes==3)||(mes==5)||(mes==7)||(mes==8)||(mes==10)||(mes==12)) {		return '31';		}		if ((mes==2)||(mes==4)||(mes==6)||(mes==9)||(mes==11)) {		return '30';		}}/**************funcion para comprobar que el string que se pasa es una fecha****************/function compruebafechahora(f) {	if (f.length == 19)	{		var test="0123456789";		var i;		for (i=6;i<10;i++)		{			if (test.indexOf(f.charAt(i))<0)			{				alert(f.substring(6,10)+" año no valido");				return false;			}		}		for (i=0;i<2;i++)		{			if (test.indexOf(f.charAt(i))<0)			{				alert(f.substring(0,2)+" día no valido");				return false;			}		}		for (i=3;i<5;i++)		{			if (test.indexOf(f.charAt(i))<0)			{				alert(f.substring(3,5)+" mes no valido");				return false;			}		}		for (i=11;i<13;i++)		{			if (test.indexOf(f.charAt(i))<0)			{				alert(f.substring(11,13)+" hora no valida");				return false;			}		}		for (i=14;i<16;i++)		{			if (test.indexOf(f.charAt(i))<0)			{				alert(f.substring(14,16)+" minutos no validos");				return false;			}		}		for (i=17;i<19;i++)		{			if (test.indexOf(f.charAt(i))<0)			{				alert(f.substring(17,19)+" segundos no valido");				return false;			}		}		if  (isBetween(parseInt(f.substring(0,3),10),1,31)==false) 		{			alert(f.substring(0,3)+" dia no valido");		    return false;		}	 		if (isBetween(parseInt(f.substring(3,5),10),1,12)==false) 		{			alert(f.substring(3,5)+" mes no valido");		    return false;		 }		 		 if (isBetween(parseInt(f.substring(11,13),10),0,24)==false) 		 {			alert(f.substring(11,13)+" hora no valida");		    return false;		 }		 		if (isBetween(parseInt(f.substring(14,16),10),0,59)==false) 		{			alert(f.substring(14,16)+" minutos no validos");		    return false;		 }		 		if (isBetween(parseInt(f.substring(17,19),10),0,59)==false) 		{			alert(f.substring(17,19)+" segundos no validos");		    return false;		 }		 		if ( parseInt(f.substring(6,10),10)==false ) 		{			alert(f.substring(6,10)+" año no valido");		    return false;		 }		 		if ( (parseInt(f.substring(0,3),10)==31) && ((parseInt(f.substring(3,5),10)==11)||(parseInt(f.substring(3,5),10)==4)||(parseInt(f.substring(3,5),10)==6)||(parseInt(f.substring(3,5),10)==9))) 		{			alert(f+" fecha incorrecta");		    return false;		 }		 		if ( parseInt(f.substring(3,5),10)==2 && (parseInt(f.substring(0,3),10)>29)) 		{			alert(f+" fecha incorrecta");		    return false;		}		// BISIESTOS		if (( parseInt(f.substring(3,5),10)==2) && (parseInt(f.substring(0,3),10)==29)) 		{			if ((parseInt(f.substring(8,10))==0) && (parseInt(f.substring(6,8)) % 4!=0))			{				alert("No es bisiesto");			    return false;			}			if ((parseInt(f.substring(8,10),10)!=0) && (parseInt(f.substring(8,10),10) % 4 != 0))				{			   	  alert("No es bisiesto");			      return false;			}		}		// ASEGURAR FORMATO 'dd/mm/aaaa hh:mi:ss'		if(f.charAt(2)!='/' || f.charAt(5)!='/' || f.charAt(13)!=':' || f.charAt(16)!=':')		{			alert(f+" fecha incorrecta. El formato debe ser dd/mm/aaaa hh:mi:ss");			return false;		}	}	else	{		if (f.length > 0)		{			alert(f+" fecha incorrecta. El formato debe ser dd/mm/aaaa hh:mi:ss");			return false;		}	}}function isBetween(val,limit1,limit2) {var max=(limit1 > limit2) ? limit1 : limit2 ;var min=(limit1 < limit2) ? limit1 : limit2 ;if (val == max || val == min)  {return true;}if (val > min && val < max)  {return true;}return false;}function recorrer(){	var ncampo="";	var valor=0;	for (i=0; i<document.all.length;i++){		if (document.all(i).name){			ncampo=document.all(i).name;			if (document.getElementById(ncampo).isTextEdit){				if (document.getElementById(ncampo).value!=""){					valor++;}			}			if (document.getElementById(ncampo).getAttribute("type")=="select-one"){				if (document.getElementById(ncampo).value!=""){					valor++;}			}		}	}	if (valor>1){		document.formaccion.submit();	}	else{		alert('Rellene al menos un campo');	}}function PonFoco(){	if (document.forms[0]){		maximo=document.forms[0].elements.length;		for(i=0;i<maximo;i++){			if ((document.forms[0].elements[i].type=="text") || (document.forms[0].elements[i].type=="select-one")){				document.forms[0].elements[i].focus();				break;			}		}	}}function TotalListado(valor) { 	if (document.getElementById) {         document.getElementById("DivTotalList").innerHTML = valor; }     else {         DivTotalList.innerHTML = valor;     } }function abrePDFs(NomListFact,NomListPos,NomServlet,sMes){	if(NomListFact!=null && NomListFact!=""){		var Anio='&anio='+escape(document.FrmDatos.anio.value);		var Mes='&mes='+escape(sMes);					if(NomListPos!=""){			var encriptedPositions = NomListPos.split(',');			var auxNombreFichero = '';						for(var j=0;j<encriptedPositions.length+1;j++){				if(j==0){					auxNombreFichero = NomListFact.substring(0,encriptedPositions[j]);				}else if (j==encriptedPositions.length){					auxNombreFichero = NomListFact.substring((encriptedPositions[(j-1)]),NomListFact.length);				}else{					auxNombreFichero = NomListFact.substring((encriptedPositions[(j-1)]),encriptedPositions[j]);				}				NomFichero='fichero='+auxNombreFichero;				var url = NomServlet+"?"+NomFichero+Anio+Mes;				var ventana1 = window.open(url,'','scrollbars=yes,resizable=yes,titlebar=yes,toolbar=yes,menubar=yes,width=640,height=500');			}		}		else{			NomFichero='fichero='+NomListFact;			var url2 = NomServlet+"?"+NomFichero+Anio+Mes;			var ventana12 = window.open(url2,'','scrollbars=yes,resizable=yes,titlebar=yes,toolbar=yes,menubar=yes,width=640,height=500');		}		}}function busca_old(codigo,mes,cliente,fechahasta,pathImg,pathCss){	mesA=(parseInt(mes,10));	if (mes<10) mes='0'+mes;	var anio=parseInt(document.FrmDatos.anio.value,10);		var servlet='grafCurvasS';	var opcion="opcion=grafica";	var opcionxls="opcion=excel";	var codigo='&cod='+escape(codigo);	var fdesde='01/'+mes+'/'+anio;	var f=new Date(anio,mesA,1);	f=new Date(f-1);	var fhasta=f.getDate()+'/'+(f.getMonth()+1)+'/'+f.getFullYear();	var dia=f.getDate();	if (dia<10) dia='0'+dia;	var mesSig=f.getMonth()+1;	if (mesSig<10) mesSig='0'+mesSig;	var fhasta=dia+'/'+mesSig+'/'+f.getFullYear();		var desde='&f_desde='+escape(fdesde);		if (fechahasta!=null && fechahasta!='' && fechahasta.substring(3,5)==mes){		fhasta=fechahasta;	}	var hasta='&f_hasta='+escape(fhasta);			var query=opcion+codigo+desde+hasta;	var queryxls=opcionxls+codigo+desde+hasta;		var url = servlet+"?"+query;	var urlxls = servlet+"?"+queryxls;	var ventana = window.open('','','scrollbars=yes,resizable=yes,titlebar=yes,toolbar=yes,menubar=yes,width=500,height=500');	ventana.document.write("<HTML>");	ventana.document.write("<TITLE> Gr&aacute;fico </TITLE>");	ventana.document.write("<link rel='stylesheet' href='" + pathCss  + "/estilos.css' type='text/css'>");	ventana.document.write("<BODY class='fondoPagina' style='margin-top:0px;margin-left:0px';margin-right:0px>");	ventana.document.write("<table border='0' cellspacing='0' cellpadding='0' width='760' background='" + pathImg + "/fondoNaranja.gif'>");	ventana.document.write("	<tr><td width='100%'>");	ventana.document.write("		<table border='0' width='100%'><tr>");	ventana.document.write("			<td width='300'><img src='" + pathImg + "/EON_n_Esp_W.gif'></td>");	ventana.document.write("			<td width='300'  height='47'></td>");	ventana.document.write("			<td class='titulopag' align='right' nowrap>Clientes de E.On Energ&iacute;a&nbsp;&nbsp;</td>");	ventana.document.write("		</tr></table>");	ventana.document.write("	</td></tr>");	ventana.document.write("	<tr><td height='7' bgcolor='white'></td></tr>");	ventana.document.write("	<tr><td height='5' bgcolor='#000000'></td></tr>");	ventana.document.write("	<tr><td height='7' bgcolor='white'></td></tr>");	ventana.document.write("	<tr>");	ventana.document.write("		<td>");	ventana.document.write("		<table border='0' cellspacing='0' cellpadding='0' width='100%'>");	ventana.document.write("			<tr>");	ventana.document.write("				<td colspan=2 width=100%>");		ventana.document.write("<table border='0' width=100% cellspacing='0' cellpadding='0' class='fondoContenido'>");	ventana.document.write("	<tr>");	ventana.document.write("		<td>&nbsp;</td>");	ventana.document.write("		<td valign='top' width='100%' align='center' valign='middle'>");	ventana.document.write("		  	<table border='0' cellspacing='0' cellpadding='0'>");	ventana.document.write("		  		<tr><td colspan='2' nowrap align='center'><font class='textoFormTitulo'>Gr&aacute;fico de Consumo Horario</font><br></td></tr>");	ventana.document.write("				<tr><td><br></td></tr>");			ventana.document.write("				<tr>");	ventana.document.write("				<td class='textoForm' nowrap><b>"+cliente+"</b>. Fechas : "+fdesde+" - "+fhasta+"</td><td align='RIGHT' nowrap> <a href='"+urlxls+"&periodo=ch' target='_blank'><img src='" + pathImg + "/flecha.gif' border='0' align='top'>&nbsp;Informe CuartoHorario</a>&nbsp;&nbsp;&nbsp;&nbsp;<a href='"+urlxls+"&periodo=Horario'  target='_blank'><img src='" + pathImg + "/flecha.gif' border='0' align='top'>&nbsp;Informe Horario</a></td></tr>");	ventana.document.write("			<tr>");	ventana.document.write("				<td colspan='2'>&nbsp</td>");	ventana.document.write("			</tr>");	ventana.document.write("			<tr>");	ventana.document.write("				<td colspan='2'><IMG src='" + url + "' border='1'></td>");	ventana.document.write("			</tr>");	ventana.document.write("		</table></td>");	ventana.document.write("	</tr>");	ventana.document.write("</table>");	ventana.document.write("				</td>");	ventana.document.write("				<td></td>");	ventana.document.write("			</tr>");	ventana.document.write("		</table></td>");	ventana.document.write("	</tr>");	ventana.document.write("</table>");	ventana.document.write("</center>");	ventana.document.write("</body>");	ventana.document.write("</html>");}function MarcaDesmarca(valor, form){	maximo=form.elements.length;	for(i=0;i<maximo;i++){		if (form.elements[i].type=="checkbox"){			if (valor!=null && valor=="M"){				form.elements[i].checked=true;			}			else{				form.elements[i].checked=false;			}		}	}}function countElements(separador, form){	maximo=form.elements.length;	contador=0;	for(i=0;i<maximo;i++){		if ((form.elements[i].type=="checkbox") && (form.elements[i].checked)){			valorLabel=form.elements[i].id;			posL=valorLabel.indexOf(separador);			valorNFact=valorLabel.substring(0,posL);				contador=contador+parseInt(valorNFact);		}	}	if (contador==0){		alert("No se ha encontrado ningun elemento");		return false;	}	else if(contador>12){		alert("No pueden abrirse mas de 12 elementos");		return false;	}	else{		return true;	}}function deleteSelectedElements(separador, form){	maximo=form.elements.length;	contador=0;	arrayCUPS="";	for(i=0;i<maximo;i++){		if ((form.elements[i].type=="checkbox") && (form.elements[i].checked)){					valCHECKCUPS = form.elements[i].id;						if (valCHECKCUPS.indexOf("_")>=0){				posC=valCHECKCUPS.indexOf(separador);				valorCups=valCHECKCUPS.substring((posC+1),valCHECKCUPS.length);					arrayCUPS=arrayCUPS+",'"+valorCups+"'";			}			contador=contador+1;		}	}		if(contador==0){		alert("Debe seleccionar algun registro");	}	else{			if(form.aEliminaCUPS.value.length==0){			arrayCUPS=arrayCUPS.substring(1,arrayCUPS.length);			form.aEliminaCUPS.value=arrayCUPS;		}		else{			form.aEliminaCUPS.value=form.aEliminaCUPS.value+arrayCUPS;		}		form.submit();	}}function abreFormFact(separador, form){	if (countElements(separador, form)){		var Anio='anio='+escape(form.anio.value);		maximo=form.elements.length;		NomServlet="./servletDispacherS";		for(i=0;i<maximo;i++){			if ((form.elements[i].type=="checkbox") && (form.elements[i].checked)){				NomListFact=form.elements[i].value;								if(NomListFact!=null && NomListFact!=""){					if(NomListFact.indexOf(',')>=0){						while(NomListFact.indexOf(',')>=0) {							pos= NomListFact.indexOf(',');														var NomFichero = NomListFact.substring(0,pos);							var url = NomServlet+"?"+Anio+NomFichero;							var ventana1 = window.open(url,'','scrollbars=yes,resizable=yes,titlebar=yes,toolbar=yes,menubar=yes,width=640,height=500');							NomListFact=NomListFact.substring(pos+1,NomListFact.length);							NomFichero='fichero='+NomListFact;						}					}					else{						NomFichero=NomListFact;						var url2 = NomServlet+"?"+Anio+NomFichero;						var ventana12 = window.open(url2,'','scrollbars=yes,resizable=yes,titlebar=yes,toolbar=yes,menubar=yes,width=640,height=500');					}							}			}		}	}		}
