if(!window.SENGA)
	SENGA=new Object();
SENGA.ImageZoomRunning = false;

SENGA.zoomOn = function(img, zoomStep, maxZoom)
{
	if(img)
	{
		if(!zoomStep)
		{
//			if(img.mode == "EXPAND")
//				zoomStep = img.height/8;
//			else
				zoomStep = img.width/8;
		}

		if(!maxZoom)
		{
//			if(img.mode == "EXPAND")
//				maxZoom = img.height/2;
//			else
				maxZoom = img.width/5;
		}


		if(img.state == null)
		{
			img.state = "OFF";
			img.index = 0;
			img.orgWidth =  img.width;
			img.orgHeight = img.height;
			img.zoomStep = zoomStep;
			img.maxZoom  = maxZoom;
		}

		if(img.state == "OFF")
		{
			img.state = "ZOOM_IN";
			start_zooming();
		}
		else if( img.state == "ZOOM_IN_OUT"
			|| img.state == "ZOOM_OUT")
		{
			img.state = "ZOOM_IN";
		}
	}
}
SENGA.zoomIn = function(img, zoomStep, maxZoom)
{
	img.mode = "ZOOM";
	SENGA.zoomOn(img, zoomStep, maxZoom);
}



SENGA.zoomOut = function(img)
{
	if(img)
	{
		if(img.state=="ON")
		{
			img.state="ZOOM_OUT";
			start_zooming();
		}
		else if(img.state == "ZOOM_IN")
		{
			img.state="ZOOM_IN_OUT";
		}
	}
}

function start_zooming()
{
	if(!SENGA.ImageZoomRunning)
		ImageZoomAnimation();
}

SENGA.setZoom = function(img)
{
//	if(img.mode == "STRETCH")
//	{
//		img.width  = img.orgWidth  + img.index;
//		img.height = img.orgHeight;
//	}
//	else if(img.mode == "EXPAND")
//	{
//		img.width  = img.orgWidth;
//		img.height = img.orgHeight + img.index;
//	}
//	else
//	{
		img.width  = img.orgWidth  + img.index;
//	}
}

function ImageZoomAnimation()
{
	SENGA.ImageZoomRunning = false;
	for(i=0 ; i<document.images.length ; i++)
	{
		var img = document.images[i];
		if(img.state)
		{
			if(img.state == "ZOOM_IN")
			{
				img.index+=img.zoomStep;
				if(img.index > img.maxZoom)
					img.index = img.maxZoom;

				SENGA.setZoom(img);

				if(img.index == img.maxZoom)
					img.state="ON";
				else
					SENGA.ImageZoomRunning = true;
			}
			else if(img.state == "ZOOM_IN_OUT")
			{
				img.index+=img.zoomStep;
				if(img.index > img.maxZoom)
					img.index = img.maxZoom;

				SENGA.setZoom(img);
	
				if(img.index == img.maxZoom)
					img.state="ZOOM_OUT";
				SENGA.ImageZoomRunning = true;
			}
			else if(img.state == "ZOOM_OUT")
			{
				img.index-=img.zoomStep;
				if(img.index < 0)
					img.index = 0;

				SENGA.setZoom(img);

				if(img.index == 0)
					img.state="OFF";
				else
					SENGA.ImageZoomRunning = true;
			}
		}
	}
	/*** Check to see if we need to animate any more frames. ***/
	if(SENGA.ImageZoomRunning)
		setTimeout("ImageZoomAnimation()", 80);
}


