var BuilderProfileBehavior = Class.create();
BuilderProfileBehavior.Load = function() {
    OS.RegisterBehaviour(BuilderProfileBehavior.Rules);
}
BuilderProfileBehavior.BaseCss = '';
BuilderProfileBehavior.Rules = {
    '#UI': function(element) {
        BuilderProfileBehavior.BaseCss = element.className;
        BuilderProfileBehavior.GetAllSections();
        Application.Ready = true;
    },
    '#Nav_RealEstate .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)) {
                BuilderProfileBehavior.SwitchAmenity(sId);
                Application.SelectNav(element);
            }
        });
    }
};

BuilderProfileBehavior.Switched = false;
BuilderProfileBehavior.CurrentId = null;
BuilderProfileBehavior.SwitchAmenity = function(id) {
    var sHash = id;
    if (!id || id.length == 0) id = 'Builders';

    $('UI').className = BuilderProfileBehavior.BaseCss;

    $$('#Dl_BuilderProfile .item').each(function(item) {

        if (item.id == 'Di_' + id) {
            BuilderProfileBehavior.CurrentId = id;
            BuilderProfileBehavior.Switched = true;
            Element.show(item);
            Element.addClassName('UI', 'profile' + id);
            if (sHash && sHash.length > 0) Application.SetHash(sHash);
        } else {
            Element.hide(item);
        }

    });
    _OnResize();
};

BuilderProfileBehavior.SectionsLoaded = false;
BuilderProfileBehavior.GetAllSections = function() {
BuilderProfileBehavior.SectionsLoaded = true;
    new Ajax.Request('webservices/content/BuilderProfiles.aspx', {
        method: 'get',
        parameters: {},
        onFailure: function() {
            alert('Could not load additional sections.  Please try again later.');
            BuilderProfileBehavior.SectionsLoaded = false;
        },
        onSuccess: function(transport, json) {
            var sResponse = transport.responseText || "No response text";
            $('Cnt_Generic').innerHTML = sResponse;
            if (BuilderProfileBehavior.Switched) {
                var sReloadId = BuilderProfileBehavior.CurrentId;
                BuilderProfileBehavior.CurrentId = null;
                BuilderProfileBehavior.SwitchAmenity(sReloadId);
            }
            _OnResize();
        }
    });
}


BuilderProfileBehavior.Load();

