function isNumberKeyRut(evt){
        //list all CTRL + key combinations you want to disable
        var forbiddenKeys = new Array("a","n","c","x","v","j");
        var key;
        var isCtrl;
        var i;
        var charCode = (evt.which) ? evt.which : evt.keyCode
   		
   		if (charCode > 31 && (charCode < 48 || charCode > 57)){
   			return false;
   		}

        if(window.event)
        {
                key = window.event.keyCode;     //IE      
                if(window.event.ctrlKey)
                        isCtrl = true;
                else
                        isCtrl = false;
        }
        else
        {
                key = evt.which;     //firefox
                if(evt.ctrlKey)
                        isCtrl = true;
                else
                        isCtrl = false;
        }

        //if ctrl is pressed check if other key is in forbidenKeys array       
        if(isCtrl)
        {
                for(i=0; i<forbiddenKeys.length ; i++)
                {
                        //case-insensitive comparation
                        if(forbiddenKeys[i].toLowerCase() == String.fromCharCode(key).toLowerCase())
                        {
                                return false;
                        }
                }
        return false;
        }
        
        return true;
}





function isNumberKeyDv(evt){
   var charCode = (evt.which) ? evt.which : evt.keyCode
   if (charCode > 31 && (charCode < 48 || charCode > 57)){
	   	if (charCode < 107 && charCode > 75)
	   	return false;
   	   	if (charCode < 75) 
	   	return false;
	   	if (charCode > 107)    		
	   	return false;
	}
   return true;
}
 
function isNumberKeyPhone(evt){
   var charCode = (evt.which) ? evt.which : evt.keyCode
   if (charCode > 31 && (charCode < 48 || charCode > 57))
	   return false;     
   return true;
}

function isNumberKey(evt){
   var charCode = (evt.which) ? evt.which : evt.keyCode
   if (charCode > 31 && (charCode < 48 || charCode > 57))
	   return false;     
   return true;
}

function isAlfanumerico(evt){ 
        var forbiddenKeys = new Array("a","n","c","x","v","j");
        var key;
        var isCtrl;
        var i;
		var tecla = (evt.which) ? evt.which : evt.keyCode;
		var charCode = (evt.which) ? evt.which : evt.keyCode;
	
	
    	if(window.event)
        {
                key = window.event.keyCode;     //IE      
                if(window.event.ctrlKey)
                        isCtrl = true;
                else
                        isCtrl = false;
        }
        else
        {
                key = evt.which;     //firefox
                if(evt.ctrlKey)
                        isCtrl = true;
                else
                        isCtrl = false;
        }

        //if ctrl is pressed check if other key is in forbidenKeys array
        if(isCtrl)
        {
                for(i=0; i<forbiddenKeys.length ; i++)
                {
                        //case-insensitive comparation
                        if(forbiddenKeys[i].toLowerCase() == String.fromCharCode(key).toLowerCase())
                        {
                                return false;
                        }
                }
        return false;
        }
        
        if(65<=tecla && tecla<=90 || 97<=tecla && tecla<=122 || tecla == 32 || tecla == 8 || tecla == 9 || tecla == 241){
	 		return true;
		} else {
     		return false; 
    	}
    	return true;
}

function isCadenaValida(evt){
	var tecla = (evt.which) ? evt.which : evt.keyCode
	if( isAlfanumerico(evt) || isNumberKey(evt)){
	  return true;
	} else {
      return false; 
    }	
}

function EliminarPegar(evt) {
 		var forbiddenKeys = new Array("a","n","c","x","v","j");
        var key;
        var isCtrl;
        var i;
		var charCode = (evt.which) ? evt.which : evt.keyCode;		
		if(window.event)
        {
                key = window.event.keyCode;     //IE      
                if(window.event.ctrlKey)
                        isCtrl = true;
                else
                        isCtrl = false;
        }
        else
        {
                key = evt.which;     //firefox
                if(evt.ctrlKey)
                        isCtrl = true;
                else
                        isCtrl = false;
        }

        //if ctrl is pressed check if other key is in forbidenKeys array
        if(isCtrl) {
                for(i=0; i<forbiddenKeys.length ; i++) {
                        //case-insensitive comparation
                        if(forbiddenKeys[i].toLowerCase() == String.fromCharCode(key).toLowerCase())
                        {
                                return false;
                        }
                }
        return false;
        }
}

function isCadenaValidaCalle(evt){
	 	var forbiddenKeys = new Array("a","n","c","x","v","j");
        var key;
        var isCtrl;
        var i;
		var tecla = (evt.which) ? evt.which : evt.keyCode;
		var charCode = (evt.which) ? evt.which : evt.keyCode;
	
    	if(window.event)
        {
                key = window.event.keyCode;     //IE      
                if(window.event.ctrlKey)
                        isCtrl = true;
                else
                        isCtrl = false;
        }
        else
        {
                key = evt.which;     //firefox
                if(evt.ctrlKey)
                        isCtrl = true;
                else
                        isCtrl = false;
        }

        //if ctrl is pressed check if other key is in forbidenKeys array
        if(isCtrl)
        {
                for(i=0; i<forbiddenKeys.length ; i++)
                {
                        //case-insensitive comparation
                        if(forbiddenKeys[i].toLowerCase() == String.fromCharCode(key).toLowerCase())
                        {
                                return false;
                        }
                }
        return false;
        }
		

	if( ( isAlfanumerico(evt) || isNumberKey(evt) || tecla == 35 || tecla == 45) && tecla != 37 ){
	  return true;
	} else {
      return false; 
    }	
}

function isCadenaValidaCaptcha(evt){
	var tecla = (evt.which) ? evt.which : evt.keyCode	
	if( ( isAlfanumerico(evt) || isNumberKey(evt) || tecla == 45) && tecla != 37 ){
	  return true;
	} else {
      return false; 
    }	
}

function isCaracterEmail(evt) {
	var tecla = (evt.which) ? evt.which : evt.keyCode;
	var isCtrl = false;
	var isShift = false;
	var teclasPermitidas = new Array("a","n","c","x","v","j", "~", "¬");
	var codigosNoPermitidos = new Array('!', '"', '#', '$', '%', '&', '/', '(', ')', '=', '\'', '¿', '¡', '?', '-', ':', ';', ',', '°', '|', '¬', '´', '+', '{', '}', '[', ']', '<', '>', '/', '*', '´', '¨', '~');
	var noPermitidosSinShift = new Array("|", "/", "*", "-", "+", "<", "´", "{", "}", ",", "'", "¿");
	if (window.event) {
		key = window.event.keyCode;     //IE      
		isCtrl = false;
		if (window.event.ctrlKey) { isCtrl = true; }
		if (window.event.shiftKey) { isShift = true; }
	} else {			
		key = evt.which;     //firefox
		isCtrl = false;
		if (evt.ctrlKey) { isCtrl = true; }
		if (evt.shiftKey) { isShift = true; }
	}
	if (isCtrl) {
		for (i = 0; i < teclasPermitidas.length; i++) {
			if (teclasPermitidas[i].toLowerCase() == String.fromCharCode(key).toLowerCase()) {
				return false;
				break;
			}
		}
	}
	if (isShift) {
		for (j = 0; j < codigosNoPermitidos.length; j++) {
			if (codigosNoPermitidos[j] == String.fromCharCode(key).toLowerCase()) {
				return false;
				break;
			}
		} 		
	} else {
		for (k = 0; k < noPermitidosSinShift.length; k++) {
			if (noPermitidosSinShift[k] == String.fromCharCode(key).toLowerCase()) {
				return false;
				break;
			}
		} 
	}		
}

function isDvRut(evt) {
	var digitosPermitidos = new Array("1", "2", "3", "4", "5", "6", "7", "8", "9", "0", "k");
	var tecla = (evt.which) ? evt.which : evt.keyCode;
	if (window.event) {
		key = window.event.keyCode;     //IE      
	} else {			
		key = evt.which;     //firefox
	}
	var TeclaString = String.fromCharCode(key).toLowerCase();
	for (i = 0; i < digitosPermitidos.length; i++) {
		if (digitosPermitidos[i] == TeclaString) {
			return true;
		}
	}
	if (key == 8) {
		return true;
	}
	return false;
}

function validaLargoTextArea(campo, largo, evt) {
	var key = null;
	var isShift = false;
	if (window.event) {
		key = window.event.keyCode;     //IE      
		if (window.event.shiftKey) { isShift = true; }
	} else {			
		key = evt.which;     //firefox
		if (evt.ctrlKey) { isCtrl = true; }
	}
	
	if (campo.value.length > largo) {
		if (key == 8 || key == 0) return true;
		alert("Solo se permiten "+largo+" caracteres ");
		campo.value.substring(0, largo); 		
		return false;
	}		
	return true;
}