// basic browser detection
var agt=navigator.userAgent.toLowerCase();
var is_ie = ((agt.indexOf("msie") != -1) && (agt.indexOf("opera") == -1));

if (navigator.appVersion.charAt(0) >= 4)
{
  //<!--#echo var="HTTP_REFERER" -->
  //var ref = new String("");
	var outerref;
	var ref = "";
	if (outerref) ref = outerref;
  ref = ref.substr(7);
  ref = ref.slice(0,ref.indexOf("/"));
  var idgnet_check = new RegExp ("(nww.com$)|(nwfusion.com$)|(idg.net$)|(idg.com$)|(www.vortex.net)|(www.nwwsubscribe.com)|(www.e-businessworld.com)|(www.e-commerceworld.com)|(www.year2000world.com)|(www.techinformer.com)","i");

  if (top.location != window.location)
     if (!idgnet_check.test(ref) && is_ie)
       //top.location = window.location;
       top.location.replace(window.location);
}

var popWin = null
function openurl(url)
{
  closePopWin()
  popWin=window.open(url,'NewWindow','width=588,height=480,menubar=no,toolbar=no,location=no,scrollbars=0,top=50,left=100');
}

function closePopWin()
{
        if (navigator.appName != "Microsoft Internet Explorer" || parseInt(navigator.appVersion) >=4) //do not close if early IE
        if(popWin != null) if(!popWin.closed) popWin.close()
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v3.0
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
    if ((x=MM_findObj(a[i]))!=null){
			document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; if(x.sel != "1") x.src=a[i+2];
	 }
}

// currently used for wp pages
function MM_jumpMenu(targ,selObj,restore){ //v3.0
var test = "/research/whitepapers/index.html?sort="
eval(targ+".location='"+test+"'+'"+selObj.options[selObj.selectedIndex].value+"'")
  if (restore) selObj.selectedIndex=0;
}

function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}

// the menu code
var nom = 10; // Number of menus
var usePictures = 1; // use pictures?  1 = yes, 0 = no
var clientToggle = true; // decide whether client clicks toggle the menus
var ttls = new Array(); // An array for the title objects
var subs = new Array(); // An array for the submenu objects
var below = 'bottomtasks'; // div holding things to shift down below tasks
var onarrow = "/graphics/templates/navarrow_on.gif";
var offarrow = "/graphics/templates/navarrow_off.gif";
var lastn = (nom + 1); // this handles things below the menu
var lastmove = 0; // must start at 0
var task = 0;
var topic = 0;

if (document.layers) {
	visible = 'show';
	hidden = 'hide';
}
else if (document.all) {
	visible = 'visible';
	hidden = 'hidden';
}
for (var i = 1; i <= nom; i++) {
	ttls[i] = ('title' + i);
	subs[i] = ('submenu' + i);
}

function arrowswap() {
  a = arrowswap.arguments;
  if ((x=MM_findObj(a[0]))!=null)
  	if (x.src.indexOf(onarrow) < 0)
			MM_swapImage(a[0],a[1],a[2],a[3]);
}
	
function arrowrestore(img) {
  if ((x=MM_findObj(img))!=null) {
  	if (x.src.indexOf(onarrow) < 0)	MM_swapImgRestore();
	}
}

function titleopen(n) {
	title = ('title' + n);
	titletd = ('titletd' + n);
	titletext = ('titletext' + n);
	pic = ('pic' + n);
	bull = ('bull' + n);
	if (document.layers) {
	  //document.layers[title].bgColor = "#003399";
		//document.layers[title].color = "#FFFF00";
		document.layers[title].document.images[bull].src = "/graphics/templates/red_sq.gif";
		if (usePictures) document.layers[title].document.images[pic].src = onarrow;		
		document.layers[title].document.images[pic].oSrc = onarrow;
		alert(onarrow);
	}
	else if (document.all) {
		document.all(title).style.backgroundColor = "#003399";
		document.all(title).style.color = "#FFFF00";	
		document.all(titletd).style.backgroundColor = "#003399";
		document.all(titletd).style.color = "#FFFF00";		
		document.all(titletext).style.color = "#FFFF00";			
		//document.all(bull).src = "/graphics/templates/red_sq.gif";
		if (usePictures) {
			document.all(pic).src = onarrow;
			document.all(pic).oSrc = onarrow;
		}
  }
}

function titleclose(n) {
	title = ('title' + n);
	titletd = ('titletd' + n);	
	titletext = ('titletext' + n);	
	pic = ('pic' + n);
	bull = ('bull' + n);
	if (document.layers) {
	  //document.layers[title].bgColor = "";
		//document.layers[title].color = "";	
		document.layers[title].document.images[bull].src = "/graphics/templates/clearpixel.gif";
		if (usePictures) document.layers[title].document.images[pic].src = "/graphics/templates/navarrow_off.gif";
	}
	else if (document.all) {
		document.all(title).style.backgroundColor = "";
		document.all(title).style.color = "";
		document.all(titletd).style.backgroundColor = "";
		document.all(titletd).style.color = "";		
		document.all(titletext).style.color = "white";	
		//document.all(bull).src = "/graphics/templates/clearpixel.gif";
		if (usePictures) {
			document.all(pic).src = offarrow;
			document.all(pic).oSrc = offarrow;
		}
  }
}

function lasttoggle(n,move) {
	if (n <= nom) {
		menu = ('submenu' + n);
		if (document.layers) submenu = document.layers[menu];
		else if (document.all) submenu = document.all(menu).style;
		if (submenu.visibility == visible) {
			titleclose(n);
			submenu.visibility = hidden;
			for (var i = (n+1); i <= nom; i++) {
				if (document.layers) {
					document.layers[ttls[i]].top -= move;
					document.layers[subs[i]].top -= move;
				}
				else if (document.all) {
					document.all(ttls[i]).style.pixelTop -= move;
					document.all(subs[i]).style.pixelTop -= move;
        }
      }
			if (document.layers) document.layers[below].top -= move;
			else if (document.all(below)) document.all(below).style.pixelTop -= move;			
		}
  }
}

// onclick disable function
function toggleno(n,move) {
	if (clientToggle) {
		toggle(n,move);
		return false;
	}	else {
		return true;
	}
}

function toggle(n,move) {
	var thismove = move;
	menu = ('submenu' + n);
	title = ('title' + n);
	if (document.layers) submenu = document.layers[menu];
	else if (document.all) {
		submenu = document.all(menu).style;
	  document.all(menu).style.pixelTop = document.all(title).offsetTop + document.all(title).clientHeight;	
	}
	if (submenu.visibility == visible) {
		submenu.visibility = hidden;
		titleclose(n);
		move = -move;
	} else {
		submenu.visibility = visible;
		titleopen(n);
		if (lastn != n) {
			lasttoggle(lastn,lastmove);
		}
	}		
		for (var i = (n+1); i <= nom; i++) {
		if (document.layers) {
			document.layers[ttls[i]].top += move;
			document.layers[subs[i]].top += move;
		}
		else if (document.all) {
			document.all(ttls[i]).style.pixelTop += move;
			document.all(subs[i]).style.pixelTop += move;
	  }
	}
	if (document.layers) document.layers[below].top += move;
	else if (document.all(below)) document.all(below).style.pixelTop += move;
	lastn = n;
	lastmove = thismove;
}

// **************************** functions to operate the topics menu ***************************
function setTopic(n) {
	topic = ("link" + n);
	square= ('sq' + n);

	if (document.layers) {
	  //document.layers[topic].bgColor = "#003399";
		//document.layers[topic].color = "#FFFF00";
		document.images[square].src = "/graphics/templates/red_sq.gif";
	}
	else if (document.all) {
		//document.all(topic).style.text-decoration = "underline";
		document.all(topic).style.color = "#FFFF00";	
		document.all(square).src = "/graphics/templates/red_sq.gif";
  }
}

function setTask() {
	if ((theObj=MM_findObj('submenu' + task))!=null) {
		toggle(task,theObj.clientHeight);
	}
}

function init()
{
	if (document.all)	setTask();
	//document.all('arrow' + task).click();	
	if (!is_ie) {
		window.captureEvents(Event.RESIZE);
		window.onresize=doResize;
	}
	if (typeof customInit == "function") customInit();	
}
// for ns 4.0
function doResize()
{
	location.reload();
	return false;
}

function initmenu_old() {
  alert("initmenu");
	for (var i = 1; i <= nom; i++) {
		if (document.layers) {
			//var menuX = document.layers['topnav'].pageX;
			//var menuY = document.layers['topnav'].pageY + ((i-1)*-13);
			//document.layers[ttls[i]].pageY = menuY;
			//document.layers[subs[i]].pageY = document.layers[ttls[i]].pageY +19;
			//document.layers[subs[i]].pageX = document.layers[ttls[i]].pageX
		}	
		else if (document.all) {
		  if (i != 7 && i != 8) 
				document.all(subs[i]).style.pixelTop = document.all(ttls[i]).offsetTop + 20;
			else document.all(subs[i]).style.pixelTop = document.all(ttls[i]).offsetTop + 34;
		}
	}
}
//  End -->
