window.addEvent('domready', function() {      
    var borderS = 2;
    var borderL = 4;
    
    var minW = 50;
    var maxW = 100;

    var minH = minW;
    var maxH = maxW;
    /*var minH = minW-borderS;
    var maxH = maxW-borderL;*/
    
    var speed = 500;
    
    var growEffect = new Fx.Elements($$('li.item'), {duration:speed, wait:false, transition:Fx.Transitions.expoOut});
    
    var captionEffect = new Fx.Style('wayfinder-caption', 'opacity', {duration:speed/3, wait:false, transition:Fx.Transitions.sineInOut});

    $('wayfinder-caption').setOpacity(0);

    function growVals(iToShow, elements, minW, maxW, minH, maxH) {
        var results = {};
        elements.each(
            function(e, i){
                var toValW = (i == iToShow) ? maxW : minW;
                var toValH = (i == iToShow) ? maxH : minH;
                var toBorder = (i == iToShow) ? borderL : borderS;
                var tMargin = (iToShow >= 3 && iToShow != i) ? 52 : 0;
                results[i] = {
                    'width': toValW,
                    'height': toValH,
                    'margin-top': (i < 3) ? 0 : tMargin,
                    'border-bottom-width': toBorder
                }
            }
        );

        $('wayfinder-caption').setHTML(elements[iToShow].getProperty('title'));
        $('wayfinder-caption').setStyle('color', elements[iToShow].getStyle('border-bottom-color'));

        return results;
    };

    function expandBox (college_colour) {
        var index = 0;
        switch(college_colour) {
            case "orange": index=0;break;
            case "red": index=1;break;
            case "blue": index=2;break;
            case "gold": index=3;break;
            case "purple": index=4;break;
            case "green": index=5;break;
        }
        growEffect.options.duration = speed;
        growEffect.start(growVals(index, $$('li.item'), minW, maxW, minH, maxH));
        captionEffect.start(1);
    }

    $$('li.item a').each(function(el, index){
        el.addEvent('mouseover', function(){
            growEffect.options.duration = speed;
            growEffect.start(growVals(index, $$('li.item'), minW, maxW, minH, maxH));
            captionEffect.start(1);
        })
    });

    function shrinkVals(iToShow, elements, minW, minH) {
        var results = {};
        elements.each(
            function(e, i){
                results[i] = {
                    'width': minW,
                    'height': minH,
                    'margin-top': 0,
                    'border-bottom-width': borderS
                }
            }
        );
        return results;
    };

    $$('li.item a').each(function(el, index){
        el.addEvent('mouseout', function(){
            growEffect.options.duration = speed/2;
            growEffect.start(shrinkVals(index, $$('li.item'), minW, minH));
            captionEffect.start(0);
        })
    });
        
});
