$(document).ready(function() {
    $('.tipsy-trigger').tipsy({
      gravity: 's',
      offset: 3,
      fade: true
    });

    $(".work-item .link").live("mouseover", function() {
        $(this).siblings(".overlay").slideDown("fast");

        $(this).one("mouseout", function() {
            $(this).siblings(".overlay").slideUp("fast");
        });
    });

    $(".home-grey-button a").hover(function() {
        $(this).animate({
            "padding-left": "5px",
            "margin-right": "10px"
        }, "fast");
    }, function() {
        $(this).animate({
            "padding-left": "0px",
            "margin-right": "15px"
        }, "fast");
    });

    //reset newsletter inputs on focus/blur
    $(".newsletter-form .text-input").focus(function() {
        if($(this).val() == $(this).get(0).defaultValue) {
            $(this).val("");
        }
    });
    $(".newsletter-form .text-input").blur(function() {
        if($(this).val() == "") {
            $(this).val($(this).get(0).defaultValue);
        }
    });
});

$(function() {
    var nav = $("#navigation .menu");
    if(nav.find("li.current_page_item").length) {
        var curr_item = nav.find("li.current_page_item");
        curr_item.removeClass("current_page_item").addClass("current");
        nav.lavaLamp({
            fx: "backout",
            speed: 700
        });
    }
});

function validateForm(elm) {
    var form = $(elm).closest("form");
    var err = 0;

    $(".mce_inline_error").remove();

    form.find(".required").each(function() {
       if(!$(this).val().length) {
           $('<div class="mce_inline_error">This field is required.</div>').insertAfter($(this));
           err++;
       } else {
           $(this).siblings(".mce_inline_error").remove();
       }
    });

    form.find(".email").each(function() {
        if($(this).val().length && !isEmail($(this).val())) {
            $('<div class="mce_inline_error email_error">Invalid email address.</div>').insertAfter($(this));
            err++;
        } else {
            $(this).siblings(".email_error").remove();
        }
    });

    if(err == 0) {
        form.submit();
    }

    return false;
}

function isEmail(email) {
  var filter = /^([a-zA-Z0-9_.-])+@([a-zA-Z0-9_.-])+\.([a-zA-Z])+([a-zA-Z])+/;
  if (!filter.test(email)) {
    return false;
  } else {
    return true;
  }
}
