var slideResizeRate = 1;
var slideInProgress = 0;
var expandInProgress = false;
var collapseInProgress = false;	


function slideInit(domId_1,targetSize,axis)
{
	slideInProgress = 1;
	slideContainer_vert(domId_1,targetSize,axis);
}

function slideContainer_vert(objName,targetDimSize,axis)
{

	containerObj = document.getElementById(objName);
	
	if(slideResizeRate <= 15) slideResizeRate = slideResizeRate + 1;
	else slideResizeRate = slideResizeRate - 1;
	if(slideResizeRate == 0) slideResizeRate = 1;
	
	switch(axis)
	{
		case "y":
			var containerCurrentHeight = containerObj.clientHeight;
			var targetHeight = targetDimSize;
			if(targetHeight > containerCurrentHeight) //if expand
			{
				if(collapseInProgress) clearTimeout(collapseTimeout);
				nextHeight = containerCurrentHeight + slideResizeRate;
				containerObj.style.height = '' + nextHeight + 'px';
				if(targetHeight > nextHeight) 
				{
					expandInProgress = true;
					expandTimeout = setTimeout("slideContainer_vert('"+arguments[0]+"',"+targetHeight+",'y')",10);
				}
				else
				{
					containerObj.style.height = '' + targetHeight + 'px';
					expandInProgress = false;
					return true;
				}
			}
			else if(targetHeight < containerCurrentHeight) // if collapse
			{
				if(expandInProgress) clearTimeout(expandTimeout);
				nextHeight = containerCurrentHeight - slideResizeRate;
				if(nextHeight >= 0) containerObj.style.height = '' + nextHeight + 'px';
				else containerObj.style.height = '' + targetHeight + 'px';
				if(targetHeight < nextHeight) 
				{
					collapseInProgress = true;
					collapseTimeout = setTimeout("slideContainer_vert('"+arguments[0]+"',"+targetHeight+",'y')",10);
				}
				else
				{
					containerObj.style.height = '' + targetHeight + 'px';
					collapseInProgress = false;
					return true;
				}				
			}
			else return true;
		break;
		case "x":
		break;
	}
}

