// window size - default values (can be overwritten by passing parameters to InsertSequencePlayer function))
var g_nWMin=236,g_nHMin=177,g_nWMax=480,g_nHMax=360;
// window animation steps + speed (StepW : StepH must be set accordingly to window aspect ratio)
var g_nStepW=12,g_nStepH=9,g_nScaleTimerDelay=10;
// <div> and <object> tag ids
var g_strDivID="divPlayer",g_strObjID="XSystem";
// delay before the player is deactivated automatically after mouse left the window
var g_nDelayHide=1000;


// NOTE that <div> and <object> tags' width/height must be set properly (both absolutely)!
var g_divPlayer,g_objPlayer; // ALWAYS USE style.width/style.height WITH divPlayer!
var t_timHide;

function Player_Show() {
	if (!g_divPlayer) { g_divPlayer=document.getElementById(g_strDivID); if (!g_divPlayer) g_divPlayer=document[g_strDivID]; }
	if (!g_objPlayer) { g_objPlayer=document.getElementById(g_strObjID); if (!g_objPlayer) g_objPlayer=document[g_strObjID]; }
	clearInterval(t_timHide); if (g_objPlayer.SetPlayerLayout(1)) { g_bPlayerShown=true; ScaleTo(g_nWMax,g_nHMax); }
}
function Player_Hide() { clearInterval(t_timHide); t_timHide=setInterval(Player_DoHide,g_nDelayHide); }

function Player_DoHide() { clearInterval(t_timHide); if (g_objPlayer) g_objPlayer.SetPlayerLayout(0); g_bPlayerShown=false; ScaleTo(g_nWMin,g_nHMin); }

var g_bPlayerShown=false;
// functions called by the flash movie (DON'T CHANGE THE FUNCTION NAMES!)
function Flash_MouseEnter() { clearInterval(t_timHide); if (!g_bPlayerShown) Player_Show(); } // always stop possibly started hiding
function Flash_MouseLeave() { if (g_bPlayerShown) Player_Hide(); }

var g_nToW,g_nToH,g_objScaleTimer;
function ScaleTo(_nToW,_nToH) {
	if (g_objScaleTimer) clearInterval(g_objScaleTimer);
	g_nToW=_nToW; g_nToH=_nToH;	g_objScaleTimer=setInterval("OnScaleTimer()",g_nScaleTimerDelay);
}

function OnScaleTimer() {
	if (!g_divPlayer) clearInterval(g_objScaleTimer); else {
		var nW=parseInt(g_divPlayer.style.width),nCurW=nW,nH=parseInt(g_divPlayer.style.height),nCurH=nH;
		if (g_nToW<nW) { nW-=g_nStepW; if (nW<g_nToW) nW=g_nToW; }
		else if (g_nToW>nW) { nW+=g_nStepW; if (nW>g_nToW) nW=g_nToW; }
		if (g_nToH<nH) { nH-=g_nStepH; if (nH<g_nToH) nH=g_nToH; }
		else if (g_nToH>nH) { nH+=g_nStepH; if (nH>g_nToH) nH=g_nToH; }
		if (nCurW!=nW || nCurH!=nH) {
			g_divPlayer.style.height=nH; g_divPlayer.style.width=nW;
			g_objPlayer.height=nH; g_objPlayer.width=nW;
		}
		if (nH==g_nToH && nW==g_nToW) clearInterval(g_objScaleTimer);
	}
}

function InsertSequencePlayer(_strProductID,_strBasePath,_nWMin,_nHMin,_nWMax,_nHMax) {
	var strXMLFile="xml/xsystem_"+_strProductID.toLowerCase()+".xml";
	if (_nWMin!=undefined) g_nWMin=_nWMin;
	if (_nHMin!=undefined) g_nHMin=_nHMin;
	if (_nWMax!=undefined) g_nWMax=_nWMax;
	if (_nHMax!=undefined) g_nHMax=_nHMax;

	// flash movie insertion
	if (AC_FL_RunContent == 0) {
		alert("Diese Seite erfordert die Datei \"AC_RunActiveContent.js\".");
	} else {
		AC_FL_RunContent(
			'codebase', 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0',
			'width', g_nWMin,
			'height', g_nHMin,
			'src', ((_strBasePath) ? _strBasePath : '')+'res/XSystem',
			'quality', 'high',
			'pluginspage', 'http://www.macromedia.com/go/getflashplayer',
			'align', 'left',
			'play', 'true',
			'loop', 'true',
			'wmode', 'window',
			'devicefont', 'false',
			'id', g_strObjID,
			'scale', 'exactFit',
			'bgcolor', '#ffffff',
			'name', g_strObjID,
			'menu', 'true',
			'allowFullScreen', 'false',
			'allowScriptAccess','always',
			'movie', ((_strBasePath) ? _strBasePath : '')+'res/XSystem',
			'flashvars', 'xfile='+strXMLFile+((_strBasePath) ? '&basepath='+_strBasePath : ''),
			'salign', ''
			); //end AC code
	}
}

