// JavaScript Document

// JavaScript Document

function remember() {
   newwin =  window.open('remember.php','Muchoticket.com','left=290,top=250,height=250,width=350,scrollbars=no');
   newwin.focus();
   }
 
function login() {
   var v = true;
   var msg = ''; 
   
   f = document.getElementById('f_login'); 
   m  = document.getElementById('login_mail');	
   p  = document.getElementById('login_pass');	
   
   if(check_email(m.value)==false){ v=  false; msg = msg + '** El formato de la dirección email no es correcto.\n';}
   if(p.value==''){ v=false; msg = msg + '** Debe introducir su contraseña de usuario.\n'; }
   
   if(!v){ 
   		alert(msg); 
   }else{
   		f.submit();
   }
   
}

function reg_news() {
   var v = true;
   var msg = ''; 
   
   f = document.getElementById('frm_reg_news'); 
   m  = document.getElementById('reg_mail');	

   if(check_email(m.value)==false){ v=  false; msg = msg + '** El formato de la dirección email no es correcto.\n';}
   
   if(!v){ 
   		alert(msg); 
   }else{
   		f.submit();
   }
}
   
function register(){
   var v = true;
   var msg = ''; 
   f  = document.getElementById('f_newuser');
   n  = document.getElementById('reg_name');	
   s  = document.getElementById('reg_surname');	
   m  = document.getElementById('reg_mail');	
   m2 = document.getElementById('reg_mail2');	
   p  = document.getElementById('reg_pass');	
   p2 = document.getElementById('reg_pass2');
   c  = document.getElementById('reg_city');
   pro= document.getElementById('reg_provincia');
   pa = document.getElementById('reg_pais');
   ch = document.getElementById('chk_acepto');	
   
   chp = document.getElementById('chk_news_fiestas');	
   chc = document.getElementById('chk_news_cultura');	
   chd = document.getElementById('chk_news_deporte');	
   chn = document.getElementById('chk_news_novedades');	
   chnot = document.getElementById('chk_news_noticias');	
   
   if(n.value==''){ v=false; msg = msg + '** Debe introducir su nombre.\n'; }
   if(s.value==''){ v=false; msg = msg + '** Debe introducir sus apellidos.\n'; }
   if(p.value==''){ v=false; msg = msg + '** Debe establecer su contraseña.\n';}
   if(c.value==''){ v=false; msg = msg + '** Debe introducir el nombre de su ciudad.\n'; }
   if(pro.value==''){ v=false; msg = msg + '** Debe introducir su provincia.\n'; }
   if(pa.value==''){ v=false; msg = msg + '** Debe introducir su país.\n'; }
   if(check_email(m.value)==false){ v=false; msg = msg + '** La dirección email no és válida o su formato no es correcto.\n';}
   if(m.value!=m2.value){ v=false; msg = msg + '** Las direcciones de correo no coinciden.\n'; }
   if(p.value!=p2.value){ v=false; msg = msg + '** Las contraseñas no coinciden.\n'; }
   if(ch.checked==false){ v=false; msg = msg + '** Debe aceptar las condiciones y terminos.\n'; }
   
   if(chp.checked==false && chc.checked==false && chd.checked==false && chn.checked==false && chnot.checked==false){
		v=false; msg = msg + '** Debe seleccionar como mínimo un tipo de suscripción.\n';
   }
   
   if(!v){ 
   		alert(msg); 
   }else{
   		f.submit();
   }
  }
  

function update(){
   var v = true;
   var msg = ''; 
   f  = document.getElementById('f_update_user');
   n  = document.getElementById('act_name');	
   s  = document.getElementById('act_surname');	
   c  = document.getElementById('act_city');
   pro= document.getElementById('act_provincia');
   pa = document.getElementById('act_pais');
   
   if(n.value==''){ v=false; msg = msg + '** Debe introducir su nombre.\n'; }
   if(s.value==''){ v=false; msg = msg + '** Debe introducir sus apellidos.\n'; }
   if(c.value==''){ v=false; msg = msg + '** Debe introducir el nombre de su ciudad.\n'; }
   if(pro.value==''){ v=false; msg = msg + '** Debe introducir su provincia.\n'; }
   if(pa.value==''){ v=false; msg = msg + '** Debe introducir su país.\n'; }
   if(!v){ 
   		alert(msg); 
   }else{
   		f.submit();
   }
  }
   
function vremember(){
	m = document.getElementById('rmail');
	valida = check_email(m.value);
	if(valida){
		f = document.getElementById('remember_mail'); 
		f.submit();	
	}else{
		alert('** La dirección email no és válida o su formato no es es correcto.');		
	}
}

function generate(){
	var v = true;
    var msg = ''; 
	f  = document.getElementById('f_gen');
    n  = document.getElementById('new');
	n2  = document.getElementById('new2');	
	c  = document.getElementById('capcha');	

	if(n.value==''){ v=false; msg = msg + '** Debe introducir su nueva contraseña.\n'; }
	if(n.value!=n2.value){ v=false; msg = msg + '** Las contraseñas no coinciden.\n'; }
	if(c.value!='mSVZZ'){ v=false; msg = msg + '** El texto no corresponde con la imágen.\n'; }
	if(!v){ 
   		alert(msg); 
   	}else{
   		f.submit();
   	}
}

function check_email (emailStr) {
   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 false  // --- Email address seems incorrect (check @ and .'s)
   }

   var user = matchArray[1]
   var domain = matchArray[2]
   if (user.match(userPat) == null) {
      return false   // ---  The username doesn't seem to be valid.
   }

   var IPArray = domain.match(ipDomainPat)
   if (IPArray != null) {
      for (var i=1; i <= 4; i++) {
	     if (IPArray[i] > 255) {
	        return false  // --- Destination IP address is invalid!
	     }
     }
     return true
   }

   var domainArray = domain.match(domainPat)
   if (domainArray == null) {
	  return false  // --- The domain name doesn't seem to be valid.
   }

   var atomPat = new RegExp(atom,"g")
   var domArr = domain.match(atomPat)
   var len = domArr.length
   if (domArr[domArr.length - 1].length < 2 || domArr[domArr.length - 1].length > 5) {
      return false  // --- The address must end in a three-letter domain, or two letter country.
   }

   if (len < 2) {
      return false  // --- This address is missing a hostname!
   }

   return true;
}