function setVisibilityBySelector(selector, newState){
	var topAry = $$(selector);
	
	for (i=0; i<topAry.length; i++) 
	{
		topAry[i].style.visibility = newState;
		//visible,hidden
	}
}

function openOverLay(value, type, headerText){
	if(!headerText)
	{
		headerText = '';	
	}
	
	insertOverLay('overlay', 'overlay');
	insertOverLayContentContainer('overlayContentContainer', 'overlayContentContainer', headerText);
	
	type = type.toLowerCase();
	switch(type)
	{
		case "video":
		  insertVideo('overlayContentContainer', 'videoContainer', value);
		  break;    
		case "image":
		  insertImage('overlayContentContainer', 'imageContainer', value);
		  break;
		default:
	} 
	setTimeout("recenterContentContainer('overlayContentContainer')",50); /* 08/19/2009 AAG - Added setTimeout function because the box would appear too low in FF3. */
}

function recenterContentContainer(id){
	
	contentContainerWidth = $(id).getWidth();	
	contentContainerHeight = $(id).getHeight();
	tmpLeft = (document.viewport.getWidth()/2) - (contentContainerWidth/2);
	tmpTop = (document.viewport.getHeight()/2) - (contentContainerHeight/2);
	
	if(tmpLeft < 0){
		tmpLeft = 0;
	}
	
	if(tmpTop < 0){
		tmpTop = 0;
	}
	topOffset = document.viewport.getScrollOffsets().top;
	
	$(id).style.left = tmpLeft + "px";
	$(id).style.top = tmpTop + topOffset + "px";
}

function resizeOverLay(id, outterContainerId){
	
	tmpHeight1 = $(outterContainerId).getHeight();
	tmpHeight2 = $(document.body).getHeight();
//	tmpWidth1 = $(outterContainerId).getWidth();
//	tmpWidth2 = $(document.body).getWidth();

	if(tmpHeight1 > tmpHeight2){
		tmpHeight = tmpHeight1;
	}else{
		tmpHeight = tmpHeight2;
	}
	
/*	if(tmpWidth1 > tmpWidth2){
		tmpWidth = tmpWidth1;
	}else{
		tmpWidth = tmpWidth2;
	}
*/
	$(id).style.height = tmpHeight + "px";
//	$(id).style.width = tmpWidth + "px";
}

function insertOverLay(id, className){
	tmpStartHeight = $(document.body).getHeight();
	//document.body.style.overflow = "hidden";
	
	$(document.body).insert("<div class='" + className + "' id='" + id + "'>&nbsp;</div>");
	
	resizeOverLay('overlay', 'outerContainer');
	
	setVisibilityBySelector('select', 'hidden');
}

function insertOverLayContentContainer(id, className, headerText){
	htmlOutput  = '<div class="' + className + '" id="' + id + '">';
	htmlOutput += "<div class='header'>" + headerText + "</div>";
	htmlOutput += '<div class="rightSide"><a href="javascript:removeOverLay()">Close</a></div>';
	htmlOutput += '</div>';
	$(document.body).insert(htmlOutput);
}

function removeOverLay(){
	
	if($('videoContainer')){
		$('videoContainer').remove();
	}
	
	$('overlayContentContainer').remove();
	$('overlay').remove();
	
	setVisibilityBySelector('select', 'visible');
	//document.body.style.overflow = "";
}

function insertVideo(containerId, id, myFlashVars){
	htmlOutput = '<div style="padding:8px; background-color:#FFFFFF"><div id="' + id + '"><div id="playerdiv"></div></div></div>';	
	$(containerId).insert(htmlOutput);
	
	var flashvars = {
		videoLink: myFlashVars.loadedContent,
		videoVolume: "75",
		autoplay: "true"
	};
	var params = {
		quality: "high",
		wmode: "transparent",
		devicefont: "false",
		allowFullScreen: "true",
		allowScriptAccess: "sameDomain"
	};
	var attributes = {};
	
	swfobject.embedSWF("/resource/images/flash/videoplayer.swf", "playerdiv", "360", "266", "8", "", flashvars, params, attributes);
}

function insertImage(containerId, id, src){
	
	htmlOutput = '<div style="padding:8px; background-color:#FFFFFF"><div id="' + id + '"><img src="' + src + '" alt="" onload="recenterContentContainer(\'' + containerId + '\');" /></div></div>';	
	$(containerId).insert(htmlOutput);
}

Event.observe(window, "resize", function() {
	if($('overlay') && $('overlayContentContainer')){
		resizeOverLay('overlay', 'outerContainer');						 
		recenterContentContainer('overlayContentContainer');
	}
});

function fixURLsToOpenInANewWindow(objContainer)
{
	for(i = 0; i < objContainer.childNodes.length; i++)
	{
		objNode = objContainer.childNodes[i]
		if(objNode.tagName == 'A')
		{
			// Set the node's target to _blank to cause it to open a new window...
			objNode.target="_blank";
			objNode.className = "blue";
		}
	}
}

function popUpWindow(strURL, intWidth, intHeight)
{
	intLeft = (window.screen.width - (intWidth))/2;
	intTop = (window.screen.height - (intHeight))/2;
	objWindow = window.open(strURL,'_blank', 'width=' + intWidth + ', height=' + intHeight + ', left=' + intLeft +  ', top=' + intTop + ', location=yes, titlebar=yes, toolbar=yes, fullscreen=yes, scrollbars=yes, resizable=yes, menubar=yes, status=yes');
}

blnIsIE = navigator.appName.indexOf("Internet Explorer") == -1?false:true;
function insertAtCursor(myField, myValue)
{
	//IE support
	if(blnIsIE)
	{
		if (document.selection)
		{
			myField.focus();
			sel = document.selection.createRange();
			sel.text = myValue;
		}
	}
	else
	{
		if(myField.selectionStart || myField.selectionStart == 0)
		{
			var startPos = myField.selectionStart;var endPos = myField.selectionEnd;
			myField.value = myField.value.substring(0, startPos)+ myValue+ myField.value.substring(endPos, myField.value.length);
		} 
		else 
		{
			myField.value += myValue;
		}
	}
}
