var current_submenu = null; // currently displayed sub menu DOM object
var current_section = null; // string of current section based on body id
var main_menus = new Array(); // collection of main menus with sub menus DOM objects
var sub_menus = new Array(); // collection of sub menu DOM objects

function getMenus(){
	if (!isDOM()) { return; }
	sub_nav = document.getElementById('navSub').childNodes;
	for (i=0; i < sub_nav.length; i++){
		if (sub_nav[i].nodeName == 'DIV'){
			sub_menus.push(sub_nav[i]);
		}	
	}
	main_nav = document.getElementById('navMain').childNodes;
	for (i=0; i < main_nav.length; i++){
		if (main_nav[i].nodeName == 'LI'){
			menu = new Object();
			menu.obj = main_nav[i];
			for (k=0; k < sub_menus.length; k++){
				my_sub_nav = sub_menus[k].id.split('Sub');
				my_main_nav = main_nav[i].id.split('Main');
				if (my_sub_nav[0] == my_main_nav[0]) menu.sub = true;
			}
			main_menus.push(menu);
		}	
	}
}

function setSectionID(){
	my_body = document.getElementsByTagName('BODY');
	my_body = my_body[0];
	my_section = (!my_body.id) ? 'blank' : my_body.id;
	current_section = my_section;
	current_submenu = getObj(my_section + 'Sub');
}

function initNavigation(){
	setSectionID();
	getMenus();
	for (i=0; i < main_menus.length; i++){
		if (main_menus[i].sub){
			main_menus[i].obj.onmouseover = function(){
				my_submenu = this.id.replace('Main','Sub');
				menuShow(getObj(my_submenu));		
			}
		}
		else {
			main_menus[i].obj.onmouseover = function(){
				menuHide(current_submenu);
				menuShow(getObj('blankSub'));
			}
			main_menus[i].obj.onmouseout = function(){
				menuShow(getObj(current_section + 'Sub'));
			
			}
		}
	}
	main_navigation = getObj('navMain').childNodes;
	
	for (i=0; i < main_navigation.length; i++){
		if (main_navigation[i].nodeName == 'LI'){
			main_navigation[i].onmouseout = function(){
				menuShow(getObj(current_section + 'Sub'));
			}
		}
	}
	// generate debug alert info
	/*
        var debug="";
	for (i=0; i < main_menus.length; i++){
		myid = main_menus[i].obj.id;
		mysub = main_menus[i].sub;
		debug += myid + ': ' + mysub + '\n';	
	} */ 
	// show debug alert info
	/* alert(debug); */
}

function menuShow(obj){
	// hide current visble submenu
	current_submenu.style.display = 'none';
	
	// show the requested submenu
	obj.style.display = 'block';
			
	// attach onmouseout even to return to default menu for section
	obj.onmouseout = function(){
		menuShow(getObj(current_section + 'Sub'));
	}
	my_menu_items = obj.getElementsByTagName('A');
	for (i=0; i < my_menu_items.length; i++){
		my_menu_items[i].onmouseover = function(){
			menuShow(obj);	
		}
	}

	// change the current_submenu variable to reflect newly selected menu
	current_submenu = obj;
}

function menuHide(obj){
	obj.style.display = 'none';
}

function getObj(obj){
	return document.getElementById(obj);
}

function isDOM(){ // returns true for DOM compliance
	return document.getElementById && document.getElementsByTagName;
}

function init(){
	initNavigation();	
}

function toggleOptions(){
	Element.toggle('optionsIncluded');
	Element.toggle('optionsOptional'); 

	optAdditional = getObj('optionsLinkAdditional');
	optIncluded = getObj('optionsLinkIncluded');

	optAdditional.className = (optAdditional.className == 'optionsOn') ? 'options' : 'optionsOn';
	optIncluded.className = (optIncluded.className == 'optionsOn') ? 'options' : 'optionsOn';	
}

//hasClassName(element, className)

touts_brew = new Array(
	'info2go_ringtones',
	'info2go_utext',
	'info2go_brew_downloads',
	'info2go_image_alerts',
	'info2go_pictures2go',
	'info2go_mobile_web'
	);

	
touts_java = new Array(
	'info2go_ringtones',
	'info2go_mail2go',
	'info2go_utext',
//	'info2go_java_downloads',
	'info2go_mobile_web',
	'info2go_pictures2go',
	'info2go_image_alerts'
	);
/*
touts_java = new Array(
	'info2go_mail2go',
	'info2go_utext',
	'info2go_ringtones',
	'info2go_image_alerts',
	'info2go_pictures2go',
	'info2go_mobile_web'
	);
*/
	

touts_brew_img = new Array();
touts_default_img = new Array();

function showTout(id,which){
	if (which == 'brew'){
		active_image = id + '_img';
		// alert(active_image);
		for (i=0; i < touts_brew.length; i++){
			obj = document.getElementById(touts_brew[i]);
			obj.style.display = 'none';
		}
		obj = document.getElementById(id);
		obj.style.display = 'block';
		for (i=0; i < touts_brew.length; i++){
			img_name = touts_brew[i] + '_img';
			img_src = '/common/images/bu-lowertout_' + touts_brew[i] + '_off.gif';
			document[img_name].src = img_src;
		}
		document[active_image].src = '/common/images/bu-lowertout_' + id + '_on.gif';
	}	
	if (which == 'java'){
		active_image = id + '_img';
		// alert(active_image);
		for (i=0; i < touts_java.length; i++){
			obj = document.getElementById(touts_java[i]);
			obj.style.display = 'none';
		}
		obj = document.getElementById(id);
		obj.style.display = 'block';
		for (i=0; i < touts_java.length; i++){
			img_name = touts_java[i] + '_img';
			img_src = '/common/images/bu-lowertout_' + touts_java[i] + '_off.gif';
			document[img_name].src = img_src;
		}
		document[active_image].src = '/common/images/bu-lowertout_' + id + '_on.gif';
	}
}


function initTouts(which){
	if (which == 'brew'){
		for (i=0; i < touts_brew.length; i++){
			obj = document.getElementById(touts_brew[i]);
			obj.style.display = 'none';
			obj = document.getElementById('info2go_ringtones');
			obj.style.display = 'block';
		}
	}
	if (which == 'java'){
		for (i=0; i < touts_java.length; i++){
			obj = document.getElementById(touts_java[i]);
			obj.style.display = 'none';
			obj = document.getElementById('info2go_ringtones');
			obj.style.display = 'block';
		}
	}
}


