
function abreVentana(ruta,nombre,ancho,alto,herramientas,conScroll,dimensionable){

    var t,l,w,h,prop;

	if (ancho == "undefined") {
		ancho = 450;
		alto = 350;
	}

	if (herramientas == "undefined") {
		herramientas = 0;
	}
	
	if (conScroll == "undefined") {
		conScroll = 0;
	}

	if (dimensionable == "undefined") {
		dimensionable = 0;
	}		

	t=(screen.height-alto)/2;
	l=(screen.width-ancho)/2;
	if(l<0){ //mas de 800*600
		w=800+l*2;
		h=w/16*9;
		l=0;
	}else{
		w=930;
		h=550;
	}
	prop="scrollbars=no,resizable=no,status=no,width="+ancho+",height="+alto+",top="+t+",left="+l+",toolbar="+herramientas+",scrollbars="+conScroll+",resizable="+dimensionable;
	ventana = window.open(ruta,nombre, prop);   
}    

function fuera(obj){
	alert("Antes de modificar este campo debe eliminar el archivo actualmente asociado al mismo");
	obj.blur();
}


	function compruebaNumero(objeto,entero){
		if (entero)
	        refnovalida = /[^0-9]/ ; // expresión regular.    
		else 
	        refnovalida = /[^0-9,]/ ; // expresión regular.   
					
		if (refnovalida.test(objeto.value)) {      
			alert("El valor numérico introducido no es correcto"); 
			objeto.focus();
		}
	}

	function compruebaLetra(objeto){
	    refnovalida = /[^A-Za-z]/ ; // expresión regular.    
					
		if (refnovalida.test(objeto.value)) {      
			alert("Solo son válidos caracteres letras"); 
			objeto.focus();
		}
	}

	function compruebaAlfanumerico(objeto){
	    refnovalida = /[^0-9A-Za-z]/ ; // expresión regular.    
					
		if (refnovalida.test(objeto.value)) {      
			alert("Solo son válidos caracteres alfanuméricos (letras y números)"); 
			objeto.focus();
		}
	}	

function validarEmail(valor) {
  if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(valor)){
    return true
  } else {
    return false;
  }
}

function LTrim(s){
	// Devuelve una cadena sin los espacios del principio
	var i=0;
	var j=0;
	
	// Busca el primer caracter <> de un espacio
	for(i=0; i<=s.length-1; i++)
		if(s.substring(i,i+1) != ' '){
			j=i;
			break;
		}
	return s.substring(j, s.length);
}
function RTrim(s){
	// Quita los espacios en blanco del final de la cadena
	var j=0;
	
	// Busca el último caracter <> de un espacio
	for(var i=s.length-1; i>-1; i--)
		if(s.substring(i,i+1) != ' '){
			j=i;
			break;
		}
	return s.substring(0, j+1);
}
function Trim(s){
	// Quita los espacios del principio y del final
	temp = LTrim(RTrim(s.value));
	alert(temp);
	s.value = temp;
}


function devuelveLetraDNI(dni){
	l = "0";
	if ((parseInt(dni) > 0) && (parseInt(dni) < 99999999)) {
	   resto = dni % 23;

	   switch(resto) {
    	 case 0: l="T"; break;
	     case 1: l="R"; break;
    	 case 2: l="W"; break;
	     case 3: l="A"; break;
    	 case 4: l="G"; break;
	     case 5: l="M"; break;
    	 case 6: l="Y"; break;
	     case 7: l="F"; break;
    	 case 8: l="P"; break;
	     case 9: l="D"; break;
    	 case 10:l="X"; break;
	     case 11:l="B"; break;
    	 case 12:l="N"; break;
	     case 13:l="J"; break;
    	 case 14:l="Z"; break;
	     case 15:l="S"; break;
    	 case 16:l="Q"; break;
	     case 17:l="V"; break;
    	 case 18:l="H"; break;
	     case 19:l="L"; break;
    	 case 20:l="C"; break;
	     case 21:l="K"; break;
    	 case 22:l="E"; break;
	     case 23:l="U"; break;
	   }	
	}

	return l;
}

	function validaCIF(t_cif) {
	
		cif = t_cif.toUpperCase();
		var v1 = new Array(0,2,4,6,8,1,3,5,7,9); 
		var temp = 0; 
		var temp1;

		for(i=2;i<=6;i+=2) {
			temp = temp + v1[ parseInt(cif.substr(i-1,1)) ];
			temp = temp + parseInt(cif.substr(i,1));
		}

		temp = temp + v1[ parseInt(cif.substr(7,1)) ];

		temp = (10 - ( temp % 10));

		valorDevuelto = false;
		primerCaracter = cif.substr(0,1);
		ultimoCaracter = cif.substr(cif.length-1,1);

		switch(temp) {
			 case 1: if ((ultimoCaracter == "1") || (ultimoCaracter == "A")) valorDevuelto = true; break;
			 case 2: if ((ultimoCaracter == "2") || (ultimoCaracter == "B")) valorDevuelto = true; break;
			 case 3: if ((ultimoCaracter == "3") || (ultimoCaracter == "C")) valorDevuelto = true; break;
			 case 4: if ((ultimoCaracter == "4") || (ultimoCaracter == "D")) valorDevuelto = true; break;
			 case 5: if ((ultimoCaracter == "5") || (ultimoCaracter == "E")) valorDevuelto = true; break;
			 case 6: if ((ultimoCaracter == "6") || (ultimoCaracter == "F")) valorDevuelto = true; break;
			 case 7: if ((ultimoCaracter == "7") || (ultimoCaracter == "G")) valorDevuelto = true; break;
			 case 8: if ((ultimoCaracter == "8") || (ultimoCaracter == "H")) valorDevuelto = true; break;
			 case 9: if ((ultimoCaracter == "9") || (ultimoCaracter == "I")) valorDevuelto = true; break;
			 case 10: if ((ultimoCaracter == "0") || (ultimoCaracter == "J")) valorDevuelto = true; break;
	   }

		pc = primerCaracter;
	   		
		if ((pc != "A") && (pc != "B") && (pc != "C") && (pc != "D") && (pc != "E") &&
			(pc != "F") && (pc != "G") && (pc != "H") && (pc != "K") && (pc != "L") &&
			(pc != "M") && (pc != "N") && (pc != "P") && (pc != "Q") && (pc != "S") && (pc != "X"))
				valorDevuelto = false;
				
		if (cif.length < 9)
		   valorDevuelto = false;
		   
		return valorDevuelto;
	}



	function validaTarjetaCredito(numero){	
		cadTemporal = "";

		valorDevuelto = false;
		
		if (numero.length == 16) {			

			for(i=0;i<=15;i++){			
				caracter = parseInt(numero.substr(i,1));						
				
				if ((i%2) == 0){
					caracter = (parseInt(numero.substr(i,1))*2);										
					if (parseInt(caracter) >= 9) caracter = caracter - 9;
				}
				
				cadTemporal = cadTemporal + caracter;			
			}
	
			numControl = 0;
			for(i=0;i<=15;i++){
				numControl = numControl + parseInt(cadTemporal.substr(i,1));						
			}
	
	
			if (((numControl % 10) == 0) && (numControl<=150))
				valorDevuelto = true;
			else
				valorDevuelto = false;
		}
		
		   
		   
		return valorDevuelto;			
	}

//--------------------------- FUNCIONES PARA VALIDAR CUANTA BANCARIA -------------	
	function obtenerDigito(valor){
		valores = new Array(1, 2, 4, 8, 5, 10, 9, 7, 3, 6);
		control = 0;

		for (i=0; i<=9; i++)
			control += parseInt(valor.charAt(i)) * valores[i];

		control = 11 - (control % 11);

		if (control == 11) control = 0;
		else if (control == 10) control = 1;

		return control;
	}


	function validaCuentaCorriente(entidad,sucursal,dc,cuenta) {
		if (entidad.length != 4 || sucursal.length != 4 || dc.length != 2 || cuenta.length != 10)
			return false;
		else {
			if (!(obtenerDigito("00" + entidad + sucursal) == parseInt(dc.charAt(0))) || !(obtenerDigito(cuenta) == parseInt(dc.charAt(1))))
				return false;
			else
				return true;
		}
	}	
//--------------------------------------------------------------------
var win=null;
function Ventana(url,ancho,alto){
	if(win){
		win.close();
	}
	l=(screen.width-ancho)/2;
	t=(screen.height-alto)/2;
	win=window.open(url,'','top='+t+',left='+l+',width='+ancho+',height='+alto+', menubar=0, location=0, scrollbars=0, status=0, titlebar=0, resizable=0, toolbar=0');
}
