var SportingBehavior = Class.create();
SportingBehavior.Load = function() {
    OS.RegisterBehaviour(SportingBehavior.Rules);
}
SportingBehavior.BaseCss = '';
SportingBehavior.Rules = {
    '#UI': function(element) {
        SportingBehavior.BaseCss = element.className;
        SportingBehavior.GetAllSections();
        Application.Ready = true;
    },
    '#Nav_Lifestyle .navigation .navItem': function(element) {
        Application.SetRollover(element);
        Event.observe(element, 'click', function() {
            var sId = element.id.substring(3);
            if (sId && sId.length > 0 && $('Di_' + sId)) {
                SportingBehavior.SwitchAmenity(sId);
                Application.SelectNav(element);
            }
        });
    }
};

SportingBehavior.FlvKeys = {
    SportingAmenities: 'sporting-amenities', Lodge: 'lodge', Clays: 'sporting-clays', Hunt: 'hunting', BoatHouse: 'boat-house', 
    Stables: 'stables', Fitness: 'swim', Cabin: 'cabin'
}

SportingBehavior.CurrentId = null;
SportingBehavior.Switched = false;
SportingBehavior.SwitchAmenity = function(id) {
    var oPlayer = Application.GetFlashObject('Media_Canvas');
    if (!oPlayer || typeof (oPlayer.playVideo) == 'undefined') {
        Application.SetHash(id);
        setTimeout(function() { SportingBehavior.SwitchAmenity(id); }, 500);
        return;
    }

    var sHash = id;
    if (!id || id.length == 0) id = 'SportingAmenities';

    $('UI').className = SportingBehavior.BaseCss;

    $$('#Dl_SportingAmenities .item').each(function(item) {

        if (item.id == 'Di_' + id) {
            $('P_GetStarted').innerHTML = '';
            var eRelated = item.down('.related');
            if (eRelated) $('P_GetStarted').innerHTML = eRelated.innerHTML;
            var eRelatedImg = item.down('.relatedImage');
            if (eRelatedImg) $('Img_RelatedGetStarted').src = eRelatedImg.src;

            Element.show(item);
            Element.addClassName('UI', 'amenity' + id);

            if (SportingBehavior.FlvKeys[id]) {
                if (SportingBehavior.CurrentId != id) AppBehavior.StopVideos();
                SportingBehavior.CurrentId = id;
                SportingBehavior.Switched = true;
                oPlayer.playVideo('sportingAmenities/' + SportingBehavior.FlvKeys[id]);
                if (sHash && sHash.length > 0) Application.SetHash(sHash);
            }


        } else {
            Element.hide(item);
        }

    });
    _OnResize();


};

SportingBehavior.SectionsLoaded = false;
SportingBehavior.GetAllSections = function() {
    SportingBehavior.SectionsLoaded = true;
    new Ajax.Request('webservices/content/SportingAmenities.aspx', {
        method: 'get',
        parameters: {},
        onFailure: function() {
            alert('Could not load additional sections.  Please try again later.');
            SportingBehavior.SectionsLoaded = false;
        },
        onSuccess: function(transport, json) {
            var sResponse = transport.responseText || "No response text";
            $('Cnt_Generic').innerHTML = sResponse;
            if (SportingBehavior.Switched) {
                var sReloadId = SportingBehavior.CurrentId;
                SportingBehavior.CurrentId = null;
                SportingBehavior.SwitchAmenity(sReloadId);
            }
            _OnResize();
        }
    });
}

SportingBehavior.Load();

