  // validateEmail
  function validateEmail(email) {
    var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
    if(reg.test(email) == false) {
      //alert('Adresse E-mail invalide');
      return true;
    }
  }

  // checkFormContact
  function checkFormContact() {
    var error = "";
    var errorRobot = false;
    var errorExpression = "Veuillez renseigner les champs suivants :\n";
    if ($("#f_nom").val() == "") error += "- Nom\n";
    if ($("#f_societe").val() == "") error += "- Société\n";
    if ($("#f_mail").val() == "") error += "- Mail\n";
    if ($("#f_telephone").val() == "") error += "- Téléphone\n";
    if ($("#f_objet").val() == "") error += "- Objet\n";
    if ($("#f_message").val() == "") error += "- Message\n";
    if ($("#f_rb").val() != "") errorRobot = true;

    if (!errorRobot) {
      if (error != "") {
        alert(errorExpression+error);
        return false;
      } else if (validateEmail($("#f_mail").val())) {
        error = "Veuillez renseigner une adresse email valide";
        alert(error);
        return false;
      } else {
        return true;
      }
    }
  }

$(function(){
  // Portfolio
  $('.bar2').mosaic({
		animation	:	'slide'
	});

  // Twitter
  $(".tweets").tweet({
    join_text: false,
    username: "bipmod",
    avatar_size: 36,
    count: 1,
    auto_join_text_default: "we said,",
    auto_join_text_ed: "we",
    auto_join_text_ing: "we were",
    auto_join_text_reply: "we replied",
    auto_join_text_url: "we were checking out",
    loading_text: "loading tweets..."
  });
  
  
  // Slider
	$("#viewer").removeClass("js-disabled");
	$("<div>").attr("id", "container").css({ position:"absolute"}).width($(".wrapper").length * 245).height(170).appendTo("div#viewer");
  $(".wrapper").each(function() {
		$(this).appendTo("div#container");
	});
	var duration = $(".wrapper").length * 2200;  // duration per image
	var speed = (parseInt($("div#container").width()) + parseInt($("div#viewer").width())) / duration;
	var direction = "rtl";

	//set initial position and class based on direction
	(direction == "rtl") ? $("div#container").css("left", 0).addClass("rtl") : $("div#container").css("left", 0 - $("div#container").width()).addClass("ltr") ;


	//animator function
	var animator = function(el, time, dir) {
    var elPosition = el.width() - $("#viewer").width();

		if(dir == "rtl") {
			el.removeClass("ltr").addClass("rtl");
			el.animate({ left:"-" + elPosition + "px" }, time, "linear", function() {
  			//restart animation
  			animator($(this), duration, "ltr");
			});
		} else {
			el.removeClass("rtl").addClass("ltr");
			el.animate({ left:0 + "px" }, time, "linear", function() {
  			//restart animation
  			animator($(this), duration, "rtl");
			});
		}
	}

	//start anim
	if ($("div#container").width() > $("#viewer").width())
    animator($("div#container"), duration, direction);

	$("a.wrapper").live("mouseover", function() {
	  $("div#container").stop(true);
	});

  //restart on mouseout
	$("a.wrapper").live("mouseout", function(e) {
		(e.relatedTarget == null) ? null : (e.relatedTarget.id != "controls") ? $("div#controls").slideUp("slow").remove() : null ;
		var totalDistance = parseInt($("div#container").width()) + parseInt($("div#viewer").width());
		var distanceLeft = ($("div#container").hasClass("ltr")) ? totalDistance - (parseInt($("div#container").css("left")) + parseInt($("div#container").width())) : totalDistance - (parseInt($("div#viewer").width()) - (parseInt($("div#container").css("left")))) ;
		var newDuration = distanceLeft / speed;
		//restart anim
		if ($("div#container").width() > $("#viewer").width())
		  animator($("div#container"), newDuration, $("div#container").attr("class"));
	});
});
