IMG_ROOT = '/images/';



function getStyle(el,styleProp)
{
	var x = el;
	if (x.currentStyle)
		var y = x.currentStyle[styleProp];
	else if (window.getComputedStyle)
		var y = document.defaultView.getComputedStyle(x,null).getPropertyValue(styleProp);
	return y;
}

function openCloseContainer(currObj)
{

	try{
	if(currObj.tagName == 'SPAN')
		mainContainer = currObj.parentNode.parentNode; //Grabs the parent node, so that it could be used to assign internal divs to variables.
	else mainContainer = currObj.parentNode;
		
	abstractTxt = getFirstChild(mainContainer);		
	fullTxt = getNextDiv(abstractTxt);
	plusMinusHolder = getNextDiv(fullTxt);
	plusMinusBtn = getFirstChild(plusMinusHolder);
	containerStatus = getCSSValue(fullTxt,'display');		
	 
	if(containerStatus == 'none')
	{
		plusMinusBtn.src = IMG_ROOT+'btn_minus.gif';
		abstractTxt.style.display = 'none';
		fullTxt.style.display = 'block';			
	}
	else {
		plusMinusBtn.src = IMG_ROOT+'btn_plus.gif';
		abstractTxt.style.display = 'block';
		fullTxt.style.display = 'none';			
	}
		
	//alert(containerStatus);
	}catch(e){
		//alert(e);
	}		

}



var langTimer= null;

function languageOn()
{
	clearTimeout(langTimer);
	initTimer= null;
	var searchWidgit = document.getElementById('languages');	
	
	searchWidgit.style.display = 'block';
}



function languageOffInit()
{
	langTimer= setTimeout('languageOff();',500);
}

function languageOff()
{
	var searchWidgit = document.getElementById('languages');	
	searchWidgit.style.display = 'none';	
}

function imageOnOffState(obj)
{	
	objSrc = new Array();
	objSrc = getRenderedImgSrc(obj); //Gets the name of the image without the extention

	if(objSrc['extention'].split('.')[0] == 'off') // Only runs when the button is in the OFF state
	{
		// MOUSEOVER ACTION
		obj.src=IMG_ROOT+objSrc['noExtention']+"_on.gif";	
		
		obj.onmouseout = backToOriginalState;	
		
	}
	function backToOriginalState()
	{
		obj.src=IMG_ROOT+objSrc['noExtention']+".gif";		
	}	
}

function getRenderedImgSrc(imgObj)
{
	imgsrc = imgObj.src;	
	img_root = imgsrc.split("/");
	img_name = img_root[img_root.length-1];
	img_name = img_name.split("_");
	
	imageName = new Array();
	imageName['extention'] = (img_name[2]? img_name[2] : "off.ext") ; // stores the extention of the image whether ON.gif or OFF.gif
	
	img_name = img_name[0]+'_'+img_name[1];
	imageName['noExtention'] = img_name.split(".")[0];// stores an image name without the extention
	
	return imageName; //Returns just the image name without the extention	
}


function getCSSValue(objName,cssProperty,styleSheet)
{
	returnVal = objName.style[cssProperty];
	
	//alert(returnVal);
	//alert(objName.className+' '+cssProperty);
	//alert("Class Name: "+objName.className+" Property: "+cssProperty+" Getting Prop: "+returnVal);
	
	if(returnVal == ''){
	
		//alert(eval(testObj));
		
		  var cssValue= false;
		
		  var ss = document.styleSheets[0];
		
		//cssRules[0] for mozila, rules for explorer
		
			if (navigator.appName=="Microsoft Internet Explorer")
			{
				
		 		 for(i= 0; i< ss.rules.length; i++)
		  			{
		  			
		   			 if(ss.rules[i].selectorText== ('.'+objName.className))
		    			{
		    				  cssValue= ss.rules[i].style[cssProperty];
							  break;
		   				 }
		
		 			 }
		 	 }//end of the if nav name statement
		 	 else
		 	 {
		 	 	for(i= 0; i< ss.cssRules.length; i++)
		  			{
		
					 if(ss.cssRules[i].selectorText== ('.'+objName.className))
		    			{
		    				  cssValue= ss.cssRules[i].style[cssProperty];
		    				  break;
		   				 }
		
		 			 }
		 	}
		 	 	
		  return(cssValue);
	}
	else
		return returnVal;

}



function getNextDiv(d){
	var nextDiv= d.nextSibling;
	
	while(nextDiv){
		if((nextDiv.tagName && nextDiv.tagName=='DIV') || (nextDiv.tagName=='A'))
			break;
		else
			nextDiv= nextDiv.nextSibling;
	}	
	return nextDiv
}

function getFirstChild(g)
{
		var prevDiv= g.firstChild;
		while(prevDiv)
		{
				if((prevDiv.tagName && prevDiv.tagName=='DIV') || (prevDiv.tagName=='IMG'))
					break;
				else 
					prevDiv= prevDiv.nextSibling;
		}
		return prevDiv;
}



function getPreviousDiv(g)
{
		var prevDiv= g.previousSibling;
		while(prevDiv)
		{
				if((prevDiv.tagName && prevDiv.tagName=='DIV') || (prevDiv.tagName=='IMG') || (prevDiv.tagName=='A') )
					break;
				else 
					prevDiv= prevDiv.previousSibling;
		}
		return prevDiv;
}


function openDocWin(url){
	window.open(url, '_blank','location=no,toolbar=no,menubar=no,scrollbars=auto,status=no,resizable=yes,width=500, height=600');
}


/* Adds alternate colors to the table tr's */
function addTableDiffTr(tableId,darkBg,lightBg)
{
	var tableObj = document.getElementById(tableId);
	var tBody = tableObj.getElementsByTagName('TBODY');
	if(tBody){
		var rows = tBody[0].getElementsByTagName('TR');
	}else{
		var rows = tableObj.getElementsByTagName('TR');
	}
	for(var no=0;no<rows.length;no++){
		if(no%2 == 0)
			rows[no].className=lightBg;
		else 
			rows[no].className=darkBg;
	}
	
}

