//
//- Hoja de estilos Diputacion de Salamanca (Intranet)
//
//- Mod: JAC 4/8/2003- Originales en intra0
//


//============= Estilo ====================
function fEstilo() {
	document.writeln("<LINK rel=\"stylesheet\" type=\"text/css\" href=\"/estilo/estilo.css\">");
/*   document.writeln("<style><!--");

   document.writeln("A:hover {text-decoration:bold; color:red;}");
   document.writeln("A:link {text-decoration:underline; color:blue;}");
   document.writeln("H1{ font-family: ARIAL; color: rgb(128,0,128) }");
   document.writeln("H2{ font-family: ARIAL; color: rgb(128,0,128) }");
   document.writeln("H3{ font-family: ARIAL; color: rgb(128,0,128) }");
   document.writeln("H4{ font-family: ARIAL; color: rgb(128,0,128) }");
   document.writeln("H5{ font-family: ARIAL; color: rgb(128,0,128) }");
   document.writeln("--></style>");
*/
};

function fEstiloGcSubv() {
	document.writeln("<LINK rel=\"stylesheet\" type=\"text/css\" href=\"/estilo/estiloGcSubv.css\">");

};

function fEstiloInterCultura() {
	document.writeln("<LINK rel=\"stylesheet\" type=\"text/css\" href=\"/estilo/estiloInterCultura.css\">");

};

//============= Cabecera de Pagina ====================
function fCabecera(tit,esc) {
	//document.writeln("<br>");
   document.writeln("<table border='0'>");
   document.writeln("<tr><td>");
   /*if (esc!=0) {
	document.writeln("  <a href='http://www.lasalina.es:81' target=_top>");
	document.writeln("  <img SRC='/img/dipup256.gif' BORDER='0' align='left' ></a>");
   };*/
   if (tit)
	document.writeln("  </td><td valign='bottom' nowrap>");
   else document.writeln("  </td><td valign='middle' nowrap>");
   document.writeln("  <h3><b><font COLOR='#005CA3'>Intranet de la Diputación de Salamanca<br>");
   if (tit) document.writeln("  <small>" + tit + "</small></b></FONT>");
     else   document.writeln("  </b></FONT>");
   document.writeln("  </td></tr>");
   document.writeln("</table>");
   //document.writeln("<img SRC='/img/raya1.gif' BORDER='0' width='591' height='4'>");
   document.writeln("<br><table border=0 width='100%'>");
   document.writeln("<tr><td bgcolor='black' height=1 class=raya></td></tr></table><br>");

};

//============= Pie de Pagina ====================
function fPie() {
   document.writeln("<br><table border=0 width='100%'>");
   document.writeln("<tr><td bgcolor='black' height=1 class=raya></td></tr></table><br>");
   //document.writeln("<br><img SRC='http://www.lasalina.es:81/img/raya1.gif' BORDER=0 width=600 height=4><br><br>");
   document.writeln("<a HREF='javascript:window.history.back()'>");
   document.writeln("<img src='/img/retroceder.gif' alt='Retroceder' border=0 align='middle'></a><br>");
   
};
//============= Estadisticas ====================
function fEstadistica(clave,con) {
};
//================================================

//============= Funcion de valida fechas ====================
function validaFecha(campo){
var cadenaFechaNumerica = "";
	var i;
	var anio = "";
	var mes = "";
	var dia = "";
	var bisiesto=0;
	var separador = "/";
	var flag=1;
	var	longuitud=0;
	var inicio=0;
	var fin=0;
	
	var fecha = campo.value;
	
	//fecha vacia
	if(fecha==""){
		campo.value="";
		return;
	}
	
	/*******************************************************************************************************************/
	/*******************************************************************************************************************/
	/*******************************************************************************************************************/
	while((flag==1) && (longuitud<fecha.length)){
		if(isNaN(fecha.substring(longuitud,longuitud+1))!=0){
			separador = fecha.substring(longuitud,longuitud+1);
			flag = 0;
		}
		longuitud++;
	}

	if(flag==1){
		campo.className="aviso";
		alert("Formato de fecha incorrecto: dd/mm/aaaa");	
       campo.className="";
       campo.focus();
       return 1;
	}
	
	fin = fecha.indexOf(separador,inicio);
	if(fin!=0){
		dia = fecha.substring(inicio,fin);
		inicio = fin + 1;
	}
	else{
		campo.className="aviso";
		alert("Formato de fecha incorrecto: dd/mm/aaaa");	
       campo.className="";
       campo.focus();
       return 1;
	}

	fin = fecha.indexOf(separador,inicio);
	if(fin > 0){
		mes = fecha.substring(inicio,fin);
		inicio = fin +1;
	}else{
		campo.className="aviso";
		alert("Formato de fecha incorrecto: dd/mm/aaaa");	
       campo.className="";
       campo.focus();
       return 1;

	}

	fin=fecha.length;	
	anio = fecha.substring(inicio,fin);
	if((anio.length<2) || (anio.length>4) || (anio.length==3)){ 
		campo.className="aviso";
		alert("Formato de fecha incorrecto: dd/mm/aaaa");	
       campo.className="";
       campo.focus();
       return 1;
	}

	
	if((dia.length<2) && (eval(dia)<=9)){
		dia = "0" + dia;
	}
	
	if((mes.length<2) && (eval(mes)<=9)){
		mes = "0" + mes;
	}
	
	if(anio.length==2){
		anio = "20" + anio;
	}

	
	/*******************************************************************************************************************/
	/*******************************************************************************************************************/
   /*******************************************************************************************************************/
	

	
    /* Validacion del mes*/ 
    if ((eval(mes) < 1) || (eval(mes) > 12)) {
       campo.className="aviso";
       alert("Formato de fecha incorrecto: dd/mm/aaaa");	
       campo.className="";
       campo.focus();
       return 1;
    }
            
    /* Validacion del día*/
    if (eval(dia) < 1) {
       campo.className="aviso";
       alert("Formato de fecha incorrecto: dd/mm/aaaa");	
       campo.className="";
       campo.focus();
       return 1;
    }
    
    /* Validacion anio bisiesto / febrero / di */
    if ((eval(anio) % 4 == 0) || (eval(anio) % 100 == 0) || (eval(anio) % 400 == 0)) {
        bisiesto = 1;
    }
    if ((eval(mes) == 2) && (bisiesto == 1) && (eval(dia) > 29)) {
       campo.className="aviso";
       alert("Formato de fecha incorrecto: dd/mm/aaaa");	
       campo.className="";
       campo.focus();
       return 1;
    }
    
    if ((eval(mes) == 2) && (bisiesto != 1) && (eval(dia) > 28)) {
       campo.className="aviso";
       alert("Formato de fecha incorrecto: dd/mm/aaaa");	
       campo.className="";
       campo.focus();
       return 1;
    }
    
    /* Validacion of otros meses */
    if ((eval(dia) > 31) && ((eval(mes) == 1) || (eval(mes) == 3) || (eval(mes) == 5) || (eval(mes) == 7) || (eval(mes) == 8) || (eval(mes) == 10) || (eval(mes) == 12))) {
       campo.className="aviso";
       alert("Formato de fecha incorrecto: dd/mm/aaaa");	
       campo.className="";
       campo.focus();
       return 1;
    }
    if ((eval(dia) > 30) && ((eval(mes) == 4) || (eval(mes) == 6) || (eval(mes) == 9) || (eval(mes) == 11))) {
       campo.className="aviso";
       alert("Formato de fecha incorrecto: dd/mm/aaaa");	
       campo.className="";
       campo.focus();
       return 1;
    }
    campo.value = dia + separador + mes + separador + anio;
}

function validaNumero(campo){
	var numero = campo.value;
	
	//fecha vacia
	if(numero==""){
		campo.value="";
		return;
	}

	if(isNaN(numero)){
		campo.className="aviso";
                alert("Formato numérico incorrecto.");	
		campo.className="";
		campo.focus();
                return 1;
	}
}



var arrLetras = new Array(23);
i=0;
arrLetras[i++]="T";
arrLetras[i++]="R";
arrLetras[i++]="W";
arrLetras[i++]="A";
arrLetras[i++]="G";
arrLetras[i++]="M";
arrLetras[i++]="Y";
arrLetras[i++]="F";
arrLetras[i++]="P";
arrLetras[i++]="D";
arrLetras[i++]="X";
arrLetras[i++]="B";
arrLetras[i++]="N";
arrLetras[i++]="J";
arrLetras[i++]="Z";
arrLetras[i++]="S";
arrLetras[i++]="Q";
arrLetras[i++]="V";
arrLetras[i++]="H";
arrLetras[i++]="L";
arrLetras[i++]="C";
arrLetras[i++]="K";
arrLetras[i++]="E";

i=1;
var arrCif = new Array(11);
arrCif[i++] = "A";
arrCif[i++] = "B";
arrCif[i++] = "C";
arrCif[i++] = "D";
arrCif[i++] = "E";
arrCif[i++] = "F";
arrCif[i++] = "G";
arrCif[i++] = "H";
arrCif[i++] = "I";
arrCif[i++] = "J";

function anadeLetra(dni){
    mod = dni%23;
    return dni + arrLetras[mod];
}

function chequeaDNI(dni){
    numero = dni.substring(0,9);
    letra = dni.substring(9,10).toUpperCase();
    if (arrLetras[numero%23] == letra){
        return true;
    }else{
        return false;
    }
}

function chequeaCIF(dni){    
    dni = dni.substring(1,10);
    
    a1 = dni.charAt(0);
    if (!isNaN(a1)){
        return false;
    }
    p2 = dni.charAt(1);
    if (isNaN(p2)){
        return false;
    }
    p3 = dni.charAt(2);
    if (isNaN(p2)){
        return false;
    }
    d4 = dni.charAt(3);
    if (isNaN(d4)){
        return false;
    }
    d5 = dni.charAt(4);
    if (isNaN(d5)){
        return false;
    }
    d6 = dni.charAt(5);
    if (isNaN(d6)){
        return false;
    }
    d7 = dni.charAt(6);
    if (isNaN(d7)){
        return false;
    }
    d8 = dni.charAt(7);
    if (isNaN(d8)){
        return false;
    }
    c9 = dni.charAt(8).toUpperCase();

    var Cif = new Array(10);
    Cif[1] = a1;
    Cif[2] = p2;
    Cif[3] = p3;
    Cif[4] = d4;
    Cif[5] = d5;
    Cif[6] = d6;
    Cif[7] = d7;
    Cif[8] = d8;
    //ahora el axiliar
    
    //Suma:= StrToInt(Cif[3])+StrToInt(Cif[5])+StrToInt(Cif[7]);
    suma = parseInt(Cif[3]) + parseInt(Cif[5]) + parseInt(Cif[7]);
    suma = parseInt(suma);
    
    //for n := 1 to 4 do
    for (i=1;i<=4;i++){
        //Suma := Suma + ((2*StrToInt(Cif[2*n])) mod 10)+((2*StrToInt(Cif[2*n])) div 10);
        suma = parseInt(suma) + ((parseInt((2*parseInt(Cif[2*i]))) % 10)) + parseInt((2*parseInt(Cif[2*i]))) / 10;
        suma = parseInt(suma);        
    }
    //Control := 10 - (Suma mod 10);
    control = 10 - (suma % 10);
    
    if (control == c9){
        return true;
    }
    

    if (arrCif[control] == c9){
        return true;
    }

}
function compruebaIF(dni){
    for(i=dni.length;i<10;i++){
        dni = "0" + dni;
    }
    //primero comprobamos si es nif
    if (chequeaDNI(dni)){
        return true;
    }
    if (chequeaCIF(dni)){
        return true;
    }

    return false;
}


//================================================

