// Coded by Genius Chan (info@genius.idv.hk)
// Last Modify Date: 18 Dec 2007

function flashAutoSize(flashId, mw, mh, xw, xh) {
	var thisWidth = 0;
	var thisHeight = 0;
	if (xw <= xh) {
		thisWidth = (parseInt(xw) < parseInt(mw)) ? xw : mw;
		document.getElementById(flashId).style.width=thisWidth+'px';
		document.getElementById(flashId).style.height=Math.floor(parseInt(mh)/parseInt(mw)*parseInt(thisWidth))+'px';
	} else {
		thisHeight = (parseInt(xh) < parseInt(mh)) ? xh : mh;
		document.getElementById(flashId).style.width=Math.floor(parseInt(mw)/parseInt(mh)*parseInt(thisHeight))+'px';
		document.getElementById(flashId).style.height=thisHeight+'px';
	}
}

function flashSetSize(flashId, mw, mh, xw, xh, autoScaleFlag) {
	if (autoScaleFlag) {
		if (xw <= xh) {
			document.getElementById(flashId).style.width=xw+'px';
			document.getElementById(flashId).style.height=Math.floor(parseInt(mh)/parseInt(mw)*parseInt(xw))+'px';
		} else {
			document.getElementById(flashId).style.width=Math.floor(parseInt(mw)/parseInt(mh)*parseInt(xh))+'px';
			document.getElementById(flashId).style.height=xh+'px';
		}
	} else {
		document.getElementById(flashId).style.width=xw+'px';
		document.getElementById(flashId).style.height=xh+'px';
	}
}

function getFlashObj(flashId){
   if (window.document[flashId]) {
      return window.document[flashId];
   }
   if (navigator.appName.indexOf("Microsoft Internet")==-1) {
      if (document.embeds && document.embeds[flashId]) {
         return document.embeds[flashId]; 
      }
   } else {
      return document.getElementById(flashId);
   }
}

function flashAutoDimensions(flashId) { // args: (flash id, max. width, max. height)
   var flashObj = getFlashObj(flashId);
   var width = flashObj.TGetProperty("/", 8);
   var height= flashObj.TGetProperty("/", 9);
   var maxWidth = (arguments[1]!=null) ? ((arguments[1]>0) ? arguments[1] : 0) : width;
   var maxHeight = (arguments[2]!=null) ? ((arguments[2]>0) ? arguments[2] : 0) : height;
   flashAutoSize(flashId, width, height, maxWidth, maxHeight);
}

function flashSetDimensions(flashId) { // args: (flash id, width, height, autoScaleFlag=true)
   var flashObj = getFlashObj(flashId);
   var width = flashObj.TGetProperty("/", 8);
   var height= flashObj.TGetProperty("/", 9);
   var maxWidth = (arguments[1]!=null) ? ((arguments[1]>0) ? arguments[1] : 0) : width;
   var maxHeight = (arguments[2]!=null) ? ((arguments[2]>0) ? arguments[2] : 0) : height;
   var autoScaleFlag = (arguments[3]!=null) ? arguments[3] : true;
   flashSetSize(flashId, width, height, maxWidth, maxHeight, autoScaleFlag);
}
