function ConvierteMayusculas(){
/*
	if ((window.event.keyCode >= 65 && window.event.keyCode <= 90) || (window.event.keyCode >= 97 && window.event.keyCode <= 122) || (window.event.keyCode=241)) {
		x = String.fromCharCode(window.event.keyCode);
		x = x.toUpperCase();
		
		window.event.keyCode = x.charCodeAt(0)
		
	}
	*/
}

function Validacaracteres(field) 
{
	if ((window.event.keyCode < 65 || window.event.keyCode > 122) && (window.event.keyCode != 241) && (window.event.keyCode != 209) && (window.event.keyCode != 32) )
	{
		window.event.keyCode = 0
	}
}

function ValidaCarNum(field)
{
	if ((window.event.keyCode < 65 || window.event.keyCode > 122)   &&  (window.event.keyCode < 48 || window.event.keyCode > 57) && (window.event.keyCode != 241) && (window.event.keyCode != 209) && (window.event.keyCode != 32))
	{
		window.event.keyCode = 0
	}
}


function ValidaNombre(field){
	if ((window.event.keyCode < 65 || window.event.keyCode > 122) && (window.event.keyCode != 32) && (window.event.keyCode != 241) && (window.event.keyCode !=209 )){
		window.event.keyCode = 0
	}
}



function ValidaEntero(field) {
	if ((window.event.keyCode < 48 || window.event.keyCode > 57)){
		window.event.keyCode = 0
	}
}

function ValidaMoney(field) {
	if ((window.event.keyCode < 48 || window.event.keyCode > 57) && (window.event.keyCode != 46) ){
		window.event.keyCode = 0
	}else{
		if(window.event.keyCode == 46){
			if(field.value.indexOf(".")!=-1){
				if(field.value.indexOf(".",field.value.indexOf("."))!=-1){
					window.event.keyCode = 0
				}
			}
		}
	}
}

function IsVacio(tocheck,strMSG) // Valida si una cadena es vacia
{
	var valor,valuax=tocheck.value;
	valor=valuax.replace(/ /gi,"");
	len=valor.length;
	if(len<=0)
	{
		if (strMSG.length > 0){ 
			alert (strMSG.toUpperCase());
		}
	
		if (tocheck.type!="select-one"){
			tocheck.select();
		}
		tocheck.focus();
		return true;
	}
 return false;    
}

function IsEntero(field,strMSG) {
var valid = "0123456789"
var ok = "yes";
var temp;
var len=field.length
	if (field.value.length==0) 
	{
		alert(strMSG.toUpperCase());
		field.focus();
		field.select();
		return false;
	}
	for (var i=0; i<field.value.length; i++) 
	{
		temp = "" + field.value.substring(i, i+1);
		if (valid.indexOf(temp) == "-1")
		{
			alert(strMSG.toUpperCase());
			field.focus();
			field.select();
			return false;
		}
	}
	return true
}

function IsMoney(field,strMSG) {
var valid = "0123456789."
var ok = "yes";
var temp;
var tmpValue = field.value;
field.value =  QuitaFormato(field.value);
var len=field.length
	if (field.value.length==0) 
	{
		alert(strMSG.toUpperCase());
		field.focus();
		field.select();
		return false;
	}

	for (var i=0; i<field.value.length; i++) 
	{
		temp = "" + field.value.substring(i, i+1);
		if (valid.indexOf(temp) == "-1")
		{
			field.value = tmpValue;
			alert(strMSG.toUpperCase());
			field.focus();
			field.select();
			return false; 
		}
	}
	field.value = tmpValue;
	return true;
}

function Redondea(Valor,Decimales){
	return Math.round(parseFloat(Valor)*100)/100;
}

function llenaCombo(combox, COLONIAS){
	combox = eval(combox);
	ClearCombo(combox);
	cadena = COLONIAS
	Colonia = cadena.split("|")
	for(i=0;i< Colonia.length-1;i++){
		var newOption = new Option(Colonia[i],Colonia[i], false, true);
		combox.options[combox.options.length] = newOption;
	}
}

function ClearCombo(Combox){
	len = Combox.length;
	for(i=0;i<len;i++){
		Combox.options[0] = null
	}
}

function SeleccionaCombo(Combox, VALORID){
	Combox = eval(Combox);
	len = Combox.length;
	for(i=0;i<len;i++){
		if (Combox.options[i].value==VALORID){
			Combox.options[i].selected = true;
			break;
		}
	}
}

function FormateaMonedaOnPress(field)
{
	if ((window.event.keyCode < 48 || window.event.keyCode > 57) && (window.event.keyCode < 96 || window.event.keyCode > 105)  && (window.event.keyCode != 46) ) return false;
	field.value = FormateaMoneda(field.value)
}

function Reemplaza(strCadena1, strBuscar, strReemplazar)
{
	var strCadena = new String(strCadena1);
	while (strCadena.indexOf(strBuscar)!=-1) {
		strCadena = strCadena.replace(strBuscar, strReemplazar);
	}
	return (strCadena);
}

function QuitaFormato(strCadena)
{
	return (Reemplaza(strCadena, ",", ""));
}

function FormateaMoneda(Numero){
	var strNumero = "", Entero="", Coma = ",";
	Numero = Reemplaza(Numero, ",", "");	
	if(Numero.indexOf(".")!=-1){
		arrNumero = Numero.split(".")
		Entero	=	arrNumero[0];
		Decimal	=	arrNumero[1];
		if (Decimal == "") {Decimal = "."} else {Decimal = "." + Decimal;}
	}
	else{
		Entero	=	Numero; 
		Decimal	=	"";
	}
	x = 1;
	for (i = Entero.length-1;  i >= 0;  i--) {
		ch = Entero.charAt(i);
		strNumero = ch + strNumero;
		if (x == 3 && i > 0){
			strNumero = Coma + strNumero; 
			 x = 0;
		}
		x = x + 1;
	}
	
	if (Decimal != ""){
	   if(Decimal.length >2){
	     Numero = strNumero + Decimal;
	     Numero = strNumero +Numero.substr(Numero.indexOf("."),3);
	  }else{
	    Numero = strNumero + Decimal;		  
	  }   
	}else{
		Numero = strNumero;
	}
	return(Numero);
}

function NoCaracteresInvalidos()
{
	var ascii = window.event.keyCode;
	
	window.event.returnValue = !(ascii == 39 | ascii == 60);
	
} // function NoCaracteresInvalidos()

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

    function EsHoraConAlert(control, mensaje)
    {
        if(control.value.length==0) return true;
    
        if (parseInt(control.value) <= 23) return true;
    	
        alert(mensaje);
        control.focus();
        control.select();
        return false;
    	
    } //function EsHoraConAlert(control, mensaje)

    function EsMinutoConAlert(control, mensaje)
    {
        if(control.value.length==0) return true; 
    
        if (parseInt(control.value) <= 59) return true;
    	
        alert(mensaje);
        control.focus();
        control.select();
        return false;
    	
    } //function EsMinutoConAlert(control, mensaje)

    function SoloNumerosPositivos()
    {
	    var ascii = window.event.keyCode;
	    window.event.returnValue = (ascii >= 48 & ascii <= 57);
    } // function SoloNumeros(texto)

    function EsFechaConAlert(control, mensaje)
    {
        if (control.value == "" || EsFecha(control.value) ) return true;
    	
        alert(mensaje);
        control.focus();
        control.select();
        return false;
    	
    } // function EsFechaConAlert(control, mensaje)

    function FormatearFecha(control)
    {
        if (control.value.length == 2 | control.value.length == 5) control.value = control.value + "/";

    } // function FormatearFecha(control)

    function EsFecha(texto)
    {
        var fechaRegularExpression = /^([\d]{2}[\/\-][\d]{2}[\/\-][\d]{4})$/;
        var diasDelMes;
        var validado = false;
    	
        if (fechaRegularExpression.test(texto))
        {
            var dia = parseInt(texto.substr(0, 2), 10);
            var mes = parseInt(texto.substr(3, 2), 10);
            var anio = parseInt(texto.substr(6,4), 10);

            if ((dia >=1 & dia <= 31) & (mes >= 1 & mes <= 12) & (anio >= 1900 & anio <= 2050))
            {
                switch (mes)
                {
	                case 1: case 3: case 5: case 7: case 8: case 10: case 12:
		                diasDelMes = 31;
		                break;
    					
	                case 2:
		                if (anio % 4 == 0)
			                {diasDelMes = 29;}
		                else
			                {diasDelMes = 28;}
		                break;
    					
	                case 4: case 6: case 9: case 11:
		                diasDelMes = 30;
		                break;
    					
                } // switch (mes)
    			
                if (dia <= diasDelMes)
                    { validado = true; }
    			
            } // if ((dia >=1 & dia <= 31) & (mes >= 1 & mes <= 12) & (anio >= 1900 & anio <= 2050))
    		
        } // if (fechaRegularExpression.test(texto))
        return validado;
    }
   
      function EsFechaMayorHoy(control, pFechaActual)
    {
    	
        var fechaRegularExpression = /^([\d]{2}[\/\-][\d]{2}[\/\-][\d]{4})$/;
        var diasDelMes;
        var validado = false;
        var strFecha = control.value;
    	
    	//PRIMERO SE ASEGURA QUE SEA FECHA:
        if (fechaRegularExpression.test(strFecha))
        {
            var dia = parseInt(strFecha.substr(0, 2), 10);
            var mes = parseInt(strFecha.substr(3, 2), 10);
            var anio = parseInt(strFecha.substr(6,4), 10);

            if ((dia >=1 & dia <= 31) & (mes >= 1 & mes <= 12) & (anio >= 1900 & anio <= 2050))
            {
                switch (mes)
                {
	                case 1: case 3: case 5: case 7: case 8: case 10: case 12:
		                diasDelMes = 31;
		                break;
    					
	                case 2:
		                if (anio % 4 == 0)
			                {diasDelMes = 29;}
		                else
			                {diasDelMes = 28;}
		                break;
    					
	                case 4: case 6: case 9: case 11:
		                diasDelMes = 30;
		                break;
    					
                } // switch (mes)
    			
                if (dia <= diasDelMes)
                { 
                    //HASTA AQUI SE COMPRUEBA QUE SI ES UNA FECHA LOGICA.
                    //AHORA COMPROBAR QUE NO SEA MAYOR QUE EL DIA ACTUAL.
                    
                    //[EN CONSTRUCCION...]
                    validado = true; 
                }
    			
            } // if ((dia >=1 & dia <= 31) & (mes >= 1 & mes <= 12) & (anio >= 1900 & anio <= 2050))
    		
    	}//if (fechaRegularExpression.test(strFecha))	
    	return validado;    
    } // function EsFecha(texto)
  
  	function NoFocus(Objeto){
        document.getElementById(Objeto).blur();
    } 

    function ReemplazaCaracteresRaros(Campo){
        var Valor = Campo.value;    
        Valor = Reemplaza(Valor,"<","");
        Valor = Reemplaza(Valor,"'","");
        Campo.value = Valor;
    }
