if (typeof is_acme == "undefined"){var is_acme=false;}
if (typeof onex_dynamic == "undefined"){var onex_dynamic=false;}
if (typeof onex_entitled == "undefined"){var onex_entitled=false;}
if (typeof debug_rolls == "undefined"){var debug_rolls=false;}
if (typeof no_bold == "undefined") {var no_bold = false;}
var d = "10-18-2006"
var onexd_signed_in = false;

var hideElement = null;
var showElement = null;
var lastGroup = null;
var timeCount = 425;
var timerID = null;
var SBB = document.getElementById;  // Standards Based Browser
var NS4 = navigator.appName == 'Netscape' && document.layers != null;
var IE4 = null;
var agt=navigator.userAgent.toLowerCase();

if(document.all) {IE4 = true;}

var cando = (SBB || IE4) && !NS4;

var is_opera = (agt.indexOf("opera") != -1);
var is_opera2 = (agt.indexOf("opera 2") != -1 || agt.indexOf("opera/2") != -1);
var is_opera3 = (agt.indexOf("opera 3") != -1 || agt.indexOf("opera/3") != -1);
var is_opera4 = (agt.indexOf("opera 4") != -1 || agt.indexOf("opera/4") != -1);
var is_opera5 = (agt.indexOf("opera 5") != -1 || agt.indexOf("opera/5") != -1);
var is_opera6 = (agt.indexOf("opera 6") != -1 || agt.indexOf("opera/6") != -1);
var is_opera7 = (agt.indexOf("opera 7") != -1 || agt.indexOf("opera/7") != -1);
var is_opera7up = (is_opera && !is_opera2 && !is_opera3 && !is_opera4 && !is_opera5 && !is_opera6);
var is_opera6dn = (is_opera && (is_opera2 || is_opera3 || is_opera4 || is_opera5 || is_opera6));

var vPos;
var goingUp = false;
var lastVpos = 0;

function Right(fullString, subString){
	if (subString != "" && fullString != "" && fullString.indexOf (subString)> -1) {
		return (fullString.substring (fullString.indexOf(subString) + subString.length, fullString.length));
	} else {
		return (fullString);
	}
}

function setVpos(e) {
	if (window.event) { // IE
		vPos = window.event.clientY + document.body.scrollTop;
	} else if (e) { // Netscape
		if (e.clientY) { // 6.x
			vPos = e.clientY + document.body.scrollTop;
		} else { // 4.x
			vPos = e.y + document.body.scrollTop;
			//y = e.y - window.pageYOffset + window.screenY - 20;
		}
	}
	if (lastVpos > vPos) goingUp = true;
	else goingUp = false;
	lastVpos = vPos;
}

document.onmousemove = setVpos;

define_nav_items();

function hrefGroup(href) {
	var filename = "";
	var filename_frag;
	var lastslash = href.lastIndexOf("/");
	if (lastslash == -1) {
		filename = href;
	} else {
		filename = href.substr(lastslash+1);
	}
	filename_frag = filename.substring(0,3);
	if (filename_frag == "pub") {
		filename_frag = filename.substring(4,7);
	}
	switch (filename_frag) {
	case "ind":
		return "ipw";
		break;
	case "sel":
		return "sel";
		break;
	case "mkt":
		return "mkt";
		break;
	case "pat":
		return "pat";
		break;
	case "col":
		return "col";
		break;
	case "sol":
		return "sol";
		break;
	case "ser":
		return "ser";
		break;
	case "trs":
		return "trs";
		break;
	case "tac":
		return "tac";
		break;
	case "otp":
		return "otp";
		break;
	case "eac":
	case "eve":  // added for Japan
		return "eac";
		break;
	case "nws":
	case "new":
		return "nws";
		break;
	case "mem":
		return "mem";
		break;
	case "cpw":
		return "cpw";
		break;
	case "why":
		return "why";
		break;
	case "ben":
		return "ben";
		break;
	default:
		return filename_frag;
	}
	return "";
}

function nameGroup(name) {
	if (name.indexOf("/sell/")>0) {
		return "sel";
	} else if (name.indexOf("/mkt/")>0) {
		return "mkt";
	// next line MUST occur before /pat/
	} else if (name.indexOf("/pat_sol")>0) {
		return "sol";
	} else if (name.indexOf("/pat/")>0) {
		return "pat";
	} else if (name.indexOf("/support/")>0) {
		return "trs";
	} else if (name.indexOf("/order/")>0) {
		return "otp";
	} else if (name.indexOf("/tac/")>0 || name.indexOf("/tac_")>0) {
		return "tac";
	} else if (name.indexOf("/collaboration")>0) {
		return "col";
	} else if (name.indexOf("/eac/")>0 || name.indexOf("/eac_")>0 || name.indexOf("/events")>0) {
		return "eac";
	} else if (name.indexOf("/news/")>0 || name.indexOf("/nws_")>0) {
		return "nws";
	} else if (name.indexOf("/manage/")>0 || name.indexOf("/pub_mem_index")>0) {
		return "mem";
	} else if (name.indexOf("/services/")>0) {
		return "ser";
	} else if (name.indexOf("/reqs/")>0 || name.indexOf("/forms/")>0) {
		return "frm";
	} else if (name.indexOf("/cpw/")>0 || name.indexOf("/cpw_")>0) {
		return "cpw";
	} else if (name.indexOf("/strategy/")>0 || name.indexOf("/strategies/")>0 || name.indexOf("/pub_strategies")>0) {
		return "str";
	} else if (name.indexOf("/industry")>0) {
		return "ind";
	} else if (name.indexOf("/pub_benefits")>0) {
		return "ben";
	} else if (name.indexOf("/pub_whyjoin")>0) {
		return "why";
	}
	return "";
}

function pw_underlay_on(pwi, new_ht) {
	//alert("new ht: "+new_ht);
	pwi.style.top = boxTop;
	pwi.style.left = "151px";
	pwi.style.width = "237px";
	pwi.style.height = new_ht.toString() + "px";
	pwi.style.zIndex = "9";
	pwi.style.display = "block";
}

function dT(href) { // display topic
	var thisGroup;
	if ((typeof signin_getCookie == "function") && (signin_getCookie("IBM_PW")!="")) {
		onexd_signed_in = true;
	}
	if ((onex_dynamic && onexd_signed_in) || onex_entitled) {
		// use acme URL style:
		thisGroup = nameGroup(href);
	} else {
		// try CMS URL style, then try ACME if it didn't work:
		thisGroup = hrefGroup(href);
		if (thisGroup==""){thisGroup = nameGroup(href);}
	}
	if (debug_rolls){alert("signed in: "+onexd_signed_in+"; onex_dynamic: "+onex_dynamic+"; href="+href+"; group="+thisGroup);}
	if (!cando) { return; }
	tvPos = vPos;
	if (goingUp) tvPos = tvPos - 15;
	boxTop = tvPos + 'px';

	if (SBB) {
		pw_white_if = document.getElementById('pw_whitebox');
		showElement = document.getElementById(thisGroup);
		if (lastGroup != null) {
			hideElement = document.getElementById(lastGroup);
			if (hideElement) {
				hideElement.style.visibility = 'hidden';
				if (pw_white_if) pw_white_if.style.display = "none";
			}
		}
		if (!is_opera6dn && showElement) showElement.style.top = boxTop;
		if (showElement) {
			showElement.style.visibility = 'visible';
			if (pw_white_if) pw_underlay_on(pw_white_if, showElement.offsetHeight);
		}
	}
	else if (IE4) {
		pw_white_if = document.all['pw_whitebox'];
		showElement = document.all[thisGroup];
		if (lastGroup != null) { 
			hideElement = document.all[lastGroup];
			if (hideElement) {
				hideElement.style.visibility = 'hidden';
				if (pw_white_if) pw_white_if.style.display = "none";
			}
		}
		if (showElement) {
			showElement.style.top = boxTop;
			showElement.style.visibility = 'visible';
			if (pw_white_if) pw_underlay_on(pw_white_if, showElement.offsetHeight);
		}
	}
 	lastGroup = thisGroup;
}

function sT() { // start timer
	if (!cando) { return; }
	timerID = setTimeout("resetPage()",timeCount);
}

function resetPage() {
	if (SBB) {
		pw_white_if = document.getElementById('pw_whitebox');
		hideElement = document.getElementById(lastGroup);
		if (hideElement) {
			hideElement.style.visibility = 'hidden';
			if (pw_white_if) pw_white_if.style.display = "none";
		}
	} else if (IE4) {
		pw_white_if = document.all['pw_whitebox'];
		hideElement = document.all[lastGroup];
		if (hideElement) {
			hideElement.style.visibility = 'hidden';
			if (pw_white_if) pw_white_if.style.display = "none";
		}
	}
	lastGroup = null;
}

function hT() { // halt timer
	if (!cando) { return; }
	if (timerID == null) {return; }
	clearTimeout(timerID);
	timerID = null;
}


var url304 = (location.href.indexOf("www-304.ibm.com") > 0);
var jct_str = url304 ? "/jct09002c" : "";

function write_rollover_header(navobject) {
	document.writeln('<table class="rollbkgnd" onMouseOver="hT()" onMouseOut="sT()" width="235" border="0" cellspacing="0" cellpadding="0">');
	document.writeln('<tr><td width="1" valign="top" rowspan="6" bgcolor="black"><img src="//www.ibm.com/i/c.gif" width="1" height="2" alt=""></td>');
	document.writeln('<td valign="top" width="16" bgcolor="black"><img src="//www.ibm.com/i/c.gif" width="1" height="1" alt=""></td>');
	document.writeln('<td valign="top" width="215" bgcolor="black"><img src="//www.ibm.com/i/c.gif" width="1" height="1" alt=""></td>');
	document.writeln('<td valign="top" width="2" rowspan="6" bgcolor="black"><img src="//www.ibm.com/i/c.gif" width="1" height="1" alt=""></td></tr>');
	document.writeln('<tr><td colspan="2"><img src="//www.ibm.com/i/c.gif" width="1" height="2" alt=""></td></tr>');
	document.writeln('<tr><td valign="top"><img src="//www.ibm.com/i/v14/icons/fw_bold.gif" width="16" height="16" alt="arrow"/></td>');
	var ltext = "" + (no_bold?(""):("<b>")) + navobject.label + (no_bold?(""):("</b>"));
	if ((location.href.indexOf("www-304.ibm.com"+jct_str) > 0) || (location.href.indexOf("sawa04p.austin.ibm.com") > 0) || (location.href.indexOf("qawa04p.austin.ibm.com") > 0)) { //we are on acme server .... 
		if (navobject.server == "ACME") { //then extract relative url
			document.writeln('<td><a href="' + jct_str + Right(navobject.uri, "ibm.com") + '" class="fbox">' + ltext + '</a></td></tr>');
		} else { //need full url
			document.writeln('<td><a href="' + navobject.uri + '" class="fbox">' + ltext + '</a></td></tr>');
		}
	} else { //we are on CMS server
		if (navobject.server == "CMS") { //then extract relative url
			document.writeln('<td><a href="' + Right(navobject.uri, "ibm.com") + '" class="fbox">' + ltext + '</a></td></tr>');
		} else { //need full url
			document.writeln('<td><a href="' + navobject.uri + '" class="fbox">' + ltext + '</a></td></tr>');
		}
	}
	document.writeln('<tr><td colspan="2"><img src="//www.ibm.com/i/c.gif" width="1" height="2" alt=""></td></tr>');
	document.writeln('<tr><td colspan="2"><table border="0" cellspacing="0" cellpadding="0">');
}

function write_entry(navobject) {
	document.writeln('<tr valign="top"><td width="16" align="center"><b>&middot;</b></td>');
	if ((location.href.indexOf("www-304.ibm.com"+jct_str) > 0) || (location.href.indexOf("sawa04p.austin.ibm.com") > 0) || (location.href.indexOf("qawa04p.austin.ibm.com") > 0)) { //we are on acme server .... 
		if (navobject.server == "ACME") { //then extract relative url
			document.writeln('<td><a href="' + jct_str + Right(navobject.uri, "ibm.com") + '" class="smallplainlink">' + navobject.label + '</a></td></tr>');
		} else { //need full url
			document.writeln('<td><a href="' + navobject.uri + '" class="smallplainlink">' + navobject.label + '</a></td></tr>');
		}
	} else { //we are on CMS server
		if (navobject.server == "CMS") { //then extract relative url
			document.writeln('<td><a href="' + Right(navobject.uri, "ibm.com") + '" class="smallplainlink">' + navobject.label + '</a></td></tr>');
		} else { //need full url
			document.writeln('<td><a href="' + navobject.uri + '" class="smallplainlink">' + navobject.label + '</a></td></tr>');
		}
	}
	document.writeln('<tr><td colspan="2"><img src="//www.ibm.com/i/c.gif" width="1" height="2" alt=""></td></tr>');
}

function write_closure() {
	document.writeln('</table></td></tr>');
	document.writeln('<tr><td colspan="2"><img src="//www.ibm.com/i/c.gif" width="1" height="3" alt=""></td></tr>');
	document.writeln('<tr><td colspan="4" bgcolor="black"><img src="//www.ibm.com/i/c.gif" width="1" height="2" alt=""></td></tr>');
	document.writeln('</table>');
	document.writeln('</div>');
}

function write_rollover_layers() {
	if (debug_rolls) {
		alert("write_rollover_layers()");
	}
	var public_acme_page = (location.href.indexOf("ibm.com/partnerworld/pub/") > 0);

	if (onex_entitled || (is_acme && !public_acme_page) ||
	(((typeof signin_getCookie!="undefined") && signin_getCookie("IBM_PW")!="") &&
	 ( !(typeof dynamic_news=="undefined") ||
	   !(typeof dynamic_events=="undefined") ||
	   ( !(typeof onex_dynamic=="undefined") && (onex_dynamic==true) )
	))) {
		var nav = "entnav"
		var subnav = "entsubnav"
	} else {
		var nav = "pubnav"
		var subnav = "subnav"
	}

	x = 1;
	while (!(window[nav+x] == null)) {
		document.writeln('<div id="' + eval(nav+x+'.id') + '" style="position:absolute; width:237px; z-index:10; left: 151px; top: 122px; visibility: hidden; background-color: #FFFFFF; ">');
		write_rollover_header(eval(nav+x));
		y=0
		while (!(window[subnav+x+y] == null))
		{
			write_entry(eval(subnav+x+y));
			y=y+1
		}
		write_closure();
		x=x+1
	}
}
