/* for the BUILDING page */


var FCESlideShow = {
    interval : 4,                                   // # seconds between slides
    btnStopBG : 'url(img/btn.stop_slideshow.gif)',  // property for background image when slideshow is in progress.

    // private:
    ss_timeout : null,
    ss_pos : 1,
    btnDefaultBG : null,
    ss_count : 0,
    did_init : false,
    is_showing : true,

    init: function() {
        this.btnDefaultBG = $('#btnViewSlideShow').css('background-image');
        this.ss_count = $('#buildingPanel_amenities').children().length;
        this.menuItems = $('#buildingPanel_amenities').children();

        this.menuItems.bind("click", function(e) { 
                FCESlideShow.stop();
                FCESlideShow.select(this);
                FCEVirtualTour.disable();
                e.preventDefault();
                return true;
        });

        this.did_init = true;
    },

    begin: function() {
        if (!this.did_init) this.init();

        if (this.ss_timeout) {
            this.stop();
        }
        else {
            FCEVirtualTour.disable();

            var curr = $('#buildingPanel_amenities').children('.sel');
            if (curr) {
                this.ss_pos = (curr.attr('id').split('_')[1] * 1);
            }
            this.next();
            $('#btnViewSlideShow').css('background-image', this.btnStopBG);
            $('#btnViewSlideShow').text('Stop slide show');
        }
    },

    next: function() {
        if (this.ss_pos >= this.ss_count) this.ss_pos = 0;
        this.ss_pos += 1;

        this.select();

        this.ss_timeout = window.setTimeout ("FCESlideShow.next()", this.interval * 1000); 
    },

    select: function(elem, suppress_fade) {
        var item = this.ss_pos;
        if (elem) {
            item = $(elem).attr('id').split('_')[1];
            this.ss_pos = item;
        }
        else {
            elem = $('#buildingSSMenuItem_'+this.ss_pos);
        }

        if (!suppress_fade) {
            $('#buildingSSContentView').children("div:visible").hide();
            $('#buildingSSContent_'+item).fadeIn('slow');
        }

        this.clearMenu();
        $(elem).addClass('sel');
        $(elem).blur();
    },

    stop: function() {
        if (this.ss_timeout) {
            window.clearTimeout(this.ss_timeout);
            this.ss_timeout = null;
            $('#btnViewSlideShow').css('background-image', this.btnDefaultBG);
            $('#btnViewSlideShow').text('View slide show');
        }
    },

    clearMenu: function() {
        this.menuItems.removeClass('sel');
    },

    showContent: function() {
        if (this.is_showing) return;
        this.select(false, true);
        $('#buildingSSContentW').show();
        this.is_showing = true;
    },

    hideContent: function() {
        if (!this.is_showing) return;
        this.clearMenu();
        $('#buildingSSContentW').hide();
        this.is_showing = false;
    }

};


var FCEVirtualTour = {
    enabled : false,
    did_init : false,

    init : function() {
        this.btnDefaultBG = $('#buildingBtnVT1').css('background-image');
        this.btnEnabledBG = this.btnDefaultBG.replace(/\.(\w+["')]+?)$/, '.enabled.$1');

        $('#buildingBtnVT1').bind('click', function(e){
                                              FCEVirtualTour.enable(); 
                                              preventDefault();
                                              return true;
                                           });
        this.did_init = true;
    },

    enable : function() {
        if (!this.did_init) this.init();

        if (this.enabled) {
            this.disable();
        }
        else {
            $('#buildingBtnVT1').css('background-image', this.btnEnabledBG);
            $('#buildingVTContentW').show();
            FCESlideShow.stop();
            FCESlideShow.hideContent();
            this.enabled = true;
            $('#btnViewSlideShowShadow').blur();
        }

    },

    disable : function() {
        $('#buildingBtnVT1').css('background-image', this.btnDefaultBG);
        $('#buildingVTContentW').hide();
        FCESlideShow.showContent();
        this.enabled = false;
    }
};


$(document).ready(function(){
     FCESlideShow.init();
     //FCEVirtualTour.init();

     $('#btnViewSlideShow').bind('click', function(e){ 
                                                    FCESlideShow.begin(); 
                                                    e.preventDefault();
                                                    return true;
                                                } );
});


