var visible_section;
var visible_background;

$(document).ready(function() {
    $.ajaxSetup({dataType: 'json'});
    registerClickListeners();

    $('div.menu_item a').live('mouseover', function(e) {
        var target = $(e.target);
        $('#' + target.closest('div').attr('id') + '_background').fadeIn();
    });

    $('div.menu_item a').live('mouseout', function(e) {
        var target = $(e.target);
        if (visible_section != target.closest('div').attr('id') + '_section') {
            $('#' + target.closest('div').attr('id') + '_background').fadeOut();
        }
    });

    $('#submit').bind('click', function (e) {
        $('#submit').attr('disabled', 'disabled').val('contacting...');
        $.post('contact', $('#contact_section form').serialize(), function (e) {
            $('#contact_section form').children().attr('disabled', 'disabled');
            $('#submit').replaceWith('thanks!');
        });
        return false;
    });

    $('.menu_item').bind('click', function(e) {
        var target = $(e.target);
        var clicked_section = target.closest('div').attr('id') + '_section';
        var clicked_background = target.closest('div').attr('id') + '_background';

        if (visible_section == clicked_section) {
            $('#' + visible_section).fadeOut();
            $('#' + visible_background).fadeOut();
            visible_section = null;
            visible_background = null;
        }
        else {
            if (visible_section != null)
            {
                $('#' + visible_section).fadeOut();
                $('#' + visible_background).fadeOut();
            }
            $('#' + clicked_section).fadeIn();
            $('#' + clicked_background).fadeIn();
            visible_section = clicked_section;
            visible_background = clicked_background;
        }
    });

    $(".section").draggable();
});

function registerClickListeners() {
    $('.pagination a').bind('click', function(e) {
        e.preventDefault();
        $.get(e.target.href, null, function (e) {
            $('#site').replaceWith(e.site);
            registerClickListeners();
        });
    });
}

function validateSubmit() {
    var regex = /^[a-z0-9\._-]+@([a-z0-9_-]+\.)+[a-z]{2,6}$/i;
    if ($('#contact_name').val() == '' || !regex.test($('#contact_email').val()) || $('#contact_inquiry').val() == '') {
        $('input#submit').attr('disabled', 'disabled');
    }
    else {
        $('input#submit').removeAttr('disabled');
    }
}
