var defaultEmptyOK = false

var abilitato=0;
var strin=""; 
var error = true

function noenter() 
{
	if(window.event && window.event.keyCode == 13)
		return !(window.event && window.event.keyCode == 13); 
}

function test (valor)
{
	alert( valor.value );
	valor.focus();
}

function isEmpty (s)
{   
	return ((s == null) || (s.length == 0));
}

function isDigit (c)
{   
	return ((c >= "0") && (c <= "9"));
}

function isFloat (s)
{   
	var k;
    var dotAppeared;
    dotAppeared = false;

    if (isEmpty(s)) 
       if (isNumber.arguments.length == 1) 
	   	return defaultEmptyOK;
       else 
	   	return (isNumber.arguments[1] == true);
    
    for (k = 0; k < s.length; k++)
    {   
        var c = s.charAt(k);
        if( k != 0 ) 
		{
            if ( c == "." ) 
			{
                if( !dotAppeared )
                    dotAppeared = true;
                else
                    return false;
            } 
			
			else     
            
			    if (!isDigit(c)) 
					return false;
        } 
		else 
		{ 
            if ( c == "." ) 
			{
                if( !dotAppeared )
                    dotAppeared = true;
                else
                    return false;
            } 
			
			else     
                if (!isDigit(c) && (c != "-") || (c == "+")) 
					return false;
        }
    }

    return true;
}

function isInteger ( checkStr )
{
		var checkOK = "0123456789"; 	
		var allValid = true; 
		var decPoints = 0; 
		var allNum = "";
		var indicej;
			
		for (a = 0; a < checkStr.length; a++) 
		{ 
			ch = checkStr.charAt(a); 
			
		    for (indicej = 0; indicej < checkOK.length; indicej++ ) 
				if (ch == checkOK.charAt(indicej))
        			break; 
						
			if ( indicej == checkOK.length ) 
			{ 
				allValid = false; 
				break; 
			}
				
			allNum += ch; 
		} 
			
		if (!allValid) 
			return false; 
}

function esNit(field)
{
	field.value = field.value.replace(/[^0-9-]/,"");
}

////////////////////////////////////////////////////////////////////////////////

/*

// Falla con IE

function esNumero(field)
{
	document.getElementById(field.name).value = field.value.replace(/\D/,"");
}
*/

// Solución tomada de http://www.mredkj.com/tutorials/validate2.html.

function extractNumber(obj, decimalPlaces, allowNegative)
{
	var temp = obj.value;
	
	// avoid changing things if already formatted correctly
	var reg0Str = '[0-9]*';
	if (decimalPlaces > 0) {
		reg0Str += '\\.?[0-9]{0,' + decimalPlaces + '}';
	} else if (decimalPlaces < 0) {
		reg0Str += '\\.?[0-9]*';
	}
	reg0Str = allowNegative ? '^-?' + reg0Str : '^' + reg0Str;
	reg0Str = reg0Str + '$';
	var reg0 = new RegExp(reg0Str);
	if (reg0.test(temp)) return true;

	// first replace all non numbers
	var reg1Str = '[^0-9' + (decimalPlaces != 0 ? '.' : '') + (allowNegative ? '-' : '') + ']';
	var reg1 = new RegExp(reg1Str, 'g');
	temp = temp.replace(reg1, '');

	if (allowNegative) {
		// replace extra negative
		var hasNegative = temp.length > 0 && temp.charAt(0) == '-';
		var reg2 = /-/g;
		temp = temp.replace(reg2, '');
		if (hasNegative) temp = '-' + temp;
	}
	
	if (decimalPlaces != 0) {
		var reg3 = /\./g;
		var reg3Array = reg3.exec(temp);
		if (reg3Array != null) {
			// keep only first occurrence of .
			//  and the number of places specified by decimalPlaces or the entire string if decimalPlaces < 0
			var reg3Right = temp.substring(reg3Array.index + reg3Array[0].length);
			reg3Right = reg3Right.replace(reg3, '');
			reg3Right = decimalPlaces > 0 ? reg3Right.substring(0, decimalPlaces) : reg3Right;
			temp = temp.substring(0,reg3Array.index) + '.' + reg3Right;
		}
	}
	
	obj.value = temp;
}
function blockNonNumbers(obj, e, allowDecimal, allowNegative)
{
	var key;
	var isCtrl = false;
	var keychar;
	var reg;
		
	if(window.event) {
		key = e.keyCode;
		isCtrl = window.event.ctrlKey
	}
	else if(e.which) {
		key = e.which;
		isCtrl = e.ctrlKey;
	}
	
	if (isNaN(key)) return true;
	
	keychar = String.fromCharCode(key);
	
	// check for backspace or delete, or if Ctrl was pressed
	if (key == 8 || isCtrl)
	{
		return true;
	}

	reg = /\d/;
	var isFirstN = allowNegative ? keychar == '-' && obj.value.indexOf('-') == -1 : false;
	var isFirstD = allowDecimal ? keychar == '.' && obj.value.indexOf('.') == -1 : false;
	
	return isFirstN || isFirstD || reg.test(keychar);
}

function esNumero(field)
{
	extractNumber(field, 0, false);
}

////////////////////////////////////////////////////////////////////////////////

function validarEntero ( val )
{
	if( val.value != 0 && val.value != "" )
		if( isInteger ( val.value ) == false )	
		{		
			alert("Valor Incorrecto, debe ingresar solamente números, sin valores decimales");
			val.value="";
			val.focus();
			error = false;
		}	
}

function validarDecimal( val )
{
	if( val.value != 0 && val.value != "" )
		if(isFloat ( val.value ) == false )
		{
			alert("Valor Incorrecto, debe ingresar solamente números, con o sin valores decimales");
			val.value="";
			val.focus();
		}	
}

function validarSelect( val, cad )
{
	if(val.value == 0 || val.value == "")
	{
		alert("Debe elegir "+ cad );
		val.value="";
		val.focus();
	}
}

function validarSelect( val )
{
	if(val.value == 0 || val.value == "")
	{
		alert("Debe elegir una opción");
		val.value="";
		val.focus();
	}
}


function validarAnio(anio, formulario)
{
	if (anio.value == "" || anio.value == 0 )
	{
		alert("Debe elegir un año");
		anio.focus();
	}
	else
		formulario.submit();
}


function completarDominio()
	{
		var sLogin = document.correo.user.value;

		if ((sLogin.indexOf('@') == -1) && (sLogin != ""))
		{
			document.correo.user.value = document.correo.user.value + "@fdquindio.org";
		}
	}

function validarContacto() 
{
	for( i=0; i < document.contacto.length; i++) {
		if	( (document.contacto.elements[i].type == 'text' && document.contacto.elements[i].value == '' ) ) {
			alert ("No pueden quedar campos vacios");
			return false;
		}
	}
	if (document.contacto.mensaje.value == ''){
		alert("Debe ingresar el mensaje que desea enviar");
		document.contacto.mensaje.focus();
		return false;
	}
	return true;
}

function validaMail(mail){
	if(mail.value == '')
		return true;
	var b = /^[^@\s]+@[^@\.\s]+(\.[^@\.\s]+)+$/; //expresion regular
	var x = b.test(mail.value);
	if (!x){
		alert ("Dirección de correo electrónico incorrecta");
		mail.value = '';
		mail.focus();
	}
	return b.test(mail); //devuelve verdadero si validacion OK, y falso en caso contrario
}

function validarAutenticacion() {
	if(document.formulario.login.value == '') {
		alert ('Debe ingresar el Login');
		return false;
	}
	
	if(document.formulario.password.value == '') {
		alert ('Debe ingresar el Password');
		return false;
	}
}

function validarDia(dia){
	if((dia.value < 1 || dia.value > 31) && dia.value != ''){
		alert("El número del día debe estar entre 1 y 31");
		dia.focus();
		dia.value = '';
	}
}

function validarMes(mes){
	if((mes.value < 1 || mes.value > 12) && mes.value != ''){
		alert("El número del mes debe estar entre 1 y 12");
		mes.value = '';
		mes.focus();
	}
}

function validarHora(hora){
	if((hora.value < 0 || hora.value > 23) && hora.value != ''){
		alert("El número de la hora debe estar entre 00 y 23");
		hora.value = '';
		hora.focus();
	}
}

function validarMinuto(minuto){
	if((minuto.value < 0 || minuto.value > 59) && minuto.value != ''){
		alert("El número del minuto debe estar entre 00 y 59");
		minuto.value = '';
		minuto.focus();
	}
}
