/** Cufon Font Replacements **/
Cufon.replace('h1', { hover:true });
Cufon.replace('h2', { hover:true });
Cufon.replace('h3');
Cufon.replace('h4');
Cufon.replace('h5');
Cufon.replace('ul#menu a');
Cufon.replace('.Miso');


gravitywell = {

    currentAd : 0,
    numAds    : 0,


    /**
     * Init functions. Run on jQuery.domReady
     *
     */
    init: function()
    {
        // Tooltips
        $(".gwtip[title]").tooltip({ tip: '#gwtip', effect: 'slide'});

        // Lavalamp
        $("#menu").lavaLamp({speed: 200});

        // Create all the events
        gravitywell.applyEvents();

        // Apply services menu rollovers
        gravitywell.applyServiceStyles();

        gravitywell.homepageAds();
    },


    applyEvents: function()
    {
        // Apply our flowplayer(s)
        $('a.video').each(function() {
            id              = $(this).attr('id');
            autoPlay        = $(this).hasClass('autoplay') ? true : false;
            autoBuffering   = $(this).hasClass('buffer') ? true : false;

            // Apply flowplayer
            flowplayer(id, '/themes/gravitywell/flash/flowplayer.swf', {
                clip: {
                    autoPlay: autoPlay,
                    autoBuffering: autoBuffering
                },
                playlist: [
                    {
                        url: $(this).attr('href')
                    }
                ],
                plugins: {
                    controls: {
                        url: '/themes/arcadia/flowplayer/flowplayer.controls.swf',
                        playlist: false,
                        backgroundGradient: 'low',
                        tooltips: {
                            buttons: true,
                            fullscreen: 'Enter Fullscreen Mode'
                        },
                        autoHide: false,
                        height: '24px',
                        timeFontSize: 9,
                        volume: false,
                        mute: false
                    }
                }
            });
        });
    },


    homepageAds: function()
    {
        gravitywell.numAds = $('.homepageAdvert').length;
        gravitywell.currentAd = Math.floor(Math.random() * gravitywell.numAds) + 1;
        gravitywell.currentAd = 4;
        $('.homepageAdvert[rel="' + gravitywell.currentAd + '"]').show();

        setInterval(function() {
            gravitywell.rotateAds();
        }, 6000);
    },

    rotateAds: function()
    {
        oldAdEl = $('.homepageAdvert[rel="' + gravitywell.currentAd + '"]');

        // At the end?
        if(gravitywell.currentAd >= gravitywell.numAds) {
            gravitywell.currentAd = 1;
        }
        else {
            gravitywell.currentAd = gravitywell.currentAd + 1;
        }

        newAdEl = $('.homepageAdvert[rel="' + gravitywell.currentAd + '"]');


        oldAdEl.fadeOut(500);
        newAdEl.fadeIn(500);

    },


    applyServiceStyles: function()
    {
        // Activate the first one
        $('#servicesImage img:first').show();
        $('#servicesList li:first').addClass('selected');

        // Apply hovers
        $('#servicesList li').hover(function(){
            // Hide all images
            $('#servicesImage img').hide();
            $('#servicesList li').removeClass('selected');

            $(this).addClass('selected');

            // Show the correct one
            $('#' + $(this).attr('id') + '_image').show();
        });
    }
}


/**
 * Jquery dom.ready event
 *
 */
$(function(){
    gravitywell.init();
});

