/*

Locates a document object of the provided id and returns the object
layers, document.all and getElementById compatible
*/
function getObject(objIdentifier)
	{
		
		var myObj = null;
		
		if(document.layers)	
			{
				
				myObj = eval("document."+ objIdentifier);
				
				if(!myObj)
					{
					
						for(var index=0;index<document.layers.length;index++)
							{
								
								if(eval("document." + document.layers[index].id) && eval("document." + document.layers[index].id + ".document."+ objIdentifier))
									{
									
										myObj = eval("document." + document.layers[index].id + ".document."+ objIdentifier);
										break;
									
									}
								
							}
					
					}
					
			}
		else if (document.getElementById) 
			{
				myObj = eval("document.getElementById('" + objIdentifier + "')");
			}
		else
			{
				myObj = eval("document.all['" + objIdentifier + "']");
			}
		
		return myObj;
		
	}


function setPosition(objToPosition, coordSourceObj, adjustX, adjustY)
	{
		
		if(!coordSourceObj)
			coordSourceObj = objToPosition;
			
		if(!adjustX)
			adjustX = 0;
			
		if(!adjustY)
			adjustY = 0;
			
			
		var nx = coordSourceObj.offsetLeft;
		var parentElement = coordSourceObj.offsetParent;
	
		while(parentElement){
			nx += parentElement.offsetLeft;
			parentElement = parentElement.offsetParent;
		}
		
		var ny = coordSourceObj.offsetTop;
		var parentElement = coordSourceObj.offsetParent;
	
		while(parentElement){
			ny += parentElement.offsetTop;
			parentElement = parentElement.offsetParent;
		}
	
		objToPosition.style["left"] = (nx + adjustX) + "px";
		objToPosition.style["top"] = (ny + adjustY) + "px";
		
	}
	
	
function sleep(milliSeconds)
	{
	
		var clock = new Date();
		var endTime = new Date();
		
		endTime.setMilliseconds(clock.getMilliseconds() + milliSeconds);				
		
		while(clock < endTime)
			{
				clock = new Date();
			}
	
	}
	
	
function trim(str)
	{
		str = str.replace(/^ */, "");
		str = str.replace(/ *$/, "");
		return str;
	}
	
	
function toggleToolTipDisplay(controlObj,toolTipID)
	{
	
		divObj = getObject(toolTipID);
		
		if(controlObj)
			setPosition(divObj,controlObj,0,10);
		
		divObj.style.display = divObj.style.display == "block"? "none": "block";
		
	}


function moneyFormat(value,currencySymbol) 
	{
		
		if(!currencySymbol)
			currencySymbol = "$";
			
		var result = Math.floor(value)+".";
		
		var cents = 100*(value-Math.floor(value))+0.5;
		
		result += Math.floor(cents/10);
		result += Math.floor(cents%10);
		
		result = currencySymbol + result.toString();
		
		return result;
		
	}

function jumpURL(thisURL) {
    if (thisURL.length) location.href = thisURL;
}

function clearDefault(el) {
  if (el.defaultValue==el.value) el.value = ""
}
