$(function() {
  $('.error').hide();
  
  /*
  $(".button_imprimir").click(function() {
    //$(".tabs").hide();
	//$("#left").printElement();
	//$(".tabs").show();
    return false;
  });
  */
  
  //Formulari enviar a amic
  $(".button_amic").click(function() {
	// validate and process form
	// first hide any error messages
	$('.error').hide();
    $('#correu_enviat').html("");
		
    var info_lang = $("input#info_lang").val();
	var info_curs = $("input#info_curs").val();
    var error = false;
    var frase1;
    var frase2;

    if (info_lang == "esp") {
	  frase1 = "Correo enviado correctamente a: ";
      frase2 = "Apreta Cerrar si no deseas enviarlo a nadie mas.";	  
	}
	else {
	  frase1 = "Correu enviat correctament a: ";
	  frase2 = "Prem Tancar si no desitges enviar-ho a ningú més.";
    }

    var assumpte = $("input#assumpte").val();
	assumpte = trimAll(assumpte);
	if (assumpte == "") {
      $("label#assumpte_error").show();
      $("input#assumpte").focus();
	  error = true;
    }

	var correuo = $("input#correuo").val();
	correuo = trimAll(correuo);
	if (correuo == "") {
      $("label#correuo_error").show();
      $("input#correuo").focus();
	  error = true;
    }
	
	if (!validateAddress(correuo)) {
      $("label#correuo_error").show();
      $("input#correuo").focus();
	  error = true;
    }
	
	var correud = $("input#correud").val();
    correud = trimAll(correud);	
	if (correud == "") {
      $("label#correud_error").show();
      $("input#correud").focus();
	  error = true;
    }

	if (!validateAddress(correud)) {
      $("label#correud_error").show();
      $("input#correud").focus();
	  error = true;
    }

	var comentaris = $("textarea#comentaris").val();
	
    if (error) return false;

    var dataString = 'info_lang='+ info_lang + '&info_curs=' + info_curs + '&assumpte=' + assumpte + '&correuo=' + correuo + '&correud=' + correud + '&comentaris=' + comentaris;
	//alert (dataString);return false;
		
	$.ajax({
      type: "POST",
      url: "/enviar-amic/",
      data: dataString,
      success: function() {
        //$('.form_info').html("<div id='message'></div>");
		$("input#correud").val('');
        $('#correu_enviat').html("<h2>"+frase1+"</h2>")
        .append("<p>"+correud+"<br><br>"+frase2+"</p>")
        .hide()
        .fadeIn(1500, function() {
          //$('#message').append("<img id='checkmark' src='images/check.png' />");
        });
      }
     });
    return false;
	});
  
  //Formulari contacte
  $(".button_contacte").click(function() {
	// validate and process form
	// first hide any error messages
	$('.error').hide();
    $('#correu_enviat').html("");
		
    var info_lang = $("input#info_lang").val();
    var error = false;
    var frase;

    if (info_lang == "esp") {
	  frase = "Correo enviado correctamente a: ";
	}
	else {
	  frase = "Correu enviat correctament a: ";
    }

    var telefon = $("input#telefon").val();

    var nom = $("input#nom").val();

    nom = trimAll(nom);

    if (nom == "") {
      $("label#nom_error").show();
      $("input#nom").focus();
      error = true; 
    }

	var email = $("input#email").val();
	email = trimAll(email);
	if (email == "") {
      $("label#email_error").show();
      $("input#email").focus();
	  error = true;
    }
	
	if (!validateAddress(email)) {
      $("label#email_error").show();
      $("input#email").focus();
	  error = true;
    }

    var message = $("textarea#message").val();

    message = trimAll(message);

    if (message == "") {
      $("label#message_error").show();
      $("textarea#message").focus();
	  error = true;
    }

    var captcha = $("input#captcha").val();
	var captcha2 = $("input#info_captcha").val();

    if (captcha == "") {
      $("label#captcha_error1").show();
      $("input#captcha").focus();
	  error = true;
    }
	else if (calcMD5(captcha) != captcha2)
	{
      $("label#captcha_error2").show();
      $("input#captcha").focus();
	  error = true;
	}

    if (error) return false;

    var dataString = 'info_lang='+ info_lang +'&nom=' + nom + '&email=' + email + '&telefon=' + telefon + '&message=' + message;
	//alert (dataString);return false;
		
	$.ajax({
      type: "POST",
      url: "/contact-form/",
      data: dataString,
      success: function() {
        //$('.form_info').html("<div id='message'></div>");
		$("input#email").val('');
//        $('#correu_enviat').html("<h2>"+frase+"</h2>")
//        .append("<p>"+email+"</p>")
        $('#correu_enviat').html(frase+" "+email)
        .hide()
        .fadeIn(1500, function() {
          //$('#message').append("<img id='checkmark' src='images/check.png' />");
        });
      }
     });
    return false;
	});  
  
  $("input#nom").keypress(function (e) {
    $("label#nom_error").hide();
  });

  $("input#email").keypress(function (e) {
    if( $("label#email_error").is(':visible') ) {
  	  var email = $("input#email").val();		
      email = trimAll(email);
	  
	  if (validateAddress(email)) 
	  {
        $("label#email_error").hide();
 	  }
	}
  });

  //Formulari inscripcio
  $(".button_curs").click(function() {
	// validate and process form
	// first hide any error messages
	$('.error').hide();
    $('#correu_enviat').html("");
		
    var info_lang = $("input#info_lang").val();
    var info_curs = $("input#info_curs").val();	
    var error = false;
    var frase;

    if (info_lang == "esp") {
	  frase = "Información enviada correctamente a EGE";
	}
	else {
	  frase = "Informació enviada correctament a EGE";
    }

    //frase = '<img src="http://www.ege.es' + window.location.pathname + 'preinscripciook" width="1" height="1" />' + frase;
	//frase = '<img src="/templates/default/img/dot1x1.gif" width="1" height="1" alt=""/>' + frase;

    var comentaris = $("textarea#comentaris").val();
	
    var nom = $("input#nom").val();

    nom = trimAll(nom);

    if (nom == "") {
      $("label#nom_error").show();
      $("input#nom").focus();
      error = true; 
    }

    var telefon = $("input#telefon").val();

    telefon = trimAll(telefon);

    if (telefon == "") {
      $("label#telefon_error").show();
      $("input#telefon").focus();
      error = true; 
    }

	var email = $("input#email").val();
	email = trimAll(email);
	if (email == "") {
      $("label#email_error").show();
      $("input#email").focus();
	  error = true;
    }
	
	if (!validateAddress(email)) {
      $("label#email_error").show();
      $("input#email").focus();
	  error = true;
    }
	
	var captcha = $("input#captcha").val();
	var captcha2 = $("input#info_captcha").val();
	
    if (captcha == "") {
      $("label#captcha_error1").show();
      $("input#captcha").focus();
	  error = true;
    }
	else if (calcMD5(captcha) != captcha2)
	{
      $("label#captcha_error2").show();
      $("input#captcha").focus();
	  error = true;
	}

    if (error) return false;
	
    try{
      var pageTrackerCurs = _gat._getTracker("UA-126203-1");
      var url = window.location.pathname + 'preinscripciook';
      pageTrackerCurs._trackPageview(url);
    } catch(err) {}

    var dataString = 'info_lang='+ info_lang +'&info_curs='+ info_curs +'&nom=' + nom + '&email=' + email + '&telefon=' + telefon + '&comentaris=' + comentaris;
	//alert (dataString);return false;

	$.ajax({
      type: "POST",
      url: "/informacio-curs/",
      data: dataString,
      success: function() {
        //$('.form_info').html("<div id='message'></div>");
        $("input#nom").val('');
	    $("input#telefon").val('');
        $("textarea#comentaris").val('');
	    $("input#email").val('');
	    $("input#captcha").val('');
        //$('#correu_enviat').html("<h2>"+frase+"</h2>")
        //.append("<p>"+email+"</p>")
        $('#correu_enviat').html(frase)
        .hide()
        .fadeIn(1500, function() {
          //$('#message').append("<img id='checkmark' src='images/check.png' />");
        });
      }
     });
    return false;
	});    
  
});

function validateAddress(address) {
var pattern = new RegExp(/^((“[\w-\s]+”)|([\w-]+(?:\.[\w-]+)*)|(“[\w-\s]+”)([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i);
return pattern.test(address);
}

function trimAll(sString)
{
while (sString.substring(0,1) == ' ')
{
sString = sString.substring(1, sString.length);
}
while (sString.substring(sString.length-1, sString.length) == ' ')
{
sString = sString.substring(0,sString.length-1);
}
return sString;
} 
