var TelefonoTodos = /^(\+{1}[0-9]{10,15}|[0-9]{9,14})$/;

function validar_campo(nombre, val) {
   switch ( nombre ) {
      case 'telefono_todos':
	     if ( !TelefonoTodos.exec(val) ) 
           return false;
        else
           return true;
	     break;
	}
}

function redirige(url) 
{
  if (url != "")
    location.href = url;
}

function ir_home(){
	document.location.href ="http://www.marinador.com";
}

function cambia_idioma_url(url)
{
	window.location = url;
	return true;
}

//Si los campos del formulario lateral están rellenados correctamente  se abre una nueva ventana y en ella se somete el formulario.
function submitPopup(idioma)
{ 
  if (validar(document.forms["formulariocontacto"],idioma))
  {
    fnpopup('about:blank','formulariopopup',374,450,'scrollbars=yes');	   
	  document.forms["formulariocontacto"].submit();
	}	   
}

//Abre el popup donde se somete el formulario
function fnpopup(p_url,p_id,p_ancho,p_alto,p_carac)
{

        car="width="+p_ancho+",height="+p_alto+",left="+((screen.width/2)-(parseInt(p_ancho)/2))+",top="+((screen.height/2)-(parseInt(p_alto)/2))+","+p_carac

        window.open(p_url,p_id,car)
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function ComprobarPrivacidad (privacidad) {
   if ( !privacidad.checked )
      return false;
   return true;
}

function ComprobarEmail(email)
{
	emailpat = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
 	if( !emailpat.test( email) ) 
	{  		
  		return false;
 	}
 	return true;
}

//valida los campos del formulario
function validar(formulario, idioma)
{
  if (!ComprobarPrivacidad(formulario.privacidad)) {		
		switch(idioma)
    {
      case "ES":
        alert('Por favor, debe aceptar la política de privacidad');
        break;
        
      case "EN":
        alert('You should accept our Privacy Policy');
        break;
      
      case "FR":
         alert("S'il vous plaît, acceptez la Politique de confidentialité. Merci");
         break;
               
      default:
         alert('You should accept our Privacy Policy');
         break;
    }
		formulario.privacidad.focus();
		return false;
  }
  
   
  if (formulario.nombre.value.length < 3)
  {
    switch (idioma)
    {
      case "ES":
        alert("Escriba por lo menos 3 caracteres en el campo \"nombre\".");
        break;
        
      case "EN":
        alert("Please, write your name. Thanks");
        break;
      
      case "FR":
         alert("S'il vous plaît, écrivez votre nom. Merci");
         break;
      
      default:
        alert("Please, write your name. Thanks");              
    }
    
    formulario.nombre.focus();
    return (false);
  }
  
  var checkOK = "ABCDEFGHIJKLMNÑOPQRSTUVWXYZÁáÉéÍíÓóÚúabcdefghijklmnñopqrstuvwxyz ";
  var checkStr = formulario.nombre.value;
  var allValid = true;
  for (i = 0;  i < checkStr.length;  i++)
  {
    ch = checkStr.charAt(i);
    for (j = 0;  j < checkOK.length;  j++)
      if (ch == checkOK.charAt(j))
        break;
    if (j == checkOK.length)
    {
      allValid = false;
      break;
    }
  }
  if (!allValid)
  {
    
    switch(idioma)
    {
      case "ES":
        alert("Escriba sólo letra caracteres en el campo \"nombre\".");
        break;
        
      case "EN":
        alert("Please, write your name. Thanks");
        break;
      
      case "FR":
         alert("S'il vous plaît, écrivez votre nom. Merci");
         break;
      
      default:
      	alert("Please, write your name. Thanks");
    }
    formulario.nombre.focus();
    return (false);
  }

  //if (formulario.telefono.value.length != 9)
  if ( !validar_campo('telefono_todos',formulario.telefono.value) )
  {    
    switch(idioma)
    {
      case "ES":
        alert("Por favor, inserte un número de teléfono válido.");
        break;
        
      case "EN":
        alert("Please enter a valid telephone number.This is essential, as initial contact with our customers is by telephone.");
        break;
       
      case "FR":
         alert("S'il vous plaît, nous fournir un numéro de téléphone valide. Meci");
         break;
     
     default:
     	alert("Please enter a valid telephone number.This is essential, as initial contact with our customers is by telephone.");
    }
    formulario.telefono.focus();
    return (false);
  }
  /*
  var checkOK = "+0123456789";
  var checkStr = formulario.telefono.value;
  var allValid = true;
  var decPoints = 0;
  var allNum = "";
  for (i = 0;  i < checkStr.length;  i++)
  {
    ch = checkStr.charAt(i);
    for (j = 0;  j < checkOK.length;  j++)
      if (ch == checkOK.charAt(j))
        break;
    if (j == checkOK.length)
    {
      allValid = false;
      break;
    }
    allNum += ch;
  }
  if (!allValid)
  {
    switch(idioma)
    {
      case "ES":
        alert("Escriba sólo números en el campo \"Teléfono\".");
        break
        
      case "EN":
        alert("Please enter a valid telephone number.This is essential, as initial contact with our customers is by telephone.");
        break
    }
    
    formulario.telefono.focus();
    return false;
  }
  
  if (formulario.telefono.value.substr(0,1) != 9 && formulario.telefono.value.substr(0,1) != 8 && formulario.telefono.value.substr(0,1) != 6)
  {  	
  	switch(idioma)
    {
      case "ES":
        alert("Escriba un número de teléfono correcto.");
        break
        
      case "EN":
        alert("Please enter a valid telephone number.This is essential, as initial contact with our customers is by telephone.");
        break
    }
	  formulario.telefono.focus();
  	return false;
  }
  */
  if ( formulario.email.value != '' ) {
      if (!ComprobarEmail(formulario.email.value))
      {		
      	switch(idioma)
       {
         case "ES":
           alert('La dirección de correo electrónico no es correcta.');
           break;
           
         case "EN":
           alert('Please enter a valid e-mail address');
           break;
         
         case "FR":
            alert("S'il vous plaît, écrivez votre e-mail. Merci");
            break;

	 default:
	   alert('Please enter a valid e-mail address');
       }
      	formulario.email.focus();
      	return false;
      }
	}
  return true;
  
}

/* PARA LOS POPUPS DE OFERTAS */
function validarformulario(formulario)
{

  if (formulario.nombre.value.length < 3)
  {
    alert("Escriba por lo menos 3 caracteres en el campo \"nombre\".");
    formulario.nombre.focus();
    return (false);
  }

  var checkOK = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz ";
  var checkStr = formulario.nombre.value;
  var allValid = true;
  for (i = 0;  i < checkStr.length;  i++)
  {
    ch = checkStr.charAt(i);
    for (j = 0;  j < checkOK.length;  j++)
      if (ch == checkOK.charAt(j))
        break;
    if (j == checkOK.length)
    {
      allValid = false;
      break;
    }
  }
  if (!allValid)
  {
    alert("Escriba slo letras en el campo \"nombre\".");
    formulario.nombre.focus();
    return (false);
  }
  
  //if (formulario.telefono.value.length < 9)
  if ( !validar_campo('telefono_todos',formulario.telefono.value) )
  {
    alert("Numero de telefono incorrecto.");
    formulario.nombre.focus();
    return (false);
  }
  /*
  var checkOK = "0123456789-+";
  var checkStr = formulario.telefono.value;
  var allValid = true;
  var decPoints = 0;
  var allNum = "";
  for (i = 0;  i < checkStr.length;  i++)
  {
    ch = checkStr.charAt(i);
    for (j = 0;  j < checkOK.length;  j++)
      if (ch == checkOK.charAt(j))
        break;
    if (j == checkOK.length)
    {
      allValid = false;
      break;
    }
    allNum += ch;
  }
  if (!allValid)
  {
    alert("Escriba solo  caracteres correctos en el campo \"Telefono\".");
    formulario.edad.focus();
    return false;
  }
  */
  if (!ComprobarEmail(formulario.email.value))
	{
		alert('La direccion de correo electronico no es correcta.');
		formulario.email.focus();
		return false;
	}
  
  return true;
}


/* PARA EL POPUP DE DISELO A UN AMIGO */
function validar_amigo(formulario)
{

  if (formulario.nombre1.value.length < 3)
  {
    alert("Escriba por lo menos 3 caracteres en el campo \"nombre de tu amigo\".");
    formulario.nombre1.focus();
    return (false);
  }  

  var checkOK = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz ";
  var checkStr = formulario.nombre1.value;
  var allValid = true;
  for (i = 0;  i < checkStr.length;  i++)
  {
    ch = checkStr.charAt(i);
    for (j = 0;  j < checkOK.length;  j++)
      if (ch == checkOK.charAt(j))
        break;
    if (j == checkOK.length)
    {
      allValid = false;
      break;
    }
  }
  if (!allValid)
  {
    alert("Escriba slo letras en el campo \"nombre de tu amigo\".");
    formulario.nombre1.focus();
    return (false);
  }
  
  
  
  
  
  if (formulario.nombre2.value.length < 3)
  {
    alert("Escriba por lo menos 3 caracteres en \"tu nombre\".");
    formulario.nombre2.focus();
    return (false);
  }  

  var checkOK = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz ";
  var checkStr = formulario.nombre2.value;
  var allValid = true;
  for (i = 0;  i < checkStr.length;  i++)
  {
    ch = checkStr.charAt(i);
    for (j = 0;  j < checkOK.length;  j++)
      if (ch == checkOK.charAt(j))
        break;
    if (j == checkOK.length)
    {
      allValid = false;
      break;
    }
  }
  if (!allValid)
  {
    alert("Escriba slo letras en  \"tu nombre\".");
    formulario.nombre2.focus();
    return (false);
  }
  
  
  if (!ComprobarEmail(formulario.email1.value))
	{
		alert('La direccion de correo electronico de tu amigo no es correcta.');
		formulario.email1.focus();
		return false;
	}
	
	if (!ComprobarEmail(formulario.email2.value))
	{
		alert('Tu direccion de correo electronico es correcta.');
		formulario.email2.focus();
		return false;
	}
  
  return true;
}

/* FUNCIÓN PARA MOSTRAR NOTICIAS EN LA PORTADA DE LA HOME */
/*
function cambia()
{		
	xajax_noticias(1);				
	setTimeout('xajax_noticias(2)',10000); 
	setTimeout('xajax_noticias(3)',20000); 	
		
	return false;
}
*/

function cambia()
{		
	xajax_cargarXML(0);				
	setTimeout('xajax_cargarXML(1)',20000); 
	setTimeout('xajax_cargarXML(2)',40000); 	
		
	return false;
}


//flash popups
function popUp(URL) 
{
day = new Date();
id = day.getTime();
eval("page" + id + " = window.open(URL, '" + id + "','toolbar=0,scrollbars=0,location=0,statusbar=0,menubar=0,resizable=0,fullscreen=yes');");
}

function ComprobarPrivacidad (privacidad) {
   if ( !privacidad.checked )
      return false;
   return true;
}

/**** Funciones para el formulario de empleo ***/
function Enviar() 
{
		if (DatosCorrectos())		       
      /*document.empleo.submit();*/
      return true;    
		else				  
		  return false;
		
}

	
	function DatosCorrectos()
	{
		var frmObj, Respuesta;
		frmObj = document.empleo;
		
		Respuesta = true;
		
		if (!ComprobarPrivacidad(frmObj.privacidad)) {		
         alert('Por favor, debe aceptar la política de privacidad');
         frmObj.privacidad.focus();
		   Respuesta = false;
      }
        	
      
      Respuesta = Respuesta && ValidarCampoRequerido(frmObj, "apellido1", "El campo Primer Apellido no ha sido rellenado.");
		Respuesta = Respuesta && ValidarCampoRequerido(frmObj, "apellido2", "El campo Segundo Apellido no ha sido rellenado.");
		Respuesta = Respuesta && ValidarCampoRequerido(frmObj, "nombre", "El campo Nombre no ha sido rellenado.");						
		Respuesta = Respuesta && ValidarCampoRequerido(frmObj, "calle", "El campo Dirección no ha sido rellenado.");
		Respuesta = Respuesta && ValidarCampoRequerido(frmObj, "localidad", "El campo Localidad no ha sido rellenado.");
		Respuesta = Respuesta && ValidarCampoRequerido(frmObj, "provincia", "El campo Provincia no ha sido rellenado.");
		Respuesta = Respuesta && ValidarCampoRequerido(frmObj, "telefono1", "El campo Teléfono 1 no ha sido rellenado.");
		Respuesta = Respuesta && ValidarCampoRequerido(frmObj, "cp", "El campo C.P. no ha sido rellenado.");
		Respuesta = Respuesta && ValidarCampoRequerido(frmObj, "fecha", "El campo Fecha de Nacimiento no ha sido rellenado.");
		Respuesta = Respuesta && ValidarIdentificacion(frmObj, "Rellene bien el NIF o Permiso de trabajo.");
			
		return Respuesta;
	}

	function ValidarCampoRequerido(frmObj, NombreCampo, Mensaje)
	{
		var Correcto = true;	
		if (frmObj.elements[NombreCampo].value == "")
		{
			alert(Mensaje);
			frmObj.elements[NombreCampo].focus();
			Correcto = false;
		}
	
		return Correcto;
	}
	
	/* Validar identificación (DNI o Permiso de trabajo) en el formulario de empleo */
	function ValidarIdentificacion(frmObj, Mensaje)
	{
		var Correcto = true;	
		if (frmObj.elements['nif'].value == "" && frmObj.elements['permisotrabajo'].value == "")
		{
			alert(Mensaje);
			frmObj.elements[NombreCampo].focus();
			Correcto = false;
		}
		else
		{
			if (frmObj.elements['letra'] == "")
			{
				alert(Mensaje);
				frmObj.elements[NombreCampo].focus();
				Correcto = false;			
			}
		  
		}
	
		return Correcto;
	}
	
	/* En función de la nacionalidad muestra el campo dni o permiso de trabajo en el formulario de empleo */
	function capas(valor)
	{
	  	var comunidad =new Array(22);
	  	comunidad[0] = "Germany";
	  	comunidad[1] = "Austria";
	  	comunidad[2] = "Belgica";
	  	comunidad[3] = "Denmark";
	  	comunidad[4] = "Eslovaquia";
	  	comunidad[5] = "Eslovenia";
	  	comunidad[6] = "España";
	  	comunidad[7] = "Estonia";
	  	comunidad[8] = "Finland";
	  	comunidad[9] = "France";
	  	comunidad[10] = "Greece";
	  	comunidad[11] = "Hungary";
	  	comunidad[12] = "Ireland";
	  	comunidad[13] = "Italy";
	  	comunidad[14] = "Latvia";
	  	comunidad[15] = "Lithuania";
	  	comunidad[16] = "Luxembourg";
	  	comunidad[17] = "Netherlands";
	  	comunidad[18] = "Poland";
	  	comunidad[19] = "Portugal";
	  	comunidad[20] = "Gran Bretaña";
	  	comunidad[21] = "Czech Republic";
	  	comunidad[22] = "Suecia";
	  	
	  	
	  	for (i=0; i < comunidad.length; i++)
	  	{
  			if (valor == comunidad[i])
  			{
  				document.getElementById('clave').style.display = "none";  				
  			  document.getElementById('documento').style.display = "";
          document.getElementById('nif').disabled = false;  
          document.getElementById('letra').disabled = false;
  			  return true;
  			}			
		  }
	  	document.getElementById('documento').style.display = "none";
	  	document.getElementById('clave').style.display = "";
	  	document.getElementById('nif').disabled = true;
	  	document.getElementById('letra').disabled = true;
	  	return true;
	  		  		  	
	  	/*
	  	for (i=0; i < comunidad.length; i++)
	  	{
  			if (valor == comunidad[i])
  			{
  			
  			   if(document.layers)
	         {
		          document.layers['clave'].visibility='hide'; // Si utilizamos NS		          	
	  	        document.layers['documento'].visibility='show';	  
	         }
	         else
	         {
	 	         document.getElementById('clave').style.visibility="hidden";   		         
	  	       document.getElementById('documento').style.visibility="visible";
	         }
           return true; 	  				    			  
  			}        			
		  }
	  	
      if(document.layers)
	    {
		    document.layers['documento'].visibility='hide'; // Si utilizamos NS		          	
	  	  document.layers['clave'].visibility='show';	  
	    }
	    else
	    {
	 	     document.getElementById('documento').style.visibility="hidden";   		         
	  	   document.getElementById('clave').style.visibility="visible";
	    }
	    
	    
	  	return true;
      */	  		  		  
	}
	/**** Fin funciones para el formulario de empleo ***/


