// JavaScript Document


/********************   LOGIN   **********************/
var reqform2 = false;   // para el envio de cualquier formulario
if (window.XMLHttpRequest) {reqform2 = new XMLHttpRequest();}

function validar_login(){
	if(document.acceso.usuario.value == "")
	{
		mostrar("No olvides introducir tu usuario.");
	}
	else if(document.acceso.contrasena.value == "")
	{
		mostrar("No olvides introducir tu contraseña.");
	}
	else
	{
		enviarLogin();
	}
}

function enviarLogin() 
{
	var url='includes/login_accion.cfm'
	valores = "usuario="+encodeURIComponent(document.acceso.usuario.value);	
	valores += "&contrasena="+encodeURIComponent(document.acceso.contrasena.value);
	if(url.lastIndexOf('?') == -1){url += '?cache=' +Math.random();}else{url += '&cache=' +Math.random();}
	if (window.ActiveXObject) {try { reqform2 = new ActiveXObject("Msxml2.XMLHTTP");} catch(e) {try { reqform2 = new ActiveXObject("Microsoft.XMLHTTP");} catch(e) { reqform2 = false;}}}
	if (reqform2) 
	{
		reqform2.onreadystatechange = resultado_login;
	    reqform2.open("POST", url, true);
		reqform2.setRequestHeader("Method", "POST " + url + " HTTP/1.1"); 
		reqform2.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded;');
		reqform2.send(valores);			
	}
}

function resultado_login() 
{
    if (reqform2.readyState == 4) {
    	if (reqform2.status == 200) 
		{
			resultado = reqform2.responseText.replace(/^\s*(.*?)\s*$/, "$1");
			if (resultado == 1)
			{
				//MM_displayLayers('login','','none');
				//TomyAjaxRapido.peticion('menu.cfm','zonalogin');
				//TomyAjaxRapido.peticion('promo.cfm','contenido');
				location.href="default.htm";
			}
			else if (resultado =='-1')
			{
				mostrar("Lo sentimos, el usuario introducido no está registrado en nuestra web. Por favor, escribe de nuevo tus datos, y comprueba que estén correctos, para poder participar en todas las promociones.")
			}
        }
    }
}

/********************   REGISTRO  **********************/

function validar_registro()
{
	if(document.form_registro.user.value.length == 0)
	{
		mostrar('Para completar tu registro debes rellenar el campo nombre de usuario.');
	}
	else if(document.form_registro.pass1.value.length == 0)
	{
		mostrar('Para completar tu registro debes rellenar el campo contraseña.');
	}
	else if(document.form_registro.pass1.value != document.form_registro.pass2.value)
	{
		mostrar('La contraseña es incorrecta. Vuelve a intentarlo.');
	}
	else if(document.form_registro.nombre.value.length == 0)
	{
		mostrar('Para completar tu registro debes rellenar el campo nombre.');
	}
	else if(document.form_registro.apellidos.value.length == 0)
	{
		mostrar('Para completar tu registro debes rellenar el campo apellidos.');
	}
	else if(!esFecha(document.form_registro.dia.value, document.form_registro.mes.value, document.form_registro.ano.value))
	{
		mostrar('Para completar tu registro debes rellenar el campo fecha de nacimiento.');
	}
	else if (!valida_dni(document.form_registro.nif.value))
	{
		mostrar("El formato del DNI no es correcto. Debes introducir el número y la letra sin guiones o espacios entre ellos.");
	}
	else if(document.form_registro.sexo.selectedIndex == 0)
	{
		mostrar('Para completar tu registro debes rellenar el campo sexo.');
	}
	else if(!esMail(document.form_registro.email.value))
	{
		mostrar('El e-mail es incorrecto. Vuelve a intentarlo.');	
	}
	else if(document.form_registro.dir.value.length == 0)
	{
		mostrar('Para completar tu registro debes rellenar el campo dirección completa.');
	}
	else if(document.form_registro.pob.value.length == 0)
	{
		mostrar('Para completar tu registro debes rellenar el campo población.');
	}
	else if(document.form_registro.provincia.selectedIndex == 0)
	{
		mostrar('Para completar tu registro debes rellenar el campo provincia.');
	}
	else if((document.form_registro.cp.value.length != 5) || (isNaN(document.form_registro.cp.value)==true))
	{
		mostrar('Para completar tu registro debes rellenar el campo código postal.');
	}
	else if((document.form_registro.telefono.value != "") &&( (document.form_registro.telefono.value.length != 9) || (isNaN(document.form_registro.telefono.value)==true) ))
	{
		mostrar("Para completar tu registro debes rellenar el campo teléfono.");
	}
	else if((document.form_registro.movil.value.length != 9) || (isNaN(document.form_registro.movil.value)==true))
	{
		mostrar("Para completar tu registro debes rellenar el campo movil.");
	}
	else
	{	
		enviarRegistro();
	}	
}

function enviarRegistro() 
{
	var url='includes/registro_accion.cfm';
	valores = "user="+encodeURIComponent(document.form_registro.user.value);	
	valores += "&pass1="+encodeURIComponent(document.form_registro.pass1.value);
	valores += "&nombre="+encodeURIComponent(document.form_registro.nombre.value);
	valores += "&apellidos="+encodeURIComponent(document.form_registro.apellidos.value);
	valores += "&nif="+encodeURIComponent(document.form_registro.nif.value);
	valores += "&sexo="+encodeURIComponent(document.form_registro.sexo.value);
	valores += "&dia="+encodeURIComponent(document.form_registro.dia.value);
	valores += "&mes="+encodeURIComponent(document.form_registro.mes.value);
	valores += "&ano="+encodeURIComponent(document.form_registro.ano.value);
	valores += "&email="+encodeURIComponent(document.form_registro.email.value);
	valores += "&dir="+encodeURIComponent(document.form_registro.dir.value);
	valores += "&pob="+encodeURIComponent(document.form_registro.pob.value);
	valores += "&provincia="+encodeURIComponent(document.form_registro.provincia.value);
	valores += "&telefono="+encodeURIComponent(document.form_registro.telefono.value);
	valores += "&movil="+encodeURIComponent(document.form_registro.movil.value);
	valores += "&cp="+encodeURIComponent(document.form_registro.cp.value);
	valores += "&chkLegal="+encodeURIComponent(document.form_registro.chkLegal.value);
	
	if(url.lastIndexOf('?') == -1){url += '?cache=' +Math.random();}else{url += '&cache=' +Math.random();}
	if (window.ActiveXObject) {try { reqform2 = new ActiveXObject("Msxml2.XMLHTTP");} catch(e) {try { reqform2 = new ActiveXObject("Microsoft.XMLHTTP");} catch(e) { reqform2 = false;}}}
	if (reqform2) 
	{
		reqform2.onreadystatechange = resultado_registro;
	    reqform2.open("POST", url, true);
		reqform2.setRequestHeader("Method", "POST " + url + " HTTP/1.1"); 
		reqform2.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded;');
		reqform2.send(valores);			
	}
}

function resultado_registro() 
{
    if (reqform2.readyState == 4) 
	{
    	if (reqform2.status == 200) 
		{
			resultado = reqform2.responseText.replace(/^\s*(.*?)\s*$/, "$1");
			if (resultado == 1)
			{
				MM_displayLayers('registro','','none','mascara','','none');
				TomyAjaxRapido.peticion('menu.cfm','zonalogin');
				TomyAjaxRapido.peticion('promo.cfm','contenido');
			}
			else if (resultado == -1)
			{
				mostrar("Se ha producido un error en el sistema. Vuelve a intentarlo más tarde.")
			}
			else if (resultado == -2)
			{
				mostrar("El Nick que has introducido ya existe.")
			}
			else if (resultado == -3)
			{
				mostrar("El email que has introducido ya está registrado.")
			}
			else if (resultado == -4)
			{
				mostrar("El NIF que has introducido ya está registrado.")
			}
			else if (resultado == -5)
			{
				mostrar("Lo sentimos, debes tener al menos 14 años para registrarte.")
			}
        }
    }
}


/********************   PINCODES   **********************/
var reqform2 = false;   // para el envio de cualquier formulario
if (window.XMLHttpRequest) {reqform2 = new XMLHttpRequest();}

function validar_pincode(){
	if(document.canjeo.pincode.value == "")
	{
		mostrar2("No olvides introducir el PINCODE para participar en la promoción.");
	}
	else
	{
		enviarPincode();
	}
}

function enviarPincode() 
{
	var url='includes/pincode_validar.cfm'
	valores = "pincode="+encodeURIComponent(document.canjeo.pincode.value);	
	if(url.lastIndexOf('?') == -1){url += '?cache=' +Math.random();}else{url += '&cache=' +Math.random();}
	if (window.ActiveXObject) {try { reqform2 = new ActiveXObject("Msxml2.XMLHTTP");} catch(e) {try { reqform2 = new ActiveXObject("Microsoft.XMLHTTP");} catch(e) { reqform2 = false;}}}
	if (reqform2) 
	{
		reqform2.onreadystatechange = resultado_pincode;
	    reqform2.open("POST", url, true);
		reqform2.setRequestHeader("Method", "POST " + url + " HTTP/1.1"); 
		reqform2.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded;');
		reqform2.send(valores);			
	}
}

function resultado_pincode() 
{
    if (reqform2.readyState == 4) {
    	if (reqform2.status == 200) 
		{
			resultado = reqform2.responseText.replace(/^\s*(.*?)\s*$/, "$1");

			if (resultado == '1')
			{
				mostrar2("¡Felicidades!, has ganado una fantástica fiesta de cumpleaños para tu hijo en el centro Chiqui Tin más cercano. Recuerda que la promoción está limitada a un premio por usuario.");
			}
			else if (resultado =='2')
			{
				mostrar2("'Gracias, queda registrada una nueva participación para conseguir la colección de 4 libros de Coca-Cola sin cafeína.")
			}
			else if (resultado =='-2')
			{
				mostrar2("Lo sentimos, la promoción ha terminado. Próximamente publicaremos el nombre de los ganadores.  Gracias por participar.")
			}
			else if (resultado =='-3')
			{
				mostrar2("Lo sentimos, pero tienes que ser mayor de edad para participar en la promoción.")
			}
			else if (resultado =='-4')
			{
				mostrar2("Se ha producido un error en el sistema. Vuelve a intentarlo más tarde.")
			}
			else if (resultado =='-5')
			{
				mostrar2("El PINCODE que has introducido es incorrecto. Recuerda que el PINCODE tiene 14 dígitos y que solo son validos los siguientes caracteres: 0123456789ACEFHJKLMNPRTUWXYZ. Revisa tu PINCODE e inténtalo de nuevo.")
			}
			else if (resultado =='-6')
			{
				mostrar2("Lo sentimos, el PINCODE que estás intentando validar ya sido utilizado en la promoción. Inténtalo de nuevo con uno distinto.")
			}
			else if (resultado =='-7')
			{
				mostrar2("¡No has resultado ganador! Sigue intentándolo, aún puedes conseguir 1 fiesta de cumpleaños exclusiva. Tienes hasta el 5/8/08. Además, si eres uno de los  2000 usuarios que más PINCODES acumulen, te llevarás la colección de 4 libros para disfrutar con tus hijos.")
			}
			TomyAjaxRapido.peticion('menu.cfm','zonalogin');
        }
    }
}



/********************   RECORDAR   **********************/
var reqform2 = false;   // para el envio de cualquier formulario
if (window.XMLHttpRequest) {reqform2 = new XMLHttpRequest();}

function validar_recordar(){
	if(!esMail(document.form_recordar.email.value))
	{
		mostrar("El e-mail es incorrecto. Vuelve a intentarlo.");
	}
	else
	{
		enviarRecordar();
	}
}

function enviarRecordar() 
{
	var url='includes/recordar_accion.cfm'
	valores = "email="+encodeURIComponent(document.form_recordar.email.value);	
	if(url.lastIndexOf('?') == -1){url += '?cache=' +Math.random();}else{url += '&cache=' +Math.random();}
	if (window.ActiveXObject) {try { reqform2 = new ActiveXObject("Msxml2.XMLHTTP");} catch(e) {try { reqform2 = new ActiveXObject("Microsoft.XMLHTTP");} catch(e) { reqform2 = false;}}}
	if (reqform2) 
	{
		reqform2.onreadystatechange = resultado_recordar;
	    reqform2.open("POST", url, true);
		reqform2.setRequestHeader("Method", "POST " + url + " HTTP/1.1"); 
		reqform2.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded;');
		reqform2.send(valores);			
	}
}

function resultado_recordar() 
{
    if (reqform2.readyState == 4) {
    	if (reqform2.status == 200) 
		{
			resultado = reqform2.responseText.replace(/^\s*(.*?)\s*$/, "$1");
			if (resultado == 1)
			{
				mostrar2("El email introducido es correcto. En breve recibirás tus datos de registro en la dirección de correo que has indicado.")
				MM_displayLayers('olvido','','none');
			}
			else if (resultado =='-1')
			{
				mostrar2("Se ha producido un error en el sistema. Vuelve a intentarlo más tarde.")
			}
			else if (resultado =='-2')
			{
				mostrar2("Lo sentimos, el email introducido no existe en nuestra base de datos. Verifica los datos introducidos y vuelve a intentarlo.")
			}
        }
    }
}


/********************   INSCRIPCION   **********************/
var reqform2 = false;   // para el envio de cualquier formulario
if (window.XMLHttpRequest) {reqform2 = new XMLHttpRequest();}

function validar_inscripcion()
{
	if(document.escuela.nombre_asistente.value == "")
	{
		mostrar("Por favor, rellena el campo correspondiente a nombre y apellidos del asistente.");
	}
	else if((document.escuela.telefono.value.length != 9) || (isNaN(document.escuela.telefono.value)==true))
	{
		mostrar("Por favor, no olvides rellenar correctamente el campo teléfono.");
	}
	else if(!esMail(document.escuela.email.value))
	{
		mostrar("Por favor, escribe el email correctamente.");
	}
	/**else if(document.escuela.enterado.value == "")
	{
		mostrar("¿A través de que se ha enterado?.");
	}**/
	else if(document.escuela.centro.value == "" && document.escuela.otros.value == "")
	{
		mostrar("Por favor, no olvides rellenar el nombre del centro educativo u “otros”.");
	}
	/**else if(document.escuela.otros.value == "")
	{
		mostrar("Por favor, no olvides rellenar el campo “otros”.");
	}**/
	else
	{
		enviarInscripcion();
	}
}


function enviarInscripcion() 
{
	var url='includes/inscripcion_jornadas_accion.cfm'
	valores = "nombre_asistente="+encodeURIComponent(document.escuela.nombre_asistente.value);	
	valores += "&nombre_acompanante="+encodeURIComponent(document.escuela.nombre_acompanante.value);
	valores += "&numero_hijos="+encodeURIComponent(document.escuela.numero_hijos.value);
	valores += "&edad_hijos="+encodeURIComponent(document.escuela.edad_hijos.value);
	valores += "&telefono="+encodeURIComponent(document.escuela.telefono.value);
	valores += "&email="+encodeURIComponent(document.escuela.email.value);
	valores += "&centro="+encodeURIComponent(document.escuela.centro.value);
	valores += "&otros="+encodeURIComponent(document.escuela.otros.value);
	valores += "&lssi="+encodeURIComponent(document.escuela.lssi.checked);
	
	
	if(url.lastIndexOf('?') == -1){url += '?cache=' +Math.random();}else{url += '&cache=' +Math.random();}
	if (window.ActiveXObject) {try { reqform2 = new ActiveXObject("Msxml2.XMLHTTP");} catch(e) {try { reqform2 = new ActiveXObject("Microsoft.XMLHTTP");} catch(e) { reqform2 = false;}}}
	if (reqform2) 
	{
		reqform2.onreadystatechange = resultado_inscripcion;
	    reqform2.open("POST", url, true);
		reqform2.setRequestHeader("Method", "POST " + url + " HTTP/1.1"); 
		reqform2.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded;');
		reqform2.send(valores);			
	}
}


function resultado_inscripcion() 
{
    if (reqform2.readyState == 4) {
    	if (reqform2.status == 200) 
		{
			mostrar2("Tus datos se han enviado correctamente. Gracias.")
			TomyAjaxRapido.peticion('escuela.htm','contenido');
        }
    }
}


/********************   FUNCIONES VALIDACION  **********************/

function esFecha(dia, mes, ano)
{
	var expresion = /[^0-9]/;
	if(dia.search(expresion) != -1 || mes.search(expresion) != -1 || ano.search(expresion) != -1) // no ha metido números
		return false;
	else if ((dia < 1)|| (dia > 31) || (mes < 1) || (mes > 12) || (ano < 1900) || (ano > 2100)) // fecha ficticia
		return false;
   	else if((ano%4 != 0) && (mes == 2) && (dia > 28))	// Año no visiesto, es febrero y el dia es mayor a 28
		return false;	   
   	else if ((((mes == 4) || (mes == 6) || (mes == 9) || (mes==11)) && (dia>30)) || ((mes==2) && (dia>29)))
		return false;     		 	   
	else	    
		return true;
}
	
function esMail(email)
{
	var exclude=/[^@\-\.\w]|^[_@\.\-]|[\._\-]{2}|[@\.]{2}|(@)[^@]*\1/;
	var check=/@[\w\-]+\./;
	var checkend=/\.[a-zA-Z]{2,3}$/;

	if(((email.search(exclude) != -1)||(email.search(check)) == -1)||(email.search(checkend) == -1))
		return false;
	else
		return true;
}

	
function valida_dni(dni)
{
	primercaracternif = dni.substring(0,1);
	
	if(primercaracternif == 'X' || primercaracternif == 'x') 
	{
		dni = dni.substring(1,dni.length);	
		
		numero = dni.substr(0,dni.length-1);
		let = dni.substr(dni.length-1,1).toUpperCase() ;
		numero = numero % 23;
		letra='TRWAGMYFPDXBNJZSQVHLCKET';
		letra=letra.substring(numero,numero+1);
		if (letra!=let)
		{
			return false;
		} 
		else 
		{
			dni = "X" + document.form_registro.nif.value;
			return true;
		}
	} 
	else 
	{			
		numero = dni.substr(0,dni.length-1);
		let = dni.substr(dni.length-1,1).toUpperCase() ;
		numero = numero % 23;
		letra='TRWAGMYFPDXBNJZSQVHLCKET';
		letra=letra.substring(numero,numero+1);
		if (letra!=let)
		{
			return false;
		} 
		else 
		{
			return true;
		}
	}
}
	
	
function mostrar(mensaje)
{
	ocultaCombos();
	MM_displayLayers('error','','block');
	document.getElementById("msj_error").innerHTML = mensaje
}

function mostrar2(mensaje)
{
	ocultaFlash();
	MM_displayLayers('error2','','block','mascara','','block');
	document.getElementById("msj_error2").innerHTML = mensaje
}

function cerrar()
{
	muestraCombos();
	MM_displayLayers('error','','none');
}

function cerrar2()
{
	muestraFlash();
	MM_displayLayers('error2','','none','mascara','','none');
}


function buscador_ganadores(res, texto)
{
	if(texto == "")
	{
		alert("Debes escriber el apellido en el buscador");	
	}
	else
	{
		activar(2,'promo.cfm?res='+res+'&texto='+texto)
	}
}
