// Utilizing MooTools Library http://www.mootools.net

// Custom event handler to prevent conflict between libraries using window.addEvent 
var AC = {
    addEvent: function(el, type, fn) {
        if (el.attachEvent) {
            el['e' + type + fn] = fn;
            el[type + fn] = function() { el['e' + type + fn](window.event); }
            el.attachEvent('on' + type, el[type + fn]);
        } else {
            el.addEventListener(type, fn, false);
        }
    },
    removeEvent: function(el, type, fn) {
        if (el.detachEvent) {
            el.detachEvent('on' + type, el[type + fn]);
            el[type + fn] = null;
        } else {
            el.removeEventListener(type, fn, false);
        }
    }
};

AC.addEvent(window, 'load', setup);

function setup() {

    if ($chk($('AC-PhotoList'))) { var PhotoThumb = new ACThumbnailer('AC-PhotoList', 'AC-PhotoThumbs', 'AC-PhotoImage', 'AC-DetailBody'); }

    if ($$('.expanderCt').length > 0) { var expander = new ACExpander(); }

    var accordion = new Accordion('div.toggleHead', 'div.toggleBody', { opacity: false, show: -1, alwaysHide: true });

    var accordionAthMens = new Accordion('div.toggleHeadMens', 'div.toggleBodyMens', { opacity: false, show: 0, alwaysHide: true, display: 1, onActive: function(tog) { tog.addClass('selected'); }, onBackground: function(tog) { tog.removeClass('selected'); } });
    var accordionAthWomens = new Accordion('div.toggleHeadWomens', 'div.toggleBodyWomens', { opacity: false, show: 0, display: 1, alwaysHide: true, onActive: function(tog) { tog.addClass('selected'); }, onBackground: function(tog) { tog.removeClass('selected'); } });


    var accordionAthMensClosed = new Accordion('div.toggleHeadMensClosed', 'div.toggleBodyMensClosed', { opacity: false, show: -1, alwaysHide: true, onActive: function(tog) { tog.addClass('selected'); }, onBackground: function(tog) { tog.removeClass('selected'); } });

    var accordionAthWomensClosed = new Accordion('div.toggleHeadWomensClosed', 'div.toggleBodyWomensClosed', { opacity: false, show: -1, alwaysHide: true, onActive: function(tog) { tog.addClass('selected'); }, onBackground: function(tog) { tog.removeClass('selected'); } });

    if ($chk($$('.programStaticLinks')[0])) {
        if ($chk($$('#navPage.parentNav')[0])) {
            $$('#navPage.parentNav').setStyle('border-bottom', '0px');
            $$('.programStaticLinks').setStyle('border-bottom', '8px solid #fff');
            $$('#navPage.parentNav').setStyle('background', '#6B6B6B url()');
            $$('.programStaticLinks').setStyle('background', '#6B6B6B url(../images/sitewide/nav_parent_BG.gif) no-repeat scroll 0 100%');
        }
    }



}

var ACExpander = new Class({
    Implements: Options,
    options: {
        container: '.expanderCt',
        expander: '.expander',
        control: '.expanderCtrl'
    },
    initialize: function(options) {
        this.setOptions(options);
        $$(this.options.expander).set('slide', {
            duration: 600,
            transition: Fx.Transitions.Sine.easeIn
        });
        $$(this.options.expander).slide('hide');
        $$(this.options.expander).setStyles({ height: 'auto', overflow: 'visible' })
        $$(this.options.control).each(function(control) {
            control.addEvent('click', function(e) {
                e.stop();
                control.getParent(this.options.container).getElement(this.options.expander).slide('toggle');
                if ($chk(control.get('alt'))) {
                    var tmp = control.get('alt');
                    control.set('alt', control.get('text'));
                    control.set('text', tmp);
                }
                control.getParent(this.options.container).getElements(this.options.control).toggleClass('opened');
            } .bind(this));
        } .bind(this));
    }
});
