var form = "";
var submitted = false;
var error = false;
var error_message = "";

function check_input(field_name, message) {
  if (form.elements[field_name] && (form.elements[field_name].type != "hidden")) {
    var field_value = form.elements[field_name].value;

    if (field_value == '') {
      error_message = error_message + "* " + message + "\n";
      error = true;
    }
  }
}

function check_telefono(field_name, message) {
  if (form.elements[field_name] && (form.elements[field_name].type != "hidden")) {
    var field_value = form.elements[field_name].value;
	while(field_value.search(" ")!=-1)
		field_value = field_value.replace(" ","");
	//alert(field_value);
    if (field_value.length < 9) {
      error_message = error_message + "* " + message + "\n";
      error = true;
    }
  }
}

function check_dni(field_name) {
  if (form.elements[field_name] && (form.elements[field_name].type != "hidden")) {
    var field_value = form.elements[field_name].value;
	
    if (field_value == '')
	{	error = true;	
	  	error_message = error_message + "* Su NIF debe contener 7/8 números y una letra.\n";
	}
	else
		if (!isNaN(field_value.substring(0,1)) && field_value.search(/^([0-9]{7,8}[a-zA-Z])$/)==-1) 
		{	error = true;	
	  		error_message = error_message + "* Su NIF debe contener 7/8 números seguidos de una letra.\n";
		}	
  }
}

function check_cp(field_name, message) {
  if (form.elements[field_name] && (form.elements[field_name].type != "hidden")) {
    var field_value = form.elements[field_name].value;
    if (field_value != '' && field_value.search(/^([0-9]{5})?$/)==-1)
	{
		error = true;	
	  	error_message = error_message + "* " + message + "\n";
	}
  }
}

function check_email(field_name, message) {
  if (form.elements[field_name] && (form.elements[field_name].type != "hidden")) {
    var field_value = form.elements[field_name].value;
    if (field_value == '' )
	{
		error = true;	
		error_message = error_message + "* Debe indicar una dirección de email. \n";
	}
	if ( field_value.search(/^([^@]+@[^@]+\.[^@\.]+)?$/)==-1)
	{
		error = true;	
		error_message = error_message + "* " + message + "\n";
	}
  }
}



function check_date(field_name) {
  	if (form.elements[field_name] && (form.elements[field_name].type != "hidden")) {
    	var field_value = form.elements[field_name].value;
	
  		if (field_value.search(/^([0-3]{0,1}[0-9]\/[0-1]{0,1}[0-9]\/[1-2][0-9]{3})$/)==-1) 
		{	error = true;	
			error_message = error_message + "* La fecha debe seguir el formato dd/mm/aaaa.\n";
		}

  	}
}

function check_hour(field_name) {
  	if (form.elements[field_name] && (form.elements[field_name].type != "hidden")) {
    	var field_value = form.elements[field_name].value;
	
  		if (field_value.search(/^([0-2]{0,1}[0-9]:[0-6]{0,1}[0-9])$/)==-1) 
		{	error = true;	
			error_message = error_message + "* La hora debe seguir el formato hh:mm.\n";
		}

  	}
}


function check_form(form_name) {

 if (submitted == true) {
    alert("Ya se ha enviado el formulario. Espere a que termine el proceso.");
    return false;
  }

  error = false;
  form = form_name;
  error_message = "Hay errores en este formulario!\nPor favor, haga las siguientes correcciones:\n\n";

  check_input("titulo", "Debe escribir un título para el evento.");
  
  check_input("contenido", "Debe redactar el contenido del evento.");

  check_date("fecha");
  
  check_hour("hora");
  
 
  if (error == true) {
    alert(error_message);
    return false;
  } else {
    submitted = true;
    return true;
  }
}

function check_datos_cliente(form_name) {
  error = false;
  form = form_name;
  error_message = "Hay errores en su información de cliente!\nPor favor, haga las siguientes correcciones:\n\n";

  check_dni("dni");
  
  check_input("nombre", "Debe introducir su nombre.");
  
  check_input("apellidos", "Debe introducir sus apellidos.");
  
  check_telefono("telefono", "Su número de teléfono no es válido.");
  
  check_email("email", "Su dirección de email no es válida.");

  check_cp("cp", "Su código postal debe tener 5 números (sin puntos).");
 
  if (error == true) {
    alert(error_message);
    return false;
  } else {
    submitted = true;
    return true;
  }
}



