//Funciones comunes de javascript //Funciones rollin-------------------------------------------------- function rollin(src,Color) { if (!src.contains(event.fromElement)) { src.style.cursor = 'hand'; src.bgColor = Color;}} function rollout(src,Color2) { if (!src.contains(event.toElement)) { src.style.cursor = 'default'; src.bgColor = Color2;}} function pulsar(src) { if(event.srcElement.tagName=='TD'){ src.children.tags('A')[0].click();}} function abrirVentana(definition) { newwin = window.open(definition , "whatever", "scrollbars,width=650,height=400"); } //------------------------------------------------------------------- //Funciones para formularios----------------------------------------- function ComprobarCampo(nm,etiq){ if ((nm=="") || (nm=="--") || (nm=="----")){ alert("Error: Faltan datos. Campo " + etiq); return (false); } return (true); } function ComprobarNumero(nm,etiq){ if (nm==""){ alert("Error: Faltan datos en el campo " + etiq); return (false); } if (isNaN(nm)){ alert("Error: Sólo valores númericos en el campo " + etiq); return (false); }else{ return (true); } } function ComprobarFormato(nm,etiq){ //var expreg = /\W/i\@; if ( nm=="" ){ alert("Error: Faltan datos en el campo '" + etiq + "'"); return (false); } //if ( expreg.test(nm) ){ // alert("Error: Valor no válido en el campo '" + etiq +"'\nCaracteres permitidos: a-zA-Z0-9."); // return (false); //} return (true); } function ComprobarVacio(nm,etiq){ if (nm==""){ alert("Error: Faltan datos en el campo " + etiq); return (false); } return (true); } function SeleccionarTodo(formselect){ //Seleccionar todo var items = eval('document.form1.'+formselect+'.options.length'); for(var i = items - 1; i >= 0; i--) { eval('document.form1.'+formselect+'.options[i].selected = true'); } return (false); } //------------------------------------------------------------------- //Funciones sobre cadenas y números---------------------------------- function TransformarANumero(nm){ nm=CambiarPunto(nm,",","."); if (nm=="") return (0); if (isNaN(nm)){ return (0); }else{ return (parseFloat(nm)); } } function CambiarPunto(cadena,punto,coma){ if (cadena.indexOf(punto)>-1){ posComa=cadena.indexOf(punto); cadena=cadena.substring(0,posComa)+coma+cadena.substring(posComa+1,cadena.length); } return (cadena); }//fin CambiarPunto function NormalizarSalida(n){ //Realizar redondeo a dos decimales n=(Math.round(n * 100)/100); cad=''+n; cad=CambiarPunto(cad,'.',','); return (cad); }//fin NormalizarSalida //------------------------------------------------------------------- //Funciones validación DNI/CIF--------------------------------------- function nif_valido(dni,letranif) { var tira = 'TRWAGMYFPDXBNJZSQVHLCKET', letra; letra = tira.charAt(dni%23); if (letranif == letra){ return true } return false } function tratarimpar(vl){ mul=eval(vl+"*2"); str=String(mul); if (str.length==2) mul=eval(str.charAt(0)+"+"+str.charAt(1)); else mul=eval(str); return mul; } function cif_valido(cif) { partecif=cif.substr(1,7); pares=cif.charAt(2)+"+"+cif.charAt(4)+"+"+cif.charAt(6); sumapares=eval(pares); v=tratarimpar(cif.charAt(1)); v+=tratarimpar(cif.charAt(3)); v+=tratarimpar(cif.charAt(5)); v+=tratarimpar(cif.charAt(7)); C=sumapares+v; str=String(C); D=eval("10 - "+str.charAt(str.length-1)); digcontrol=eval(cif.charAt(cif.length-1)); if (D==digcontrol) return (true); else return(false); } function Verificar_Cif(cif){ cif=cif.toUpperCase(); if (cif.length==9){ if (!isNaN(cif.charAt(0))){ letraAux=cif.charAt(8); dniAux=cif.substr(0,8); return nif_valido(dniAux,letraAux); }else{ letra=cif.charAt(0); str="ABCDEFGHPQSKLMX"; if (str.indexOf(letra)==-1){ return (false); }else{ if (letra=="X"){ letraAux=cif.charAt(8); dniAux="0"+cif.substr(1,7); return nif_valido(dniAux,letraAux); }else{ pares=cif.charAt(2)+"+"+cif.charAt(4)+"+"+cif.charAt(6); sumapares=eval(pares); v=tratarimpar(cif.charAt(1)); v+=tratarimpar(cif.charAt(3)); v+=tratarimpar(cif.charAt(5)); v+=tratarimpar(cif.charAt(7)); C=sumapares+v; str=String(C); D=eval("10 - "+str.charAt(str.length-1)); if (D==10) D=0; digcontrol=eval(cif.charAt(cif.length-1)); str2="PQS"; if (str2.indexOf(letra)!=-1){ //control tipo letra return (cif.charAt(8)==String.fromCharCode(64+digcontrol)); }else{ //control tipo número if (D==digcontrol) return (true); else return(false); } } } } } return (false); } function DigitoCuenta(entidad,oficina,cuenta){ DC = new Array(1,2,4,8,5,10,9,7,3,6); //dígito de control de la oficina y la entidad s="00"+entidad+oficina; x=0; for (i=0;i<10;i++){ x=x+(parseInt(s.charAt(i))*DC[i]); } x=11-(x % 11); if (x==10) x=1; if (x==11) x=0; DCCuenta=String(x); //dígito de control del nº de cuenta s=cuenta; x=0; for (i=0;i<10;i++){ x=x+(parseInt(s.charAt(i))*DC[i]); } x=11-(x % 11); if (x==10) x=1; if (x==11) x=0; DCCuenta=DCCuenta+String(x); return DCCuenta; } //Funciones usadas en administración----------------------------------------- function ModoFuncionar(modo){ document.form2.modo.value=modo; return true; } function SeleccionarTodos(){ for (var i=0;i0&&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'; x.document.open(); x.document.write(text2); x.document.close(); } }