$(function() {
    // top menu
    // position lookups
    var menus = {
        fr: {
            menu1: "0 -154px"
            , menu2: "0 -132px"
            , menu3: "0 -110px"
            , menu4: "0 -88px"
            , menu5: "0 -66px"
            , menu6: "0 -44px"
            , menu7: "0 -22px"
        }
        , en: {
            menu1: "0 -176px"
            , menu2: "0 -154px"
            , menu3: "0 -132px"
            , menu4: "0 -110px"
            , menu5: "0 -88px"
            , menu6: "0 -66px"
            , menu7: "0 -44px"
            , menu8: "0 -22px"
        }
    };
    // mode
    var enFrancais = ($("body.fr").length > 0);
    // utils
    function GetPosition(anch, dfault) {
        var key = $(anch).attr("class");
        var items = enFrancais ? menus.fr : menus.en;
        return items[key] || dfault;
    }
    // set selected
    var path = location.pathname;
    $(".menu li a").each(function(idx) {
        if (path.indexOf($(this).attr("href")) == 0) {
            $(".menu").css("background-position", GetPosition(this, "0 0"));
        }
    });
    // get default bg position
    var reset = $(".menu").css("background-position");
    // wire up hover functionality
    $(".menu li a").hover(
        function() { // over
            $(".menu").css("background-position", GetPosition(this, reset));
        }
        , function() { // out
            //reset
            $(".menu").css("background-position", reset);
        }
    );

    // contacts 3
    var expandee = $("<div class='expand expandee' />").hide();
    var moreText = "Click for more";
    var lessText = "Click for less";
    var expander = $(
        "<a>"
        , {
            href: "#more",
            text: moreText,
            "class": "more",
            click: function(e) {
                e.preventDefault();
                var a = $(this);
                a.parent().find("div.expandee").slideToggle(400, function() {
                    a.text(a.text().toLowerCase() == moreText.toLowerCase() ? lessText : moreText);
                });
            }
        }
    );
    $("ul.contactsbox li > div").each(function(idx) {
        // if contact block has expands:
        var expands = $("div.expand", this);
        if (expands.length > 0) {
            // wrap them
            expands.wrapAll(expandee);
            // add link
            $("h3", this).after(expander.clone(true));
        }
    });
});
