Array.implement({
	
	invoke: function(fn, args){
		var result = [];
			
		
		for (var i = 0, l = this.length; i < l; i++){
			if(this[i] && this[i][fn])
				result.push(args ? this[i][fn].pass(args, this[i])() : this[i][fn]());
		}
		return result;
	}
	
});


window.addEvent('domready', function(){
	var els = $$('.nav_sub');
	
	var myArray = [new Fx.Tween(els[0], {link: 'cancel'})];

	var i = false;
	$('tweenOpacity').addEvents({
        'mouseenter': function() {myArray.invoke('start', ['opacity','.9']);},
        'mouseleave': function() {myArray.invoke('start', ['opacity','0']);},
		'click':      function() {myArray.invoke('start', ['opacity','0']);}
	});

	myArray.each(function(item, index) {if(item){item.set('opacity','0');}});

	$$('.nav').set('opacity','.9');

	if($$('.box2 img').length >0) {
		var V2 = new viewer($$('.box2 .Photo'),{
		mode: 'alpha',
		interval: 1000,
		duration: 10000
		});
		var V3 = new viewer2($$('.brownboxtext'),{
		mode: 'alpha',
		interval: 1000,
		duration: 10000,
		otherEl: V2
		});
		$$('.brownbox').set('opacity','.9');
	}
	if($$('.box3 .slide').length >0) {
		var V4 = new viewer($$('.box3 .slide'),{
		mode: 'alpha',
		interval: 6000,
		duration: 10000
		});
		V4.play(true);
		$$('.brownboxtext').set('opacity','.9');
	}
	if($$('.brownboxlinkl').length > 0) {
		$each($$('.brownboxlinkl'), function(item, index){
    		
			item.addEvent('click', V3.previous.bind(V3));
		});	
	}
	if($$('.brownboxlinkr').length > 0) {
		$each($$('.brownboxlinkr'), function(item, index){
    		
			item.addEvent('click', V3.next.bind(V3));
		});	
	}

	/* hide UL unless moused over 
		to fade or not to fade...
	*/
	
	var subNavULs = els.getElements('td.nav_sub_cont');

	subNavULs.each(function(item, index) {
		item.getElement('ul').set('opacity', '0'); // hide for initial page load
		//item.getElement('ul').get('fade', { duration: 500, transition: 'linear' })
		item.addEvents({
			'mouseenter': function() {this.getElement('ul').setStyle('opacity','1');},
			'mouseleave': function() {this.getElement('ul').setStyle('opacity','0');}
			//'mouseenter': function() {this.getElement('ul').fade('opacity','1');},
			//'mouseleave': function() {this.getElement('ul').fade('opacity','0');}
	
		});
	});

	/* add fade to the 'parent' link */

	var myArray2 = [$('nav_lnk0'), $('nav_lnk1'), $('nav_lnk2'), $('nav_lnk3')];

	myArray2.each(function(item, index) {
		if (item) {
			item.addEvent('mouseenter', function(e) {
				//$('nav_sub_ul'+index).fade('opacity','1');
				$('nav_sub_ul'+index).setStyle('opacity','1');
			});
			item.addEvent('mouseleave', function(e) {
				//$('nav_sub_ul'+index).fade('opacity','0');
				$('nav_sub_ul'+index).setStyle('opacity','0');
			});
		}
	});


});