/***********************************************************/
// FUNCIONES COMUNES
// Buenos Aires Apartments
// Enero 2007 - Cristian Mendoza
// Validacion de formularios:
/***********************************************************/

// funcion de windows status
// window.defaultStatus='..:: Buenos Aires Apartments ::..'

//  validamos si la cadena de texto es vacia                                    
function vacio(cadena)
  {  
    // DECLARACION DE CONSTANTES
    var blanco = " \n\t" + String.fromCharCode(13); // blancos
	
   // DECLARACION DE VARIABLES
    var i;                             // indice en cadena
    var es_vacio;                      // cadena es vacio o no
    for(i = 0, es_vacio = true; (i < cadena.length) && es_vacio; i++) // INICIO
      es_vacio = blanco.indexOf(cadena.charAt(i)) != - 1;
    return(es_vacio);
  }
  
// validamos si el E-mail ingresado tiene el formato correcto
function ValidaEmail(email) {
	if (email.indexOf('@')<2 || email.lastIndexOf('.')<=email.indexOf('@')+2 || email.length<8 || email.indexOf('.')+1>=email.length) {
	   return false;
	   }
	else {return true;}
}


// validamos el formulario de reservas en español

function validaFormReserva(formObj) {

	var errors = new Array();
	var errorMessages = '';
	
	if (vacio(formObj.elements['nombre'].value)) {errors[errors.length] = 'Nombre. => \"Ingrese unicamente Texto\"';}
	if (vacio(formObj.elements['apellido'].value)) {errors[errors.length] = 'Apellido. => \"Ingrese unicamente Texto\"';}
	if (!ValidaEmail(formObj.elements['email'].value)) {errors[errors.length] = 'Una dirección de correo válida en el campo \"Email\"..';}
	if (vacio(formObj.elements['conocio'].value)) {errors[errors.length] = 'Como nos conocio.';}
	if (vacio(formObj.elements['pais'].value)) {errors[errors.length] = 'País de Residencia.';}
	if (vacio(formObj.elements['menores'].value)) {errors[errors.length] = 'Menores.';}
	if (vacio(formObj.elements['mayores'].value)) {errors[errors.length] = 'Mayores.';}
	
	if (errors.length>0) {
		for(var i=0; i<errors.length; i++) {
			errorMessages += '   - '+errors[i]+'\n';
		}
		alert('Es necesario que ingrese:\n\n'+errorMessages+'\n');
		return false;
	}
	
}


// validamos el formulario de reservas en inglés

function validaFormReservaEN(formObj) {

	var errors = new Array();
	var errorMessages = '';
	
	if (vacio(formObj.elements['nombre'].value)) {errors[errors.length] = 'First Name.';}
	if (vacio(formObj.elements['apellido'].value)) {errors[errors.length] = 'Last Name.';}
	if (!ValidaEmail(formObj.elements['email'].value)) {errors[errors.length] = 'E-mail address.';}
	if (vacio(formObj.elements['conocio'].value)) {errors[errors.length] = '¿How did you know about us?';}
	if (vacio(formObj.elements['pais'].value)) {errors[errors.length] = 'Country of residence.';}
	if (vacio(formObj.elements['menores'].value)) {errors[errors.length] = 'Menores.';}
	if (vacio(formObj.elements['mayores'].value)) {errors[errors.length] = 'Mayores.';}
	
	if (errors.length>0) {
		for(var i=0; i<errors.length; i++) {
			errorMessages += '   - '+errors[i]+'\n';
		}
		alert('Required File :\n\n'+errorMessages+'\n');
		return false;
	}
	
}

// FUNCION QUE DESHABILITA LAS TECLAS DE COPIAR Y PEGAR
// CRISTIAN MENDOZA FEBRERO 2007

document.onkeydown = desabilitar; // Teclas Precionada 
document.onselectstart = selecionar; //Anular la Selecion de Texto 
document.oncontextmenu = selecionar; //Anular el Boton Der del Mouse 

function selecionar() { 
return false; 
} 

function desabilitar() { 
// Combinacion de Teclas con el Control 
if (event.ctrlKey) { 
switch(window.event.keyCode) { 
case 67: //Ctrl-C -- Copiar --- 
case 86: //Ctrl-V -- Pegar --- 
event.keyCode = 0; 
return false; 

// aqui se pondran todas las combinaciones
// de teclas previstas para bloquear pero
// ya se encuentran en otra función 

default: 
break; 
    } 
  } 
} 

// NUEVAS FUNCIONES BLOQUEO DE KEY / TECLAS


function validaField(e,tipo)
{
    funcion = true;
    if (navigator.appName == 'Microsoft Internet Explorer')
        key = window.event.keyCode;
    else
        key = e.which;
    if(key != 0){
    	if(tipo == 'alf'){
    		if ((key < 65 || key > 122 || (key > 90 && key < 97))
			&& key != 32 && key != 8
			&& key != 225 && key != 233 && key != 237 && key != 243 && key != 250 //minisculas
			&& key != 193 && key != 201 && key != 205 && key != 211 && key != 218 //mayusuculas
			&& key != 209 && key != 241
            && (key < 48 || key > 57)
            && key != 0
            && key != 46
            && key != 44
			)
			{funcion =  false; }
    	 }
    	else if(tipo == 'log'){
    		if ((key < 65 || key > 122 || (key > 90 && key < 97))
			&& key != 225 && key != 233 && key != 237 && key != 243 && key != 250 //minisculas
			&& key != 193 && key != 201 && key != 205 && key != 211 && key != 218 //mayusuculas
			&& key != 209 && key != 241
            && (key < 48 || key > 57)
            && key != 0 && key != 8
			)
			{funcion =  false; }
    	 }
    	else if(tipo == 'txt'){
    		if ((key < 65 || key > 122 || (key > 90 && key < 97))
			&& key != 32 && key != 8
			&& key != 225 && key != 233 && key != 237 && key != 243 && key != 250 //minisculas
			&& key != 193 && key != 201 && key != 205 && key != 211 && key != 218 //mayusuculas
			&& key != 209 && key != 241
			)
			{funcion =  false; }
    	 }
    	else if(tipo == 'mail'){
    		if ((key < 65 || key > 122 || (key > 90 && key < 97))
			&& key != 32 && key != 8
			&& key != 225 && key != 233 && key != 237 && key != 243 && key != 250 //minisculas
			&& key != 193 && key != 201 && key != 205 && key != 211 && key != 218 //mayusuculas
            && (key < 48 || key > 57)
            && key != 0
            && key != 46
            && key != 95
            && key != 64
			)
			{funcion =  false; }
    	 }
    	 else if(tipo == 'mailMINUS'){
    		if ((key < 96 || key > 122)
			&& key != 8
            && (key < 48 || key > 57)
            && key != 0
            && key != 46
            && key != 95
            && key != 64
			)
			{funcion =  false; }
    	 }
    	else if (tipo == 'num'){
	    	if ((key < 48 || key > 57) && key != 0 && key != 8)
	    	{ funcion = false  }
    	}
	    else if (tipo == 'fch'){
	 		if ((key < 47 || key > 57) && key != 0 && key != 8)
	 		{funcion = false}
	    }
	    else if (tipo == 'tel'){
		    if (key ==39)
		    {	 funcion = false }
	    }
	    else if (tipo == 'calif'){
		    if ((key < 45 || key > 57 ) && key != 47 )
		    { funcion = false	}
	    }
	    else if (tipo == 'hora'){
		    if ((key < 48 || key > 57) && key != 0 && key != 8 && key!=58)
		    {	 funcion = false }
	    }
	    if(tipo == 'conoc'){
    		if ((key < 65 || key > 122 || (key > 90 && key < 97))
			&& key != 32 && key != 8
			&& key != 225 && key != 233 && key != 237 && key != 243 && key != 250 //minisculas
			&& key != 193 && key != 201 && key != 205 && key != 211 && key != 218 //mayusuculas
			&& key != 209 && key != 241
            && (key < 48 || key > 57)
            && key != 0
            && key != 46
            && key != 44
            && key != 40
            && key != 41
            && key != 37
			)
			{funcion =  false; }
    	 }
    }
    return funcion;
}


