function IsNumeric(valor) 
{ 
var log=valor.length; var sw="S"; 
for (x=0; x<log; x++) 
{ v1=valor.substr(x,1); 
v2 = parseInt(v1); 
//Compruebo si es un valor numérico 
if (isNaN(v2)) { sw= "N";} 
} 
if (sw=="S") {return true;} else {return false; } 
} 
var primerslap=false; 
var segundoslap=false; 

function formateaFecha(fecha) 
{ 
var long = fecha.length; 
var dia; 
var mes; 
var ano; 
if ((long>=2) && (primerslap==false)) { dia=fecha.substr(0,2); 
if ((IsNumeric(dia)==true) && (dia<=31) && (dia!="00")) { fecha=fecha.substr(0,2)+"/"+fecha.substr(3,7); primerslap=true; } 
else { fecha=""; primerslap=false;} 
} 
else 
{ dia=fecha.substr(0,1); 
if (IsNumeric(dia)==false) 
{fecha="";} 
if ((long<=2) && (primerslap=true)) {fecha=fecha.substr(0,1); primerslap=false; } 
} 
if ((long>=5) && (segundoslap==false)) 
{ mes=fecha.substr(3,2); 
if ((IsNumeric(mes)==true) &&(mes<=12) && (mes!="00")) { fecha=fecha.substr(0,5)+"/"+fecha.substr(6,4); segundoslap=true; } 
else { fecha=fecha.substr(0,3);; segundoslap=false;} 
} 
else { if ((long<=5) && (segundoslap=true)) { fecha=fecha.substr(0,4); segundoslap=false; } } 
if (long>=7) 
{ ano=fecha.substr(6,4); 
if (IsNumeric(ano)==false) { fecha=fecha.substr(0,6); } 
else { if (long==10){ if ((ano==0) || (ano<1900) || (ano>2100)) { fecha=fecha.substr(0,6); } } } 
} 
if (long>=10) 
{ 
fecha=fecha.substr(0,10); 
dia=fecha.substr(0,2); 
mes=fecha.substr(3,2); 
ano=fecha.substr(6,4); 
// Año no biciesto y es febrero y el dia es mayor a 28 
if ( (ano%4 != 0) && (mes ==02) && (dia > 28) ) { fecha=fecha.substr(0,2)+"/"; } 

// Año  biciesto y es febrero y el dia es mayor a 29 
if ( (ano%4 == 0) && (mes ==02) && (dia > 29) )
 { fecha=fecha.substr(0,2)+"/"; } 
 
 // meses 04 o 06 o 09 o 11 el dia no puede ser mayor 30 
if ( ((mes ==04)||(mes ==06)||(mes ==09)||(mes ==11)) && (dia > 30) )
 { fecha=fecha.substr(0,2)+"/"; } 

}
 

return (fecha); 
}


function validoSalidaFecha (fecha) 
{ 
var largo = fecha.length; 
//si la fecha esta completa o vacia dejo lo que tiene, sino lo vacio
if ((largo==0) || (largo==10))
{ 
return(fecha); 
} 
else
{ 
fecha='';
return (fecha)
} 
} 



//LAS HORAS
function validoSalidaHora (hora) 
{ 
var long = hora.length; 
//si la hora esta completa o vacia dejo lo que tiene, sino lo vacio
if ((long==0) || (long==5))
{ 
return(hora); 
} 
else
{ 
hora='';
return (hora)
} 
} 


function formateaHHSS(hora) 
{ 
var largo = hora.length; 
var dia; 
var mes; 

if ((largo>=2) && (primerslap==false)) { dia=hora.substr(0,2); 
if ((IsNumeric(dia)==true) && (dia<=23) ) { hora=hora.substr(0,2)+":"+hora.substr(3,7); primerslap=true; } 
else { hora=""; primerslap=false;} 
} 
else 
{ dia=hora.substr(0,1); 
if (IsNumeric(dia)==false) 
{hora="";} 
if ((largo<=2) && (primerslap=true)) {hora=hora.substr(0,1); primerslap=false; } 
} 
if ((largo>=5) && (segundoslap==false)) 
{ mes=hora.substr(3,2); 
if ((IsNumeric(mes)==true) &&(mes<=59) ) { hora=hora.substr(0,5); segundoslap=true; } 
else { hora=hora.substr(0,3); segundoslap=false;} 
} 
else { if ((largo<=5) && (segundoslap=true)) { hora=hora.substr(0,5); segundoslap=false; } } 


if (largo>=5) 
{ 
hora=hora.substr(0,5); 
dia=hora.substr(0,2); 
mes=hora.substr(3,2); 
} 
return (hora); 
}

//solo numeros
function soloNumeros(valor) 
{ 
if (IsNumeric(valor)==false) 
{valor="";} 
return (valor); 
}


