//add to the page DOM a new element
var screenCastOpacity = 100;
var overlayElement = 'popupWinBlocker';
var timer = '';
var checkBrowserIsIE = (navigator.appName == 'Microsoft Internet Explorer' ? true : false);

function setWorkingAreaHeight(){
	var targetElem = document.getElementById('mainPageInfo');
	if(targetElem){
		var availHeight = document.documentElement.clientHeight - targetElem.offsetTop - 10;
		targetElem.style.height = availHeight+'px';
		//and reposition messaging window
		var messageWindow = document.getElementById('notificationFrame');
		with(messageWindow.style){
			top = (document.documentElement.clientHeight - 100) + 'px';
			left = (document.documentElement.clientWidth / 2 + 30);
		}
	}
}

function showScreenCastBlocker(scrElemURL,coordTop,coordHeight,coordWidth){
	//set iframe params
	with(document.getElementById(overlayElement+'_frame')){
		src = scrElemURL;
		style.marginTop = coordTop+'px';
		style.height = coordHeight+'px';
		style.width  = coordWidth +'px';
	}
	var blockerElem = document.getElementById(overlayElement);
	screenCastOpacity = 0;
	with(blockerElem.style){
		display = '';
		position = 'absolute';
		top = '0px';
		left = '0px';
		filter = "alpha(opacity="+screenCastOpacity+")";
		MozOpacity = screenCastOpacity/100;
	}
	document.childNodes[1].scrollTop = 0;
	if(checkBrowserIsIE){
		document.childNodes[0].style.overflow = 'hidden';
		document.childNodes[1].style.overflow = 'hidden';
	} else {
		document.body.style.overflow = 'hidden';
	}
	
	//and activate fading effect
	screenCastGoFade();
}

function screenCastGoFade(){
	if(screenCastOpacity<100){
		screenCastOpacity = screenCastOpacity + 10;
		var blockerElem = document.getElementById(overlayElement);
		with(blockerElem.style){
			filter = "alpha(opacity="+screenCastOpacity+")";
			MozOpacity = screenCastOpacity/100;
		}
		//and make a timeout
		timer = setTimeout('screenCastGoFade()',1);
	} else {
		clearTimeout(timer);
	}
}

function screenCastUnFade(){
	var blockerElem = document.getElementById(overlayElement);
	
	if(screenCastOpacity>0){
		screenCastOpacity = screenCastOpacity - 10;
		with(blockerElem.style){
			filter = "alpha(opacity="+screenCastOpacity+")";
			MozOpacity = screenCastOpacity/100;
		}
		//and make a timeout
		timer = setTimeout('screenCastUnFade()',1);
	} else {
		clearTimeout(timer);
		//and restore screen elements
		if(checkBrowserIsIE){
			document.childNodes[0].style.overflow = 'auto';
			document.childNodes[1].style.overflow = 'auto';
		} else {
			document.body.style.overflow = 'auto';
		}
		//and hide overlay element
		blockerElem.style.display = 'none';
		with(document.getElementById(overlayElement+'_frame')){
			src = 'about:blank';
		}
	}
}

