function showAD(intADID, strContainerID, intWidth, intHeight, strWMode) {
	var objContainer = $(strContainerID);

	if (objContainer) {
		var objADElement = $('flashad_' + intADID);

		if (!objADElement) {
			objContainer.insert(new Element('div', {id: 'flashad_' + intADID}));
			objADElement = $('flashad_' + intADID);
		}

		var objSWF = new SWFObject('http://newad.u-car.com.tw/ad-show.asp?ad=' + intADID + '&from=www.u-car.com.tw', 'ad_' + intADID, intWidth, intHeight, '9', '#FFFFFF');
		objSWF.addParam('allowScriptAccess', 'always');
		objSWF.addParam('wMode', strWMode);
		objSWF.addVariable('toURL', 'http://newad.u-car.com.tw/ad-redirect.asp?ad=' + intADID + '&from=www.u-car.com.tw');
		objSWF.write('flashad_' + intADID);

		objADElement = $('flashad_' + intADID);
		objADElement.width = intWidth + 'px';
		objADElement.height = intHeight + 'px';
		objADElement.style.width = intWidth + 'px';
		objADElement.style.height = intHeight + 'px';
		objADElement.show();
		objContainer.show();
	}
}

function removeAD(intADID)
{
	var objADElement = $('flashad_' + intADID);
	var objContainer = objADElement.parentNode;

	if (objADElement) {
		objContainer.removeChild(objADElement);
	}

	if (objContainer.childNodes.length == 0) {
		objContainer.hide();
	}
}

function hideAD(intADID)
{
	var objADElement = $('flashad_' + intADID);
	var objContainer = objADElement.parentNode;

	if (objADElement) {
		objADElement.hide();
	}

	if (objContainer.childNodes.length == 0) {
		objContainer.hide();
	}
}

function replaceAD(intOldADID, intADID, strContainerID, intWidth, intHeight, strWMode) {
	//removeAD(intOldADID);
	hideAD(intOldADID);
	showAD(intADID, strContainerID, intWidth, intHeight, strWMode);
}

function resizeAD(intADID, intTargetWidth, intTargetHeight)
{
	var objADElement = $('ad_' + intADID);
	if (objADElement) {
		objADElement.width = intTargetWidth + 'px';
		objADElement.height = intTargetHeight + 'px';
		objADElement.style.width = intTargetWidth + 'px';
		objADElement.style.height = intTargetHeight + 'px';
	}
	objADElement = $('flashad_' + intADID);
	if (objADElement) {
		objADElement.width = intTargetWidth + 'px';
		objADElement.height = intTargetHeight + 'px';
		objADElement.style.width = intTargetWidth + 'px';
		objADElement.style.height = intTargetHeight + 'px';
	}
}

function resizeADSlowly(intADID, intTargetWidth, intTargetHeight, intMillisecond)
{
	var t = 1000 / 12; // fps = 12
	var objADElement = $('flashad_' + intADID);
	if (objADElement) {
		var intCurrentWidth = Number(objADElement.style.width.replace('px', ''));
		var intCurrentHeight = Number(objADElement.style.height.replace('px', ''));
		var intCountDown = intMillisecond / t;

		var intNewWidth = intCurrentWidth + ((intTargetWidth - intCurrentWidth) / intCountDown);
		var intNewHeight = intCurrentHeight + ((intTargetHeight - intCurrentHeight) / intCountDown);

		if (intCountDown > 0)
		{
			resizeAD(intADID, intNewWidth, intNewHeight);
			resizeTimeout = setTimeout(function() {
				resizeADSlowly(intADID, intTargetWidth, intTargetHeight, intMillisecond - t);
			}, t);
		}
		else
		{
			resizeAD(intADID, intTargetWidth, intTargetHeight);
			clearTimeout(resizeTimeout);
		}
	}
}

function moveAD(intADID, intTargetX, intTargetY)
{
	var objADElement = $('flashad_' + intADID);
	if (objADElement) {
		objADElement.style.position = 'absolute';
		objADElement.style.left = intTargetX + 'px';
		objADElement.style.top = intTargetY + 'px';
	}
}

function moveADSlowly(intADID, intTargetX, intTargetY, intMillisecond)
{
	var t = 1000 / 12; // fps = 12
	var objADElement = $('flashad_' + intADID);
	if (objADElement) {
		var intCurrentX = Number(objADElement.style.left.replace('px', ''));
		var intCurrentY = Number(objADElement.style.top.replace('px', ''));
		var intCountDown = intMillisecond / t;

		var intNewX = intCurrentX + ((intTargetX - intCurrentX) / intCountDown);
		var intNewY = intCurrentY + ((intTargetY - intCurrentY) / intCountDown);

		if (intCountDown > 0)
		{
			moveAD(intADID, intNewX, intNewY);
			moveTimeout = setTimeout(function() {
				moveADSlowly(intADID, intTargetX, intTargetY, intMillisecond - t);
			}, t);
		}
		else
		{
			moveAD(intADID, intTargetX, intTargetY);
			clearTimeout(moveTimeout);
		}
	}
}

var resizeTimeout, moveTimeout;
