// JavaScript Document
function alfanumerico(e){
	if(window.event)
		var tecla = window.event.keyCode;
	else
		var tecla = e.which;
		
	if(65<=tecla && tecla<=90 || 97<=tecla && tecla<=122 || 48<=tecla && tecla<=57){
		return true;
	}
	else{
		return false;
	}
}

function validaFormularioReg()
{
	var nombre = $('nombre').value;
	var mail = $('mail').value;
	var password = $('password').value;
	var passwordC = $('passwordC').value;
	var mujer = getRadioValue('mujer');
	var dia = $('dia').value;
	var mes = $('mes').value;
	var ano = $('ano').value;
	
	var url = "/validaciones/validaRegistro.asp";	
	var params = "nombre="+nombre+"&mail="+mail+"&password="+password+"&passwordC="+passwordC+"&mujer="+mujer+"&dia="+dia+"&mes="+mes+"&ano="+ano;	

	formularios(url, params);
	
}
function logoutHeader()
{
	var url = "/validaciones/logout.asp";	
	var params = "logout=1";	

	formulariosLogout(url, params);
	
}
function formulariosLogout(url, params)
{
	new Ajax.Request(url, {
		onSuccess : function(resp) {			
			var objJSON = resp.responseText.evalJSON();
			var validacion = objJSON.validacion;
			var elemento = validacion[0];
			if (elemento.id == 'validacion' && elemento.valor == 'True')
			{
				var miFormulario = $('frm');
				for (var i = 1; i < validacion.length; i++){
					var elemento = validacion[i];					
					var control = document.createElement("input");
					control.setAttribute("type", "hidden");
					control.setAttribute("name", elemento.id);
					control.setAttribute("value", elemento.valor);
					miFormulario.appendChild(control);
				}
				miFormulario.action = "index.asp";
				miFormulario.submit();
			}
			else
			{					
				for (var i = 1; i < validacion.length; i++){					
					var elemento = validacion[i];
					nombreBus = "error" + elemento.id;					
					if ($(nombreBus) != null)
						$(nombreBus).innerHTML = elemento.error;	
				}
			}
		},
		onFailure : function(resp) {
					window.location="http://melodijolola.com/index.asp";
		},
		onException : function(resp) {
					window.location="http://melodijolola.com/index.asp";
		},
		parameters : params  
	});
}

function validaFormularioMiPerfil()
{
	var nombre = $('nombre').value;
	var mail = $('mail').value;
	var password = $('password').value;
	var passwordC = $('passwordC').value;
	var mujer = getRadioValue('mujer');
	var dia = $('dia').value;
	var mes = $('mes').value;
	var ano = $('ano').value;
	var id_usuario = $('id_usuario').value;
	
	var url = "/validaciones/validaRegistro.asp";	
	var params = "nombre="+nombre+"&mail="+mail+"&password="+password+"&passwordC="+passwordC+"&mujer="+mujer+"&dia="+dia+"&mes="+mes+"&ano="+ano+"&id_usuario="+id_usuario;	
	formulariosMiPerfil(url, params);
	
}

function validaFormularioContacto()
{
	var nombre = $('nombre').value;
	var email = $('email').value;
	var tema = $('tema').value;
	var comentario = $('comentario').value;
	
	var url = "/validaciones/validaContacto.asp";	
	var params = "nombre="+nombre+"&email="+email+"&tema="+tema+"&comentario="+comentario;	
	formulariosContacto(url, params);
	
}
function formulariosContacto(url, params)
{
	new Ajax.Request(url, {
		onSuccess : function(resp) {			
			var objJSON = resp.responseText.evalJSON();
			var validacion = objJSON.validacion;
			var elemento = validacion[0];			
			if (elemento.id == 'validacion' && elemento.valor == 'True')
			{
				var miFormulario = $('frm');
				for (var i = 1; i < validacion.length; i++){
					var elemento = validacion[i];					
					var control = document.createElement("input");
					control.setAttribute("type", "hidden");
					control.setAttribute("name", elemento.id);
					control.setAttribute("value", elemento.valor);
					miFormulario.appendChild(control);
				}
				miFormulario.action = "contactoOk.asp";
				miFormulario.submit();
			}
			else
			{					
				for (var i = 1; i < validacion.length; i++){					
					var elemento = validacion[i];
					nombreBus = "error" + elemento.id;					
					if ($(nombreBus) != null)
						$(nombreBus).innerHTML = elemento.error;	
				}
			}
		},
		onFailure : function(resp) {
					alert("Error al cargar la página.");
		},
		onException : function(resp) {
					alert("Error al cargar la página.");
		},
		parameters : params  
	});
}

function validaFormularioMail()
{
	var mail = $('mail').value;
	var mailVal = emailCheck(mail);
	//alert("xx"+mailVal)
	//if (mailVal=="OK")
	//{
		var miFormulario = $('frmRegistrate');
		var control = document.createElement("input");
		control.setAttribute("type", "hidden");
		control.setAttribute("name", "mail");
		control.setAttribute("value", mail);
		miFormulario.appendChild(control);
		miFormulario.action = "registrate.asp";
		miFormulario.submit();
	//}
	//else
		//errorMailC.innerHTML = mailVal;
}

function validaFormularioLogeo()
{
	var mail = $('mail').value;
	var password = $('password').value;
	
	var url = "/validaciones/validaLogeo.asp";	
	var params = "mail="+mail+"&password="+password;	

	formulariosLogeo(url, params);
	
}

function formulariosLogeo(url, params)
{
	new Ajax.Request(url, {
		onSuccess : function(resp) {			
			var objJSON = resp.responseText.evalJSON();
			var validacion = objJSON.validacion;
			var elemento = validacion[0];			
			if (elemento.id == 'validacion' && elemento.valor == 'True')
			{
				var miFormulario = $('frm');
				for (var i = 1; i < validacion.length; i++){
					var elemento = validacion[i];					
					var control = document.createElement("input");
					control.setAttribute("type", "hidden");
					control.setAttribute("name", elemento.id);
					control.setAttribute("value", elemento.valor);
					miFormulario.appendChild(control);
				}
				miFormulario.action = "perfil.asp";
				miFormulario.submit();
			}
			else
			{					
				for (var i = 1; i < validacion.length; i++){					
					var elemento = validacion[i];
					nombreBus = "error" + elemento.id;					
					if ($(nombreBus) != null)
						$(nombreBus).innerHTML = elemento.error;	
				}
			}
		},
		onFailure : function(resp) {
					alert("Error al cargar la página.");
		},
		onException : function(resp) {
					alert("Error al cargar la página.");
		},
		parameters : params  
	});
}

function validaFormularioLogeoH()
{
	var mail = $('mailHeader').value;
	var password = $('passwordHeader').value;
	
	var url = "/validaciones/validaLogeo.asp";	
	var params = "header=1&mail="+mail+"&password="+password;	

	formulariosLogeo(url, params);
	
}

function formulariosLogeo(url, params)
{
	new Ajax.Request(url, {
		onSuccess : function(resp) {			
			var objJSON = resp.responseText.evalJSON();
			var validacion = objJSON.validacion;
			var elemento = validacion[0];			
			if (elemento.id == 'validacion' && elemento.valor == 'True')
			{
				window.location.reload();
			}
			else
			{					
				for (var i = 1; i < validacion.length; i++){					
					var elemento = validacion[i];
					nombreBus = "error" + elemento.id;					
					if ($(nombreBus) != null)
						$(nombreBus).innerHTML = elemento.error;	
				}
			}
		},
		onFailure : function(resp) {
					alert("Error al cargar la página.");
		},
		onException : function(resp) {
					alert("Error al cargar la página.");
		},
		parameters : params  
	});
}

function formularios(url, params)
{
	new Ajax.Request(url, {
		onSuccess : function(resp) {			
			var objJSON = resp.responseText.evalJSON();
			var validacion = objJSON.validacion;
			var elemento = validacion[0];			
			if (elemento.id == 'validacion' && elemento.valor == 'True')
			{
				var miFormulario = $('frm');
				for (var i = 1; i < validacion.length; i++){
					var elemento = validacion[i];					
					var control = document.createElement("input");
					control.setAttribute("type", "hidden");
					control.setAttribute("name", elemento.id);
					control.setAttribute("value", elemento.valor);
					miFormulario.appendChild(control);
				}
				miFormulario.action = "registrateOk.asp";
				miFormulario.submit();
			}
			else
			{					
				for (var i = 1; i < validacion.length; i++){					
					var elemento = validacion[i];
					nombreBus = "error" + elemento.id;					
					if ($(nombreBus) != null)
						$(nombreBus).innerHTML = elemento.error;	
				}
			}
		},
		onFailure : function(resp) {
					alert("Error al cargar la página.");
		},
		onException : function(resp) {
					alert("Error al cargar la página.");
		},
		parameters : params  
	});
}

function formulariosMiPerfil(url, params)
{
	new Ajax.Request(url, {
		onSuccess : function(resp) {			
			var objJSON = resp.responseText.evalJSON();
			var validacion = objJSON.validacion;
			var elemento = validacion[0];			
			if (elemento.id == 'validacion' && elemento.valor == 'True')
			{
				var miFormulario = $('frm');
				for (var i = 1; i < validacion.length; i++){
					var elemento = validacion[i];					
					var control = document.createElement("input");
					control.setAttribute("type", "hidden");
					control.setAttribute("name", elemento.id);
					control.setAttribute("value", elemento.valor);
					miFormulario.appendChild(control);
				}
				miFormulario.action = "perfilOk.asp";
				miFormulario.submit();
			}
			else
			{					
				for (var i = 1; i < validacion.length; i++){					
					var elemento = validacion[i];
					nombreBus = "error" + elemento.id;					
					if ($(nombreBus) != null)
						$(nombreBus).innerHTML = elemento.error;	
				}
			}
		},
		onFailure : function(resp) {
					alert("Error al cargar la página.");
		},
		onException : function(resp) {
					alert("Error al cargar la página.");
		},
		parameters : params  
	});
}



function getRadioValue(idOrName) {
        var value = null;
        var element = document.getElementById(idOrName);
        var radioGroupName = null;  
        
        // if null, then the id must be the radio group name
        if (element == null) {
                radioGroupName = idOrName;
        } else {
                radioGroupName = element.name;     
        }
        if (radioGroupName == null) {
                return null;
        }
        var radios = document.getElementsByTagName('input');
        for (var i=0; i<radios.length; i++) {
                var input = radios[ i ];    
                if (input.type == 'radio' && input.name == radioGroupName && input.checked) {                          
                        value = input.value;
                        break;
                }
        }
        return value;
}

var dias = new Array(32)
	dias[0] = 'Dia'
	for (i=1;i<32;i++)
		dias[i]=i;
	var meses = new Array(13)
	meses[0] = 'Mes'
	meses[1] = 'Ene'
	meses[2] = 'Feb'
	meses[3] = 'Mar'
	meses[4] = 'Abr'
	meses[5] = 'May'
	meses[6] = 'Jun'
	meses[7] = 'Jul'
	meses[8] = 'Ago'
	meses[9] = 'Sep'
	meses[10] = 'Oct'
	meses[11] = 'Nov'
	meses[12] = 'Dic'
	
	var anos = new Array(90)
	anos[0] = 'Año';	
	var mydate=new Date();
	var year=mydate.getFullYear();
	for (i=1;i<90;i++)
		anos[i] = year - i;
		
function chechaDias()
{
	var numDias =0;
	valorDia = $('dia').value;
	valorMes = $('mes').value;
	valorAno = $('ano').value;
	switch (valorMes)
	{
		case '0': numDias = 31;
		case '1': numDias = 31;
		case '3': numDias = 31;
		case '5': numDias = 31;
		case '7': numDias = 31;
		case '8': numDias = 31;
		case '10': numDias = 31;
		case '12':numDias = 31;
		break;
		case '4': numDias = 30;
		case '6': numDias = 30;
		case '9': numDias = 30;
		case '11': numDias = 30;
		break;
		case '2':
		{	
			a = new Number(valorAno);
			if (a%4==0)
				numDias = 29;
			else
				numDias = 28;
		}
		break;
	}
	var numDiasSel = $('dia').length;
	if (numDiasSel <= numDias)
	{	
		for (i=numDiasSel; i<=numDias;i++)
		{
			 opcion0=new Option(i,i,"defauldSelected");
			 $('dia').options[i]=opcion0;
		}
	}
	else
	{
		if (numDiasSel > numDias)
		{	
		$('dia').length = numDias+1;
		}
	}
	if ($('dia').length>=valorDia)
		$('dia').selectedIndex=valorDia;
	else
		$('dia').selectedIndex=0;
}

// JavaScript Document
function validaMail()
{
	email = document.getElementById('email').value;
	if (emailCheck(email))
		frmMail.submit();
}

function emailCheck (emailStr) {
	var checkTLD=1;
	var knownDomsPat=/^(com|net|org|edu|int|mil|gov|arpa|biz|aero|name|coop|info|pro|museum)$/;
	//var emailPat=/^(.+)@(.+)$/;
	var emailPat=/(.+)@(.+)\.(.+)/;
	var specialChars="\\(\\)><@,;:\\\\\\\"\\.\\[\\]";
	var validChars="\[^\\s" + specialChars + "\]";
	var quotedUser="(\"[^\"]*\")";
	var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/;
	var atom=validChars + '+';
	var word="(" + atom + "|" + quotedUser + ")";
	var userPat=new RegExp("^" + word + "(\\." + word + ")*$");
	var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$");
	var matchArray=emailStr.match(emailPat);
	
	if (matchArray==null) {
		return("La direccion de Email es incorrecta (verifique '@' y Dominio)");
		//return false;
	}
	var user=matchArray[1];
	var domain=matchArray[2];
	for (i=0; i<user.length; i++) {
		if (user.charCodeAt(i)>127) {
			return("El usuario contiene caracteres invalidos (usuario@dominio)");
			//return false;
		   }
	}
	for (i=0; i<domain.length; i++) {
		if (domain.charCodeAt(i)>127) {
		return("El dominio contiene caracteres invalidos (usuario@dominio)");
		//return false;
		   }
	}
	if (user.match(userPat)==null) {
		return("El usuario puede no ser valido, verifique");
		//return false;
	}
	var IPArray=domain.match(ipDomainPat);
	if (IPArray!=null) {
		for (var i=1;i<=4;i++) {
			if (IPArray[i]>255) {
			return("IP de destino es invalida");
			//return false;
		 	}
		}
		return("OK");
		//return true;
	}
	var atomPat=new RegExp("^" + atom + "$");
	var domArr=domain.split(".");
	var len=domArr.length;
	for (i=0;i<len;i++) {
		if (domArr[i].search(atomPat)==-1) {
		return("El dominio puede no ser valido, verifique");
		//return false;
		   }
	}
	if (checkTLD && domArr[domArr.length-1].length!=2 && domArr[domArr.length-1].search(knownDomsPat)==-1) {
		return("La dierccion debe terminar con un dominio de dos letras conocido y/o pais.");
		//return false;
	}
	if (len<2) {
		return("A la direccion le falta el nombre de dominio completo.");
		//return false;
	}
	return("OK");
	//return true;
}

function validaFormularioFavoritos()
{
	var nombre = $('nombre').value;
	var mail = $('mail').value;
	var password = $('password').value;
	var passwordC = $('passwordC').value;
	var mujer = getRadioValue('mujer');
	var dia = $('dia').value;
	var mes = $('mes').value;
	var ano = $('ano').value;
	var id_usuario = $('id_usuario').value;
	var idTip = $('idTip').value;
	
	var url = "/validaciones/validaRegistro.asp";	
	var params = "nombre="+nombre+"&mail="+mail+"&password="+password+"&passwordC="+passwordC+"&mujer="+mujer+"&dia="+dia+"&mes="+mes+"&ano="+ano+"&id_usuario="+id_usuario+"&idTip="+idTip;	
	formulariosLogeoF(url, params);
	
}


function formulariosFavoritos(url, params)
{
	new Ajax.Request(url, {
		onSuccess : function(resp) {			
			var objJSON = resp.responseText.evalJSON();
			var validacion = objJSON.validacion;
			var elemento = validacion[0];			
			if (elemento.id == 'validacion' && elemento.valor == 'True')
			{
				var miFormulario = $('frm');
				for (var i = 1; i < validacion.length; i++){
					var elemento = validacion[i];					
					var control = document.createElement("input");
					control.setAttribute("type", "hidden");
					control.setAttribute("name", elemento.id);
					control.setAttribute("value", elemento.valor);
					miFormulario.appendChild(control);
				}
				miFormulario.action = "favoritos.asp";
				miFormulario.submit();
			}
			else
			{					
				for (var i = 1; i < validacion.length; i++){					
					var elemento = validacion[i];
					nombreBus = "error" + elemento.id;					
					if ($(nombreBus) != null)
						$(nombreBus).innerHTML = elemento.error;	
				}
			}
		},
		onFailure : function(resp) {
					alert("Error al cargar la página.");
		},
		onException : function(resp) {
					alert("Error al cargar la página.");
		},
		parameters : params  
	});
}

function validaFormularioLogeoF()
{
	var mail = $('mail').value;
	var password = $('password').value;
	var idTip = $('idTip').value;
	
	var url = "/validaciones/validaLogeo.asp";	
	var params = "mail="+mail+"&password="+password+"&idTip="+idTip;
	formulariosLogeoF(url, params);
	
}

function formulariosLogeoF(url, params)
{
	new Ajax.Request(url, {
		onSuccess : function(resp) {			
			var objJSON = resp.responseText.evalJSON();
			var validacion = objJSON.validacion;
			var elemento = validacion[0];			
			if (elemento.id == 'validacion' && elemento.valor == 'True')
			{
				var miFormulario = $('frm');
				for (var i = 1; i < validacion.length; i++){
					var elemento = validacion[i];					
					var control = document.createElement("input");
					control.setAttribute("type", "hidden");
					control.setAttribute("name", elemento.id);
					control.setAttribute("value", elemento.valor);
					miFormulario.appendChild(control);
				}
				miFormulario.action = "favoritos.asp";
				miFormulario.submit();
			}
			else
			{					
				for (var i = 1; i < validacion.length; i++){					
					var elemento = validacion[i];
					nombreBus = "error" + elemento.id;					
					if ($(nombreBus) != null)
						$(nombreBus).innerHTML = elemento.error;	
				}
			}
		},
		onFailure : function(resp) {
					alert("Error al cargar la página.");
		},
		onException : function(resp) {
					alert("Error al cargar la página.");
		},
		parameters : params  
	});
}
