function openSubNav( obj ){
	if( child = obj.getElementsByTagName("ul")[0] ) child.style.display = "block";
}

function closeSubNav( obj ){
	if( child = obj.getElementsByTagName("ul")[0] ) child.style.display = "none";
}

function getElementsByClassName(className, tag, elm){
	var testClass = new RegExp("(^|\\\\s)" + className + "(\\\\s|$)");
	var tag = tag || "*";
	var elm = elm || document;
	var elements = (tag == "*" && elm.all)? elm.all : elm.getElementsByTagName(tag);
	var returnElements = [];
	var current;
	var length = elements.length;
	for(var i=0; i<length; i++){
		current = elements[i];
		if(testClass.test(current.className)){
			returnElements.push(current);
		}
	}
	return returnElements;
}

var req;
function loadXMLDoc( url, outbin, pageRequest ){
	req = false;
	if( typeof XMLHttpRequest != "undefined" ){
		req = new XMLHttpRequest();
	}
	else if( typeof window.ActiveXObject != "undefined" ){
		try{
			req = new ActiveXObject("Msxml2.XMLHTTP.4.0");
		}
		catch( e ){
			try{
				req = new ActiveXObject("MSXML2.XMLHTTP");
			}
			catch( e ){
				try{
					req = new ActiveXObject("Microsoft.XMLHTTP");
				}
				catch( e ){
					req = null;
					document.getElementById(outbin).innerHTML = "Your browser can\'t handle this script\n";
					return;
				}
			}
		}
	}
	if( req ){
		req.onreadystatechange = function(){ processReqChange( outbin, pageRequest ); };
		req.open( "GET", url, true );
		req.send( "" );
	}
}

function processReqChange( outbin, searchTerm ){
	if( req.readyState == 4 ){
		if( req.status == 200 ){
			doc = req.responseXML;
			dumpStuff = "";
			alert( doc );
			/*if ( searchTerm != "" ){
				for( i=0; (group = doc.getElementsByTagName("group")[i]); i++ ){
					if( group.getAttribute("id") == searchTerm ){
						dumpStuff += "<h3>" + group.getAttribute("title") + "</h3>\n";
					}
				}
			}
			for( i=0; (customer = doc.getElementsByTagName("customer")[i]); i++ ){
				with (customer) {
					if ( searchTerm != "" ) {
						if ( getAttribute("group") == searchTerm ) {
							dumpStuff += "<a href=\""+getAttribute("url")+"\" target=\"_blank\" class=\"customer\"><img src=\""+getAttribute("logo")+"\" alt=\"Company logo\"/></a>\n";
						}
					}
					else {
						dumpStuff += "<a href=\""+getAttribute("url")+"\" target=\"_blank\" class=\"customer\"><img src=\""+getAttribute("logo")+"\" alt=\"Company logo\"/></a>\n";
					}
				}
			}
			document.getElementById(outbin).innerHTML = dumpStuff;*/
		}
		else{
			document.getElementById(outbin).innerHTML = "There was a problem retrieving the XML data:\n" + req.statusText;
		}
	}
}

function fade(){
	if ( outControl - parseFloat(1/10) >= 0 ){
		inControl += parseFloat(1/10);
		newsItems[controlIn].style.opacity = inControl.toFixed(1);
		newsItems[controlIn].style.filter = 'alpha(opacity=' + inControl.toFixed(1)*100 + ')';
		outControl -= parseFloat(1/10);
		newsItems[controlOut].style.opacity = outControl.toFixed(1);
		newsItems[controlOut].style.filter = 'alpha(opacity=' + outControl.toFixed(1)*100 + ')';
		setTimeout("fade()", 30);
	}
	else{
		inControl = 0;
		outControl = 1;
		newsItems[controlOut].style.zIndex --;
		newsItems[controlIn].style.zIndex ++;
		if( newsItems.length-1 > controlIn ) controlIn++;
		else controlIn = 0;
		if( newsItems.length-1 > controlOut ) controlOut++;
		else controlOut = 0;
	}
}


window.onload = function(){

	if( document.getElementById("major_news") ){
		for( var i=0; (a = getElementsByClassName("major_news_item","div",document.getElementById("major_news"))[i]); i++ ){
			a.style.opacity = 0;
			a.style.filter = 'alpha(opacity=0)';
			newsItems.push( a );
		}
		newsItems[newsItems.length-1].style.opacity = 1;
		newsItems[newsItems.length-1].style.filter = 'alpha(opacity=100)';
		newsItems[newsItems.length-1].style.zIndex = 1;
		//if( loadXML() ){ //load big news items
			controlIn = 0;
			controlOut = newsItems.length-1;
			setInterval( "fade()", 3000 );
			//loadXML(); //load full list of items
		//}
		//loadXMLDoc( "/buzz.xml", "major_news", "" );
	}

	if( document.getElementById("minor_news") ){
		for( var i=0; (blurb = getElementsByClassName("article_blurb","div",document.getElementById("minor_news"))[i]); i++ ){
			blurb.onmouseover = function(){
				bubble = getElementsByClassName( "article_blurb_bubble", "div", this )[0];
				bubble.style.display = "block";
			}
			blurb.onmouseout = function(){
				bubble = getElementsByClassName( "article_blurb_bubble", "div", this )[0];
				bubble.style.display = "none";
			}
		}
	}
	
	if( document.getElementById("nav") ){
		for( var i=0; (li = document.getElementById("nav").getElementsByTagName("li")[i]); i++ ){
			if ( li.getElementsByTagName("ul") ){
				li.onmouseover = function(){ openSubNav(this); }
				li.onmouseout = function(){ closeSubNav(this); }
			}
		}
	}
	if(document.getElementById('regionSelector')) {
	   var div = document.getElementById('regionSelector').getElementsByTagName('div');
		   for(i=0;i<div.length;i++) {
			 div[i].onmouseover = function() {
					this.className = 'menuItem over';
					}
			 div[i].onmouseout = function() {
					this.className = 'menuItem out';
					}
			 }
	 }
	for( var i=0; (input = document.getElementsByTagName("input")[i]); i++ ){
		input.alt = input.value;
		input.onfocus = function(){
			if( this.value == this.alt ){
				this.value = "";
				this.style.color = "#000";
				this.style.fontStyle = "normal";
			}
		}
		input.onblur = function(){
			if( this.value == "" ){
				this.value = this.alt;
				this.style.color = "#ccc";
				this.style.fontStyle = "italic";
			}
		}
	}

	page = (window.top.location+"").split("/")[3];
	section = page.split(".")[0];
	section = section.split("_")[0];
	if (section == "store") section = "buy";   // show buy tab for the store
	if (section == "app") section = "support"; // show support tab for software download
	if (section == "cgi-bin") section = "support"; // show support tab for software download
	section = "buy"; // hard-coded for rush order
	if( section && document.getElementById("nav_"+section) )
		document.getElementById("nav_"+section).getElementsByTagName("a")[0].className = "selected";
}
