/*
title: BeKK Top Navigation
author: Isaac Chellin
company: Bose Corporation
requires: scriptaculous 1.7.0, 1.5.0
last updated: 8/10/2007
*/

var topNav = {

	tn: "", 
	mb: "",
	t1: "",
	t2: "",
	t3: "",
	t4: "",
	dd: "",
	di: "",
	t1_content: "",
	t2_content: "",
	t3_content: "",
	t4_content: "",
	t1_news_content: "",
	t2_news_content: "",
	t3_news_content: "",
	t4_news_content: "",
	t1_off: new Image(),
	t2_off: new Image(),
	t3_off: new Image(),
	t4_off: new Image(),
	t1_roll: new Image(),
	t2_roll: new Image(),
	t3_roll: new Image(),
	t4_roll: new Image(),
	visTab: "",
	bindLis: "",

	open: false,

	load: function() {
		
		
		topNav.tn = $('top_nav');
		topNav.mb = $('tn_menu_bar');
		topNav.t1 = $('tn_tab_one');
		topNav.t2 = $('tn_tab_two');
		topNav.t3 = $('tn_tab_three');
		topNav.t4 = $('tn_tab_four');
 		topNav.dd = $('tn_drop_down');
		topNav.ddm = $('tn_drop_down_messaging');
		topNav.t1_content = $('tn_tab_one_content');
		topNav.t2_content = $('tn_tab_two_content');
		topNav.t3_content = $('tn_tab_three_content');
		topNav.t4_content = $('tn_tab_four_content');
		topNav.t1_news_content = $('tn_tab_1_news');
		topNav.t2_news_content = $('tn_tab_2_news');
		topNav.t3_news_content = $('tn_tab_3_news');
		topNav.t4_news_content = $('tn_tab_4_news');
		topNav.t1_off.src = topNav.t1.src;
		topNav.t2_off.src = topNav.t2.src;
		topNav.t3_off.src = topNav.t3.src;
		topNav.t4_off.src = topNav.t4.src;
		topNav.t1_roll.src ="/assets/images/js/library/widgets/top_nav/top_nav_consumer_select.gif";
		topNav.t2_roll.src ="/assets/images/js/library/widgets/top_nav/top_nav_professional_select.gif";
		topNav.t3_roll.src ="/assets/images/js/library/widgets/top_nav/top_nav_auto_select.gif";
		topNav.t4_roll.src ="/assets/images/js/library/widgets/top_nav/top_nav_about_select.gif";
		
		topNav.dd.setStyle({visibility: 'visible'});
		topNav.dd.hide(); 


		Event.observe(topNav.t1,'mouseover', function () { 

				topNav.clearTabs();
				topNav.t1.src = topNav.t1_roll.src;
				if (topNav.visTab != 1){
					topNav.showDropDown(topNav.t1_content,topNav.t1_news_content);
					topNav.visTab = 1;
				}
		});

		Event.observe(topNav.t2,'mouseover', function () { 
				
				topNav.clearTabs();
				topNav.t2.src = topNav.t2_roll.src;
				if (topNav.visTab != 2){
					topNav.showDropDown(topNav.t2_content,topNav.t2_news_content);
					topNav.visTab = 2;
				}
		});

		Event.observe(topNav.t3,'mouseover', function () { 
			
				topNav.clearTabs();
				topNav.t3.src = topNav.t3_roll.src;
				if (topNav.visTab != 3){
					topNav.showDropDown(topNav.t3_content,topNav.t3_news_content);
					topNav.visTab = 3;
				}
			
		});

		Event.observe(topNav.t4,'mouseover', function () { 
			
				topNav.clearTabs();
				topNav.t4.src = topNav.t4_roll.src;
				if (topNav.visTab != 4){
					topNav.showDropDown(topNav.t4_content,topNav.t4_news_content);
					topNav.visTab = 4;
				}
			
		});

		topNav.setMouseOverListener(); 
		
	},

	showDropDown: function(t_content,n_content) {
		topNav.dd.innerHTML = "";
		topNav.dd.innerHTML = t_content.innerHTML+n_content.innerHTML;
		//topNav.dd.immediateDescendants().each( function(elem) { elem.hide();});
		//topNav.dd.getElementsByClassName('hr').each ( function (item){ item.innerHTML = "<img />"; item.down().src = topNav.hr.src;});
		//topNav.dd.getElementsByClassName('vr').each ( function (item){ item.innerHTML = "<img />"; item.down().src = topNav.vr.src;});
		topNav.dd.show();
		//topNav.dd.immediateDescendants().each( function(elem) { Effect.Appear(elem, {duration: 0.3});});
		//topNav.dd.immediateDescendants().each( function(elem) { elem.show();});
	},

	closeDropDown: function() {
		topNav.clearTabs();
		topNav.dd.innerHTML = "";
		topNav.dd.hide();
		topNav.visTab = "";
	},
	
	clearTabs: function() {
		topNav.t1.src = topNav.t1_off.src;
		topNav.t2.src = topNav.t2_off.src;
		topNav.t3.src = topNav.t3_off.src;
		topNav.t4.src = topNav.t4_off.src;
	},


	setMouseOverListener: function() {

		this.mouseOverMovement = function () {
					Event.stopObserving(topNav.mb,'mouseover', topNav.bindOverLis);
					topNav.setMouseOutListener();
		}

		topNav.bindOverLis = topNav.mouseOverMovement.bindAsEventListener(topNav.mouseOverMovement);
		Event.observe(topNav.mb,'mouseover', topNav.bindOverLis);
	},

	setMouseOutListener: function() {


		this.mouseOutMBMovement = function (ev1) {
				
				var ey = Event.pointerY(ev1);
				var ex = Event.pointerX(ev1);
				if(!Position.within(topNav.dd,ex,ey+2) ){
					topNav.closeDropDown();
					Event.stopObserving(topNav.mb,'mouseout',topNav.bindMBOutLis);
					Event.stopObserving(topNav.dd,'mouseout',topNav.bindDDOutLis);
					topNav.setMouseOverListener();
				}
		}

		this.mouseOutDDMovement = function (ev1) {
				
				var ey = Event.pointerY(ev1);
				var ex = Event.pointerX(ev1);
					
				if(!Position.within(topNav.dd,ex-2,ey) ){
					topNav.closeDropDown();
					Event.stopObserving(topNav.mb,'mouseout',topNav.bindMBOutLis);
					Event.stopObserving(topNav.dd,'mouseout',topNav.bindDDOutLis);
					topNav.setMouseOverListener();
				}
		}

		topNav.bindMBOutLis = topNav.mouseOutMBMovement.bindAsEventListener(topNav.mouseOutMBMovement);
		topNav.bindDDOutLis = topNav.mouseOutDDMovement.bindAsEventListener(topNav.mouseOutDDMovement);
		Event.observe(topNav.mb,'mouseout', topNav.bindMBOutLis);
		Event.observe(topNav.dd,'mouseout', topNav.bindDDOutLis);


		

	},

	counter: 0
	
}

new PeriodicalExecuter( function(tn_pe) {  

	if ($('tn_tab_four_content')){	
		tn_pe.stop(); 
		topNav.load();
	}

}, 1); 

