function setOpacity ( objID, opac )
{
	var obj = document.getElementById ( objID );
	
	obj.style.opacity = parseFloat ( opac / 100 );
	obj.style.filter = 'alpha(opacity=' + parseInt ( opac, 10 ) + ')';
	obj.style.MozOpacity = parseFloat ( opac / 100 );
	obj.style.KhtmlOpacity = parseFloat ( opac / 100 );
}

function showElement ( objID, show )
{
	var obj = document.getElementById ( objID );
	
	switch ( show )
	{
		case true:
			obj.style.display = 'block';
			break;
		case false:
			obj.style.display = 'none';
			break;
	}
}

function positionElement ( objID, top, left )
{
	var obj = document.getElementById ( objID );
	
	obj.style.top = top + 'px';
	obj.style.left = left + 'px';
}

function resizeElement ( objID, height, width )
{
	var obj = document.getElementById ( objID );

	obj.style.height = height + 'px';
	obj.style.width = width + 'px';
}

function getHTML ( objID )
{
	return document.getElementById ( objID ).innerHTML;
}

function setHTML ( objID, html )
{
	var obj = document.getElementById ( objID );
	
	obj.innerHTML = html;
}

function getElementDimensions( objID )
{
	var obj = document.getElementById ( objID );
	
	var h = parseInt ( obj.offsetHeight, 10 );
	var w = parseInt ( obj.offsetWidth, 10 ); 
	
	return { height : h, width : w };
}

function getPageDimensions()
{
	var page_width = 0;
	var page_height = 0;
	
	if( typeof( window.innerWidth ) == 'number' )
	{
		//Non-IE
		page_width = window.innerWidth;
		page_height = window.innerHeight;
	}
	else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) )
	{
		//IE 6+ in 'standards compliant mode'
		page_width = document.documentElement.clientWidth;
		page_height = document.documentElement.clientHeight;
	}
	else if( document.body && ( document.body.clientWih || document.body.clientHeight ) )
	{
		//IE 4 compatible
		page_width = document.body.clientWidth;
		page_height = document.body.clientHeight;
	}
	
	return { width : page_width, height : page_height };
}

function fadeElement ( objID, maxFade, fadeMode, currentOpacity )
{	
	if ( currentOpacity === -1 )
	{
		if ( fadeMode === 1 )
		{
			currentOpacity = 0;
		}
		else
		{
			currentOpacity = maxFade;
		}
	}
	
	//fade in
	if ( fadeMode === 1 && currentOpacity < maxFade )
	{
		showElement ( objID, true );
		currentOpacity = parseInt ( currentOpacity, 10 ) + 10;
		setOpacity ( objID, currentOpacity );

		var cmd = 'fadeElement("' + objID + '",' + parseInt ( maxFade, 10 ) + ',1,' + parseInt ( currentOpacity, 10 ) + ')';
		setTimeout ( cmd, 50 );
	}
	else if ( fadeMode === 1 && currentOpacity < maxFade )
	{
		currentOpacity = maxFade;
	}
	//fade out
	else if ( fadeMode === 2 )
	{
		currentOpacity = parseInt ( currentOpacity, 10 ) - 20;
		setOpacity ( objID, currentOpacity );
		
		if ( parseInt ( currentOpacity, 10 ) < 5 )
		{
			showElement ( objID, false );
		}
		else
		{
			var cmd = 'fadeElement("' + objID + '",' + parseInt ( maxFade, 10 ) + ',2,' + parseInt ( currentOpacity, 10 ) + ')';
			setTimeout ( cmd, 50 );
		}
	}
}
