//
//	bpm_menu.js
//	Copyright (C) 2009 Digital Abacus Corporation. All Rights Reserved.
//

var dShowing="";

function show(w) {
	var i=w.substr(1);
	if(dShowing!="") {
		if(w!=dShowing) {
			var ii=dShowing.substr(1);
			if(!(topmenu.onlycurrent==1 && ii==wActive)) {
				document.getElementById(dShowing).className="hiddenm";
				document.getElementById("img"+ii+"img").src=(ii==wActive?topmenu.menu[ii].image.selected.up:topmenu.menu[ii].image.up);
			}
		}
	}
	if(w!=dShowing) {
			document.getElementById(w).className="showingm";
			if(!(topmenu.onlycurrent==1 && i!=wActive)) {
				document.getElementById("bar"+i+"s0bar").style.marginLeft=topmenu.menu[i].left+"px";
			}
			document.getElementById(w).style.backgroundImage="url("+(i==wActive?topmenu.menu[i].background.selected:topmenu.menu[i].background.normal)+")";
			document.getElementById("img"+i+"img").src=(i==wActive?topmenu.menu[i].image.selected.over:topmenu.menu[i].image.over);
	}
	dShowing=w;
}

function showMenu() {
	show('d'+wActive);
}

function isMouseLeaveOrEnter(e, handler,which) { 
//alert("isMouseLeaveOrEnter");
	if (e.type != 'mouseout' && e.type != 'mouseover') return false; 
	var reltg = e.relatedTarget ? e.relatedTarget : e.type == 'mouseout' ? e.toElement : e.fromElement; 
	while (reltg && reltg != handler) reltg = reltg.parentNode; 
	if(reltg!=handler) {
		//alert("out of "+handler);
		MM_swapImgRestore();
		if(which=='d') show(which+wActive);
	}
	return (reltg != handler); 
}

function defined(x) {
	return typeof(x)!="undefined";
}

var wActive=-1;		// main menu currently active
var sActive=-1;		// submenu currently active

function writeMenu(active,subactive) {
	wActive=active;
	sActive=subactive;
	var output="";
	for(ti=0;ti<topmenu.menu.length;++ti) {
		var o=topmenu.menu[ti];
		if((!defined(topmenu.nodividers) || topmenu.nodividers != 1) && (ti>0 || (ti==0 && topmenu.nofirstdivider && topmenu.nofirstdivider!=1))) output+='<img src="'+topmenu.divider+'"/>';
		if(o.url) {
			output+='<div id="d'+ti+'menu" name="d'+ti+'menu" class="menu" onmouseout="isMouseLeaveOrEnter(event,this,\'d\')" onmouseover="document.img'+ti+'img.src=\''+(ti==wActive?o.image.selected.over:o.image.over)+'\';show(\'d'+ti+'\')"><a href="'+o.url+'"><img id="img'+ti+'img" name="img'+ti+'img" src="'+(ti==wActive?o.image.selected.up:o.image.up)+'" alt="'+o.alt+'" border="0"></a>';
		} else {
			output+='<img id="img'+ti+'img" name="img'+ti+'img" src="'+o.image.up+'" alt="'+o.alt+'"/>';			
		}
		if(o.center==1) output+='<div class="'+(ti==wActive?"showingm":"hiddenm")+'" id="d'+ti+'" align="center">';
		else output+='<div class="'+(ti==wActive?"showingm":"hiddenm")+'" id="d'+ti+'">';
		if(topmenu.onlycurrent==1 && ti!=wActive) {
			// do not show
		} else if(defined(o.caption) && (topmenu.onlycurrent==1 && ti==wActive || topmenu.onlycurrent!=1)) {
			output+='<img id="bar'+ti+'s'+0+'bar" src="'+(ti==wActive?o.caption.selected:o.caption.normal)+'"/>';
		} else {
			for(tj=0;tj<o.menu.length;++tj) {
				p=o.menu[tj];
				output+='<img id="bar'+ti+'s'+tj+'bar" src="'+o.divider+'" ';
				if(tj==0 && defined(o.nofirstdivider) && o.nofirstdivider==1) {
					output+='" width="0"';
				}				
				output+='/>';
				if(ti==wActive) {
					if(p.url) {
						output+='<a href="'+p.url+'" onmouseout="document.img'+ti+'s'+tj+'img.src=\''+(tj==sActive?p.image.selected.over:p.image.selected.up)+'\'" onmouseover="document.img'+ti+'s'+tj+'img.src=\''+p.image.selected.over+'\'"><img src="'+(tj==sActive?p.image.selected.over:p.image.selected.up)+'" alt="'+p.alt+'" name="img'+ti+'s'+tj+'img" border="0" id="img'+ti+'s'+tj+'img"/></a>';
					} else {
						output+='<img id="img'+ti+'s'+tj+'img" name="img'+ti+'s'+tj+'img" src="'+(tj==sActive?p.image.selected.over:p.image.selected.up)+'" alt="'+p.alt+'"/>';				
					}				
				} else {
					if(p.url) {
						output+='<a href="'+p.url+'" onmouseout="document.img'+ti+'s'+tj+'img.src=\''+p.image.up+'\'" onmouseover="document.img'+ti+'s'+tj+'img.src=\''+p.image.over+'\'"><img src="'+p.image.up+'" alt="'+p.alt+'" name="img'+ti+'s'+tj+'img" border="0" id="img'+ti+'s'+tj+'img"/></a>';
					} else {
						output+='<img id="img'+ti+'s'+tj+'img" name="img'+ti+'s'+tj+'img" src="'+p.image.up+'" alt="'+p.alt+'">';				
					}
				}
			}
			output+='<img src="'+o.divider+'"';
			if(defined(o.nolastdivider) && o.nolastdivider==1) output+=' width="0"';
			output+='/>';
		}
		output+="</div></div>";
	}
	if((!defined(topmenu.nodividers) || topmenu.nodividers!=1) && (!defined(topmenu.nolastdivider) || topmenu.nolastdivider!=1)) output+='<img src="'+topmenu.divider+'"/>';
//	alert(output);
	document.write(output);
	document.getElementById("d"+active).style.backgroundImage="url("+(topmenu.menu[active].background.selected)+")";
}

function preload_images() {
	var d=document; 
	if(d.images){ 
		if(!d.MM_p) d.MM_p=new Array();
		var i,j=d.MM_p.length;
		for(i=0;i<topmenu.length;++i) {
			d.MM_p[j]=new Image;d.MM_p[j++].src=topmenu.divider;
			d.MM_p[j]=new Image;d.MM_p[j++].src=topmenu.background;
			d.MM_p[j]=new Image;d.MM_p[j++].src=topmenu.menu[i].image.up;
			d.MM_p[j]=new Image;d.MM_p[j++].src=topmenu.menu[i].image.over;
			d.MM_p[j]=new Image;d.MM_p[j++].src=topmenu.menu[i].image.selected.up;
			d.MM_p[j]=new Image;d.MM_p[j++].src=topmenu.menu[i].image.selected.over;
			d.MM_p[j]=new Image;d.MM_p[j++].src=topmenu.menu[i].divider;
			for(k=0;k<menu[i].length;++k) {
				d.MM_p[j]=new Image;d.MM_p[j++].src=topmenu.menu[i].menu[k].image.up;
				d.MM_p[j]=new Image;d.MM_p[j++].src=topmenu.menu[i].menu[k].image.over;
				d.MM_p[j]=new Image;d.MM_p[j++].src=topmenu.menu[i].menu[k].image.selected.up;
				d.MM_p[j]=new Image;d.MM_p[j++].src=topmenu.menu[i].menu[k].image.selected.over;
			}
		}
	}
}

