var agt=navigator.userAgent.toLowerCase();
var is_major = parseInt(navigator.appVersion);
var ie = ((agt.indexOf("msie") != -1) && (agt.indexOf("opera") == -1));
var ns  = ((agt.indexOf('mozilla') != -1) && (agt.indexOf('spoofer') == -1)
				&& (agt.indexOf('compatible') == -1) && (agt.indexOf('opera') == -1)
				&& (agt.indexOf('webtv') == -1) && (agt.indexOf('hotjava') == -1));
var is_win95 = ((agt.indexOf("win95") != -1) || (agt.indexOf("windows 95") != -1));
var is_win98 = ((agt.indexOf("win98") != -1) || (agt.indexOf("windows 98") != -1));
var is_winnt = ((agt.indexOf("winnt") != -1) || (agt.indexOf("windows nt") != -1));				
var mac = (agt.indexOf("mac")!=-1);
var win = (is_win95 || is_winnt || is_win98 || 
          ((is_major >= 4) && (navigator.platform == "Win32")) ||
          (agt.indexOf("win32") != -1) || (agt.indexOf("32bit") != -1));	
var is_winnt4 = navigator.appVersion.indexOf("Windows NT 4");
var gDescription="";
var gSubTopic="";
var g_strLicense="";
var gAutoPlay = false;
var gAutoLoop = false;
var gAutoJump = true;
var g_nPageInfoCount = 0;
var g_nImageCount = 0;
var g_nSWFCount = 0;
var g_nRMCount = 0;
var g_nWMVCount = 0;
var g_tjmFileArray = new Array();
var g_nTJMIndexArray = new Array();
var g_tpsFileArray = new Array();
var g_imgFileArray = new Array();
var g_nDelayTimeArray = new Array();
var g_nEffectArray = new Array();
var g_subTitleArray = new Array();
var g_DescriptionArray = new Array();
var g_FileExtArray = new Array();
var g_nMediaIndexArray = new Array();
var g_objImageArray = new Array();
var g_objSWFArray = new Array();
var g_objRMArray = new Array();
var g_objWMVArray = new Array();
var nMediaLeft = 0;
var nMediaTop = 0;
var nMediaWidth = 0;
var nMediaHeight = 0;
var g_nCurrentPage = -1; 
var g_nLastPage = -1;    
var TimerID=911;		
var g_strLastLayer = "PICTURE";
var InitLoading = true; 
var g_TjmValid = true;
var g_TpsValid = true;
var WMP7 = false;
function getWmp() 
{
	pluginFound      = false     
	activeXFound     = false     
	plugInFound = getPlugIn("Windows","Media","Player","Plug-in")	
	activeXFound = getIEComponent("6BF52A52-394A-11d3-B153-00C04F79FAA6")
	if (plugInFound || activeXFound) {return true} else {return false}	
}
function getPlugIn() 
{	
	allFound = false
    plugInsCollection = navigator.plugins
	for (i=0;i<plugInsCollection.length;i++) {
        plugInDescription = " " + plugInsCollection[i].description
		plugInName = " " + plugInsCollection[i].name
		for (j=0;j<arguments.length;j++) {		
			if (plugInDescription.indexOf(" " + arguments[j])!=-1 || plugInName.indexOf(" " + arguments[j])!=-1) {
				allFound = true
			} else {
				allFound = false
				break
			}
		}		
		if (allFound) {return true}
    }
	return false
}
function getIEComponent(activeXClsId,minVersion) {
	return document.body.isComponentInstalled("{" + activeXClsId + "}","componentId",minVersion)
}
function GetDocumentObj(ObjName) {
	if (document.getElementById) { 
		return document.getElementById(ObjName); 
	}
	else {
		return document.all(ObjName);
	}
}
function IsEffectLayerExist()
{
	if (parseInt(GetDocumentObj("EffectLayer").style.width)  == 0 &&
		parseInt(GetDocumentObj("EffectLayer").style.height) == 0 )
		return false;
	else
		return true;
}
function GetCurrPageFromList() {
	if(MM_findObj("IndexList")){
		for(i=0; i < document.frmIndexList.IndexList.options.length; i++){
			if(document.frmIndexList.IndexList.options[i].selected == true){
				return i;
			}
		}
	}
	else
		return 0;
}
function ShowLayer(obj) {
	if (GetDocumentObj(obj))
	    GetDocumentObj(obj).style.display="";
}
function HideLayer(obj) {
	if (GetDocumentObj(obj))
	    GetDocumentObj(obj).style.display="none";
}
function HideLastMediaLayer() {
	if (g_strLastLayer == "PICTURE") {
		if (GetDocumentObj("EffectLayer"))
			GetDocumentObj("EffectLayer").style.visibility = "hidden";
	}
	else
		HideLayer(g_strLastLayer);
}
function MM_findObj(n, d) { 
  var p,i,x;  
  if(!d) d=document; 
  if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);
  }
  if(!(x=d[n])&&d.all) x=d.all[n]; 
  for (i=0;!x&&i<d.forms.length;i++) 
  	x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) 
  	x=MM_findObj(n,d.layers[i].document); 	
  return x;
}
function GetMediaType(ext) {
	if (ext=="jpg" || ext=="gif" || ext=="bmp")
		return 0;
	else if (ext=="swf")
		return 1;	
	else if (ext=="wmv")
		return 2;
	else if (ext=="rm" || ext=="ram")
		return 3;
	else
		return -1;
}
function SetExtAndIndex(FullPath) {
	var ext;
	var SplitList = FullPath.split(".");
	if (FullPath==SplitList[0])
		ext = "";
	else
		ext  = SplitList[1].toLowerCase();
	g_FileExtArray[g_nPageInfoCount] = ext;
	if (GetMediaType(ext)==0) { 
		g_objImageArray[g_nImageCount] = new Image();
		var param = new Date();
		var p = param.getTime();
		g_objImageArray[g_nImageCount].src = FullPath + "?" + p;
		g_nMediaIndexArray[g_nPageInfoCount] = g_nImageCount;
		g_nImageCount++;
	}
	else if (GetMediaType(ext)==1) { 
		g_nMediaIndexArray[g_nPageInfoCount] = g_nSWFCount;
		g_nSWFCount++;
	}
	else if (GetMediaType(ext)==2) { 
		g_nMediaIndexArray[g_nPageInfoCount] = g_nWMVCount;
		g_nWMVCount++;
	}
	else if (GetMediaType(ext)==3) { 
		g_nMediaIndexArray[g_nPageInfoCount] = g_nRMCount;
		g_nRMCount++;
	}
}
var tjmtemp=-1;
function AppendPageInfo(s_tjmFile, s_tpsFile, s_imgFile, n_DelayTime, n_Effect, s_subTitle, s_Description)
{
	if (s_tjmFile!="") tjmtemp = g_nPageInfoCount;	
	g_nTJMIndexArray[g_nPageInfoCount] = tjmtemp;
	g_tjmFileArray[g_nPageInfoCount] = s_tjmFile;
	g_tpsFileArray[g_nPageInfoCount] = s_tpsFile;
	g_imgFileArray[g_nPageInfoCount] = s_imgFile;
	g_nDelayTimeArray[g_nPageInfoCount] = n_DelayTime;
	g_nEffectArray[g_nPageInfoCount] = n_Effect;
	g_subTitleArray[g_nPageInfoCount] = s_subTitle;
	g_DescriptionArray[g_nPageInfoCount] = s_Description;
	SetExtAndIndex(s_imgFile);
	g_nPageInfoCount++;		
}
function SetAutoSetting(sSet, bAuto)
{
	sSet.toLowerCase();
	if(sSet == "ct_autoplay"){
		gAutoPlay = bAuto;
	}
	else if(sSet == "ct_autoloop"){
		gAutoLoop = bAuto;
	}
	else if(sSet == "ct_autojump"){
		gAutoJump = bAuto;
	}
}
function CenterWnd(baseW, baseH) {
  var obj=new Array("BGLayer", "CTLayer","MainTopicLayer","SubTopicLayer","DescriptionLayer","PlayWebLayer", "StopWebLayer", "PrevPageLayer", "NextPageLayer", "EffectLayer", "IndexLayer");
  var objW, objH, objX, objY;
  screenX=document.body.clientWidth;
  screenY=document.body.clientHeight;
  objW=parseInt(document.all("BGLayer").style.width);
  objH=parseInt(document.all("BGLayer").style.height);
  var i;
  for(i=0; i< obj.length; i++)
  {
  	  if (!GetDocumentObj(obj[i])) continue;
  	  objX=parseInt(GetDocumentObj(obj[i]).style.left);
  	  objY=parseInt(GetDocumentObj(obj[i]).style.top);
  	  
  	  if(objW && objH) {
  	  	if (screenX >= objW)
		   	GetDocumentObj(obj[i]).style.left = parseInt(objX+(screenX-objW)/2);
		if (screenY >= objH)
			GetDocumentObj(obj[i]).style.top = parseInt(objY +(screenY-objH)/2);
	  }
	  GetDocumentObj(obj[i]).style.visibility = "visible";
  }
    for(i=0; i < g_nSWFCount; i++){
  	  objX = parseInt(GetDocumentObj("SWFLayer"+i).style.left);
	  objY = parseInt(GetDocumentObj("SWFLayer"+i).style.top);
  	  if(objX && objY && objW && objH){
	  	if (screenX >= objW) 
	  		GetDocumentObj("SWFLayer"+i).style.left = parseInt(objX+(screenX-objW)/2);
	  	if (screenY >= objH)
	   		GetDocumentObj("SWFLayer"+i).style.top = parseInt(objY +(screenY-objH)/2);
	  }
  }
  for(i=0; i < g_nWMVCount; i++){
  	  objX = parseInt(GetDocumentObj("WMVLayer"+i).style.left);
	  objY = parseInt(GetDocumentObj("WMVLayer"+i).style.top);
	  if(objX && objY && objW && objH){
	  	if (screenX >= objW) 
	  		GetDocumentObj("WMVLayer"+i).style.left = parseInt(objX+(screenX-objW)/2);
	   	if (screenY >= objH)
	   		GetDocumentObj("WMVLayer"+i).style.top = parseInt(objY +(screenY-objH)/2);
	  }
  }
  for(i=0; i < g_nRMCount; i++){
  	objX = parseInt(GetDocumentObj("RMLayer"+i).style.left);
	objY = parseInt(GetDocumentObj("RMLayer"+i).style.top);
	if(objX && objY && objW && objH){
		if (screenX >= objW) 
			GetDocumentObj("RMLayer"+i).style.left = parseInt(objX+(screenX-objW)/2);
		if (screenY >= objH)
			GetDocumentObj("RMLayer"+i).style.top = parseInt(objY +(screenY-objH)/2);
	}
  }
  ap_showWaitMessage('waitDiv', 0); 
  document.loading.style.visibility = "hidden";
}
function StartAction()
{
	var page = 0;
	var args = StartAction.arguments;
	if (args.length >= 1){
		page = args[0];
	}
		if((page < 0) || (page >= g_nPageInfoCount)) {	
		page = 0;
	}
	if(MM_findObj("IndexList"))
		document.frmIndexList.IndexList.options[page].selected = true;
	if(gAutoPlay==true){
		PlayWeb(true);
	}
	else{
		PlayWeb(false);
	}
}
function InitCTLayer(nLeft, nTop, nWidth, nHeight, strLicense)
{
	g_strLicense = strLicense;
	var tjm = g_tjmFileArray[0]
	var tps = g_tpsFileArray[0];
	if((tps!="") || (tjm!="")) {
		document.write("<div id='CTLayer' style='position:absolute; left:"+ nLeft +"px; top:"+ nTop +"px; width:"+ nWidth +"px; height:"+ nHeight +"px; visibility:visible; z-index:20;'><script language=Javascript>showCrazyTalkPlayer('CrazyTalk', '"+ tjm +"', '"+ tps +"', "+ nWidth +", "+ nHeight +")</script></div>");
	}
	document.write( '<script FOR="CrazyTalk" Event="TpsChange()" Language="Javascript"> OnCrazyTalkTpsChanged(); </script>' );
	document.write( '<script FOR="CrazyTalk" Event="TjmChange()" Language="Javascript"> OnCrazyTalkTjmChanged(); </script>' );
	if(ie && is_major > 4){
		document.write('<script type="text/javascript">');
		document.write('document.body.addBehavior("#default#clientCaps")');
		document.write('</script>');
		WMP7 = getWmp();
	}
}
function showCrazyTalkPlayer() {
	var args=showCrazyTalkPlayer.arguments;
	autoplay=0;		
	controlstyle=0;
	textstyle=0;
	borderstyle=0;
	width=256;
	height=256;
	menustyle=1
	lifemode=1;
	ct_license = g_strLicense;
	name=args[0];	
	tjm=args[1];
	tps=args[2];
	if (args.length>=4) width=args[3];
	if (args.length>=5) height=args[4];
	if (args.length>=6) autoplay=args[5];
	if (args.length>=7) controlstyle=args[6];
	if (args.length>=8) textstyle=args[7]
	if (args.length>=9) borderstyle=args[8];
	if (args.length>=10) menustyle=args[9];
	if (args.length>=11) lifemode=args[10];
	if (args.length>=12) ct_license=args[11];
	tjm="";
	tps="";
	menustyle=0;
	if (ie && win) {
		document.write ("<object id='"+name+"'");
   		document.write ("classid='CLSID:1CC506A7-1B8D-11D4-BDD5-0060977007E0'");
   		document.write ("codebase='http://plug-in.reallusion.com/CrazyTalk.cab#version=3,5,0,0'");
		document.write ("width='"+width+"'");
		document.write ("height='"+height+"'>");
		document.write ("<param name='autoplay' value=0>");
		document.write ("<param name='controlstyle' value='"+controlstyle+"'>");
		document.write ("<param name='textstyle' value='"+textstyle+"'>");
		document.write ("<param name='borderstyle' value='"+borderstyle+"'>");
		document.write ("<param name='menustyle' value='"+menustyle+"'>");
		document.write ("<param name='lifemode' value='"+lifemode+"'>");
		document.write ("<param name='tjmname' value='"+tjm+"'>");
		document.write ("<param name='tpsname' value='"+tps+"'>");
		document.write ("<param name='License' value='"+ ct_license +"'>");
		document.write ("</object>"); 
	}
}
function DisplaySubTopic()
{
	if(g_nCurrentPage < 0) return;
	if(GetDocumentObj("SubTopicLayer")){
		if(g_subTitleArray[g_nCurrentPage] == "?")
			gSubTopic = "";
		else{
			var i = g_nCurrentPage;
			
			while(g_subTitleArray[i] == ""){
				i--;
				if(i < 0) i = g_subTitleArray.length-1;
			}
			gSubTopic = g_subTitleArray[i];
		}
		if (!InitLoading)
			GetDocumentObj("SubTopicLayer").innerHTML = gSubTopic;
	}
}
function DisplayDescription()
{
	if(g_nCurrentPage < 0) return;
	if(GetDocumentObj("DescriptionLayer")){
		if(g_DescriptionArray[g_nCurrentPage] == "?")
			gDescription = "";
		else{
			var i = g_nCurrentPage;
			
			while(g_DescriptionArray[i] == ""){
				i--;
				if(i < 0) i = g_DescriptionArray.length-1;
			}
			gDescription = g_DescriptionArray[i];
		}
		if (!InitLoading)
			GetDocumentObj("DescriptionLayer").innerHTML = gDescription;
	}
	if (InitLoading) {
		InitLoading = false;
		if (GetDocumentObj("PlayWebLayer")) {
				GetDocumentObj("PlayWebLayer").style.visibility = "hidden";
				GetDocumentObj("StopWebLayer").style.visibility = "hidden";
				GetDocumentObj("PrevPageLayer").style.visibility = "hidden";
				GetDocumentObj("NextPageLayer").style.visibility = "hidden";
			}
		if (GetDocumentObj("SubTopicLayer"))
			GetDocumentObj("SubTopicLayer").style.visibility = "hidden";
		if (GetDocumentObj("DescriptionLayer"))
			GetDocumentObj("DescriptionLayer").style.visibility = "hidden";
	}
}
function DisableButton(flag)
{
	GetDocumentObj("PlayWebLayer").disabled = flag;
	GetDocumentObj("StopWebLayer").disabled = flag;
	GetDocumentObj("PrevPageLayer").disabled = flag;
	GetDocumentObj("NextPageLayer").disabled = flag;
}
function ShowPrevNext()
{
	if(GetDocumentObj("PrevPageLayer")){
		if(g_nCurrentPage <= 0)
			GetDocumentObj("PrevPageLayer").style.visibility = "hidden";
		else
			GetDocumentObj("PrevPageLayer").style.visibility = "visible";
		if(g_nCurrentPage >= g_imgFileArray.length-1)
			GetDocumentObj("NextPageLayer").style.visibility = "hidden";
		else
			GetDocumentObj("NextPageLayer").style.visibility = "visible";
	}
}
function getMediaRect(mediaWidth, mediaHeight, nLeft, nTop, nW, nH)
{
	var scaleLeft=0, scaleTop=0, scaleWidth=0, scaleHeight=0;
	var ratioW=0, ratioY=0;
	if((nW >= mediaWidth) && (nH >= mediaHeight))
	{
		scaleWidth = mediaWidth;
		scaleHeight = mediaHeight;
	}
	else
	{
		ratioW = nW / mediaWidth;
		ratioH = nH / mediaHeight;
		if (ratioW > ratioH)
		ratioW = ratioH;
		scaleWidth  = ratioW*mediaWidth;
		scaleHeight = ratioW*mediaHeight;
	}
	scaleLeft = (nW - scaleWidth)/2;
	scaleTop = (nH - scaleHeight)/2;
	nMediaLeft = scaleLeft;
	nMediaTop = scaleTop;
	nMediaWidth = scaleWidth;
	nMediaHeight = scaleHeight;
}
function EffectInit(nLeft, nTop, nW, nH)
{
	g_nLastPage = -1;
	g_nCurrentPage = -1;
	if (GetMediaType(g_FileExtArray[0])==0)
	{
		getMediaRect(g_objImageArray[0].width, g_objImageArray[0].height, 0, 0, nW, nH);
		document.write("<div id='divEffImg' style='position:absolute; left="+nMediaLeft+"; top="+nMediaTop+";'><img name='EffectImage' width='"+ nMediaWidth +"' height='"+ nMediaHeight +"' src='"+ g_objImageArray[0].src +"' border=0 style='filter:revealtrans(duration=1, transition=-1)'></div>");
	}
	else
	{
		document.write("<div id='divEffImg' style='position:absolute;'><img name='EffectImage' width='0' height='0' src='' border=0 style='filter:revealtrans(duration=1, transition=-1)'></div>");
	}
	if (InitLoading) {
		InitLoading = false;
		if (GetDocumentObj("PlayWebLayer")) {
				GetDocumentObj("PlayWebLayer").style.visibility = "hidden";
				GetDocumentObj("StopWebLayer").style.visibility = "hidden";
				GetDocumentObj("PrevPageLayer").style.visibility = "hidden";
				GetDocumentObj("NextPageLayer").style.visibility = "hidden";
			}
		if (GetDocumentObj("SubTopicLayer"))
			GetDocumentObj("SubTopicLayer").style.visibility = "hidden";
		if (GetDocumentObj("DescriptionLayer"))
			GetDocumentObj("DescriptionLayer").style.visibility = "hidden";
	}
}
function InitMediaLayer()
{
	var nLeft = -1;
	var nTop = -1;
	var nHeight = -1;
	var nWidth = -1;
	var args = InitMediaLayer.arguments;
	if (args.length>=1) nLeft = args[0];
	if (args.length>=2) nTop = args[1];
	if (args.length>=3) nWidth = args[2];
	if (args.length>=4) nHeight = args[3];
	var styleStr = "";
	if(nLeft >= 0) styleStr = styleStr + "left:" + nLeft + "; ";
	if(nTop >= 0) styleStr = styleStr + "top:" + nTop + "; ";
	if(nWidth >= 0) styleStr = styleStr + "width:" + nWidth + "; ";
	if(nHeight >= 0) styleStr = styleStr + "height:" + nHeight + "; ";
	var nSWFLayer = 0;
	var nWMVLayer = 0;
	var nRMLayer = 0;	
	for(i=0; i < g_imgFileArray.length; i++)
	{
		if(GetMediaType(g_FileExtArray[i])==1){
			document.write("<div id='SWFLayer"+ nSWFLayer +"' style='position:absolute; display: none; "+ styleStr +"'><script language=Javascript>CreateSWF('"+g_imgFileArray[i]+"', "+ nSWFLayer +","+nWidth+","+nHeight+")</script></div>");
			g_objSWFArray[nSWFLayer]=eval("document.SWFPlayer"+nSWFLayer);			
			nSWFLayer++;
		}
		else if(GetMediaType(g_FileExtArray[i])==2)
		{
			if ( WMP7 )
				document.write("<div id='WMVLayer"+ nWMVLayer +"' style='position:absolute; display: none; "+ styleStr +"'><script language=Javascript>CreateWMV7('"+g_imgFileArray[i]+"', "+ nWMVLayer +","+ nWidth +","+ nHeight+ ")</script></div>");
			else
				document.write("<div id='WMVLayer"+ nWMVLayer +"' style='position:absolute; display: none; "+ styleStr +"'><script language=Javascript>CreateWMV6('"+g_imgFileArray[i]+"', "+ nWMVLayer +","+ nWidth +","+ nHeight+ ")</script></div>");
			g_objWMVArray[nWMVLayer]=eval("document.MediaPlayer"+nWMVLayer);
			nWMVLayer++;
		}
		else if(GetMediaType(g_FileExtArray[i])==3)
		{
			document.write("<div id='RMLayer"+ nRMLayer +"' style='position:absolute; display: none; "+ styleStr +"'><script language=Javascript>CreateRM('"+g_imgFileArray[i]+"', "+ nRMLayer +","+ nWidth +","+ nHeight+ ")</script></div>");
			g_objRMArray[nRMLayer]=eval("document.rmPlay"+nRMLayer);
			nRMLayer++;
		}
	}
}
function DisplayIndex(nSize, nWidth, nHeight)
{
	var strList="";
	document.write("<form name='frmIndexList'><select size='"+ nSize +"' name='IndexList' style='width:"+ nWidth +"px; height:"+ nHeight +"px;' onChange='GotoPage(document.frmIndexList.IndexList.selectedIndex, true)'>");
	
	for(i=0; i < g_subTitleArray.length; i++){
		if(g_subTitleArray[i] != ""){
			if(g_subTitleArray[i] != "?"){			
				strList = g_subTitleArray[i];
			}
			else {
				strList = "Talking Slide";
			}
			document.write("<option value="+ i +">"+ strList + "</option>");
		}
	}
	document.write("</select></form>");
}
function PlayCT()
{
	if(document.CrazyTalk)
		document.CrazyTalk.Play(0);
}
function StopCT()
{
	clearInterval(TimerID);
	if(document.CrazyTalk)
		document.CrazyTalk.Stop();
}
function SetCTPosition(nSec)
{
	document.CrazyTalk.SetPosition(nSec);
}
function loadTJM(sFileName) {
	if(sFileName != null)
		document.CrazyTalk.LoadTJM(sFileName);
	else
		document.CrazyTalk.UnloadTJM();
}
function loadTPS(sFileName) {
	if((sFileName == null) || (sFileName.length == 0))
	{
		document.CrazyTalk.TagMode = 0;
		document.CrazyTalk.Stop();
		document.CrazyTalk.UnloadTPS();
	}
	else{		
		document.CrazyTalk.TagMode = 255;
		document.CrazyTalk.TpsName=sFileName;
	}
}
function PlayWeb(bPlay)
{
	if(bPlay){
		GotoPage(GetCurrPageFromList(), false);
	}
	else{
		g_nLastPage = g_nCurrentPage;
		clearInterval(TimerID);
		StopCT();
		StopMedia();
	}
}
function GoPrevTopic()
{
	var page = GetCurrPageFromList() - 1;
	if (page < 0)
		page = g_nPageInfoCount-1;
	GotoPage(page, true);	
}
function GoNextTopic()
{
	var page = GetCurrPageFromList() + 1;
	if (page >= g_nPageInfoCount)
		page = 0;
	GotoPage(page, true);	
}
function CreateSWF()
{
	var args = CreateSWF.arguments;
	var nWidth = 300;
	var nHeight = 300;
	var bAutoStart = false;
	var bLoop = false;
	var ObjNo = 0;
	swfFile = args[0];	
	if (args.length>=2) ObjNo = args[1];
	if (args.length>=3) nWidth = args[2];
	if (args.length>=4) nHeight = args[3];
	if (args.length>=5) bAutoStart = args[4];
	if (args.length>=6) bLoop = args[5];
	document.write("<object id='SWFPlayer"+ ObjNo +"' classid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000' codebase='http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0'");
	document.write("width='"+ nWidth +"' height='"+ nHeight +"' data='"+ swfFile +"'>");
	document.write("<param name=movie value='"+ swfFile +"'>");
	document.write("<param name='quality' value='high'>");
	document.write("<param name='loop' value='"+ bLoop +"'>");
	document.write("<param NAME='Play' VALUE='"+ bAutoStart +"'>");
	document.write('<param name="swliveconnect" value="true">');
    document.write("<embed name='SWFPlayer"+ ObjNo +"' src='"+ swfFile +"' data='"+ swfFile +"' quality=high pluginspage='http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash' ");
    document.write("type='application/x-shockwave-flash' swliveconnect='true' width='"+ nWidth +"' height='"+ nHeight +"' loop='"+ bLoop +"' play='"+ bAutoStart +"'></embed>");
    document.write("</object>");
}
function PlaySWF()
{
	if (g_nSWFCount<=0) return;
	if(ie && win)
		g_objSWFArray[g_nMediaIndexArray[g_nCurrentPage]].Play();
	else
		g_objSWFArray[g_nMediaIndexArray[g_nCurrentPage]].Play;
}
function StopSWF(nIndex)
{
	if (g_nSWFCount<=0) return;
	if(ie && win){
		g_objSWFArray[g_nMediaIndexArray[nIndex]].Rewind();
		g_objSWFArray[g_nMediaIndexArray[nIndex]].Stop();
	}
	else{
		g_objSWFArray[g_nMediaIndexArray[nIndex]].Rewind;
		g_objSWFArray[g_nMediaIndexArray[nIndex]].Stop;
	}
}
function PlayWMV()
{
	if ( WMP7 )
		PlayWMV7();
	else
		PlayWMV6();
}
function StopWMV(nIndex)
{
	if ( WMP7 )
		StopWMV7(nIndex);
	else
		StopWMV6(nIndex);
}
function CreateWMV6()
{
	var args = CreateWMV6.arguments;
	var Controls = 0;		
	var nWidth = 300;
	var nHeight = 300;
	var bAutoStart = false;
	var bLoop = false;
	var ObjNo = 0;
	wmvFile = args[0];	
	if (args.length>=2) ObjNo = args[1];
	if (args.length>=3) nWidth = args[2];
	if (args.length>=4) nHeight = args[3];
	if (args.length>=5) bAutoStart = args[4];
	if (args.length>=6) bLoop = args[5];
	if (args.length>=7) Controls = args[6];
	document.write("<object id='MediaPlayer"+ ObjNo +"' classid='CLSID:22d6f312-b0f6-11d0-94ab-0080c74c7e95' codebase='http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=6,4,5,715'");
	document.write("standby='Loading Microsoft Windows Media Player Components...' type='application/x-oleobject' width="+ nWidth +" height=" + nHeight + ">");
	document.write("<param name='Filename' value='"+ wmvFile +"'>");
	document.write("<param name='AutoStart' value="+ bAutoStart +">");
        document.write("<param name='Loop' value='"+ bLoop +"'>");
        document.write("<param name='PlayCount' value='0'>");
        document.write("<param name='ShowControls' value='"+ Controls +"'>");
	document.write("<embed type='application/x-mplayer2' name='MediaPlayer"+ ObjNo +"' src='"+ wmvFile +"' filename='"+ wmvFile +"' width='"+ nWidth +"' height='"+ nHeight +"' ");
	document.write("pluginspage='http://www.microsoft.com/isapi/redir.dll?prd=windows&amp;sbp=mediaplayer&amp;ar=media&amp;sba=plugin&amp;' autostart="+ bAutoStart +" showcontrols='"+ Controls +"' loop='"+ bLoop +"' playcount='0'></embed></object>");
}
function PlayWMV6()
{
	if (g_nWMVCount<=0) return;
	if(ie && win)
		g_objWMVArray[g_nMediaIndexArray[g_nCurrentPage]].Play();
}
function StopWMV6(nIndex)
{
	if (g_nWMVCount<=0) return;
	if(ie && win){
		g_objWMVArray[g_nMediaIndexArray[nIndex]].Stop();
	}
}
function CreateWMV7()
{
	var args = CreateWMV7.arguments;
	var Controls = 0;		
	var nWidth = 300;
	var nHeight = 300;
	var bAutoStart = false;
	var bLoop = false;
	var ObjNo = 0;
	wmvFile = args[0];	
	if (args.length>=2) ObjNo = args[1];
	if (args.length>=3) nWidth = args[2];
	if (args.length>=4) nHeight = args[3];
	if (args.length>=5) bAutoStart = args[4];
	if (args.length>=6) bLoop = args[5];
	if (args.length>=7) Controls = args[6];
	document.write("<object id='MediaPlayer"+ ObjNo +"' classid='CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6'");
	document.write("standby='Loading Microsoft Windows Media Player Components...' type='application/x-oleobject' width="+ nWidth +" height=" + nHeight + ">");
	document.write("<param name='AutoStart' value="+ bAutoStart +">");
    document.write("<param name='Loop' value='"+ bLoop +"'>");
    document.write("<param name='PlayCount' value='0'>");
	document.write("<embed type='application/x-mplayer2' name='MediaPlayer"+ ObjNo +"' src='"+ wmvFile +"' filename='"+ wmvFile +"' width='"+ nWidth +"' height='"+ nHeight +"' ");
	document.write("pluginspage='http://www.microsoft.com/isapi/redir.dll?prd=windows&amp;sbp=mediaplayer&amp;ar=media&amp;sba=plugin&amp;' autostart="+ bAutoStart +" showcontrols='"+ Controls +"' loop='"+ bLoop +"' playcount='0'></embed></object>");
}
function PlayWMV7()
{
	if (g_nWMVCount<=0) return;
	if(ie && win) {
		g_objWMVArray[g_nMediaIndexArray[g_nCurrentPage]].URL = g_imgFileArray[g_nCurrentPage];
		g_objWMVArray[g_nMediaIndexArray[g_nCurrentPage]].stretchToFit = true;
		g_objWMVArray[g_nMediaIndexArray[g_nCurrentPage]].uiMode = "none";
		g_objWMVArray[g_nMediaIndexArray[g_nCurrentPage]].controls.Play();
	}
}
function StopWMV7(nIndex)
{
	if (g_nWMVCount<=0) return;
	if(ie && win){
		g_objWMVArray[g_nMediaIndexArray[nIndex]].controls.Stop();
	}
}
function CreateRM()
{
	var args = CreateRM.arguments;
	var Controls = "ImageWindow";		
	var nWidth = 300;
	var nHeight = 300;
	var bAutoStart = false;
	var bLoop = false;
	var ObjNo = 0;
	rmFile = args[0];	
	if (args.length>=2) ObjNo = args[1];
	if (args.length>=3) nWidth = args[2];
	if (args.length>=4) nHeight = args[3];
	if (args.length>=5) bAutoStart = args[4];
	if (args.length>=6) bLoop = args[5];
	if (args.length>=7) Controls = args[6];
	document.write("<OBJECT ID='rmPlay"+ ObjNo +"' CLASSID='clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA' HEIGHT="+ nHeight + " WIDTH="+ nWidth +">");
	document.write("<PARAM NAME='SRC' VALUE='"+ rmFile +"'>");
	document.write("<PARAM NAME='CONTROLS' VALUE='"+ Controls +"'>");
	document.write("<PARAM NAME='CENTER' VALUE='true'>");
	document.write("<PARAM NAME='AUTOSTART' VALUE='"+ bAutoStart +"'>");
	document.write("<param name='LOOP' value='"+ bLoop +"'>");
	document.write("<embed name='rmPlay"+ ObjNo +"' src='"+ rmFile +"' type='audio/x-pn-realaudio-plugin'");
	document.write("width='" + nWidth + "' height='" + nHeight + "'");
	document.write("controls='"+ Controls +"' center=true autostart="+ bAutoStart +" loop='"+ bLoop +"'></Embed>");
	document.write("</OBJECT>");
}
function PlayRM(bPlay) 
{
	if (g_nRMCount<=0) return;

	if(bPlay){
		if(ie && win)
			g_objRMArray[g_nMediaIndexArray[g_nCurrentPage]].DoPlay();
	}
	else{
		if(ie && win)
			g_objRMArray[g_nMediaIndexArray[g_nCurrentPage]].DoStop();
	}
}
function StopRM(nIndex) {
	if(ie && win)
		g_objRMArray[g_nMediaIndexArray[nIndex]].DoStop();
}
function StopMedia()
{
	var nIndex = g_nLastPage;
	if ((nIndex) < 0) return;
	switch (GetMediaType(g_FileExtArray[nIndex])) {
		case 1:
			StopSWF(nIndex);
			break;
		case 2:
			StopWMV(nIndex);
			break;
		case 3:
			StopRM(nIndex);
			break;
	};	
}
function ChangeCT()
{
	var nNewTJM = g_nTJMIndexArray[g_nCurrentPage];
	var strNewTJM = g_tjmFileArray[nNewTJM];
	var strNewTPS = g_tpsFileArray[nNewTJM];
	var bChangePage = true;
	g_TjmValid = false;
	g_TpsValid = false;
	if (strNewTJM != CrazyTalk.TjmName) 
	{
		document.frmIndexList.IndexList.disabled = true;
		DisableButton(true);
		bChangePage = false;
		StopCT(); 
		loadTJM(strNewTJM);
	}
	else
	{
		g_TjmValid = true;
	}
	if (strNewTPS != CrazyTalk.TpsName) 
	{
		document.frmIndexList.IndexList.disabled = true;
		DisableButton(true);
		bChangePage = false;
		StopCT(); 
		loadTPS(strNewTPS);
	}
	else
	{
		g_TpsValid = true;
	}
	if ( bChangePage )
	{
		document.frmIndexList.IndexList.disabled = false;
		DisableButton(false);
		ChangePageData();
	}
}	
function OnCrazyTalkTjmChanged() 
{
	g_TjmValid = true;
	if ( g_TjmValid && g_TpsValid )
	{
		document.frmIndexList.IndexList.disabled = false;
		DisableButton(false);
		ChangePageData();
	}
}
function OnCrazyTalkTpsChanged() 
{
	g_TpsValid =true;
	if ( g_TjmValid && g_TpsValid )
	{
		document.frmIndexList.IndexList.disabled = false;
		DisableButton(false);
		ChangePageData();
	}
}
function ShowPicture() {
	if( is_winnt4==-1 && g_nEffectArray[g_nCurrentPage] >= 0 && (document.getElementById ) ) { 
			if(MM_findObj("EffectImage") != null){				
			
				if (GetMediaType(g_FileExtArray[g_nLastPage])!=0){
					EffectImage.src = 0;
					EffectImage.height = 0;
					EffectImage.width = 0;
				}
				EffectImage.filters[0].transition = g_nEffectArray[g_nCurrentPage];
				EffectImage.filters[0].apply();
				EffectImage.src = g_objImageArray[g_nMediaIndexArray[g_nCurrentPage]].src;
				tmpImage = new Image();
				tmpImage.src = g_objImageArray[g_nMediaIndexArray[g_nCurrentPage]].src;
				nLeft = parseInt(GetDocumentObj("EffectLayer").style.left);
				nTop = parseInt(GetDocumentObj("EffectLayer").style.top);
				nW = parseInt(GetDocumentObj("EffectLayer").style.width);
				nH = parseInt(GetDocumentObj("EffectLayer").style.height);
				getMediaRect(tmpImage.width, tmpImage.height, 0, 0, nW, nH);
				document.EffectImage.width = nMediaWidth;
				document.EffectImage.height = nMediaHeight;
				GetDocumentObj("divEffImg").style.left = nMediaLeft;
				GetDocumentObj("divEffImg").style.top = nMediaTop;
				GetDocumentObj("divEffImg").style.width = nMediaWidth;
				GetDocumentObj("divEffImg").style.height = nMediaHeight;
				EffectImage.filters[0].play();
		}
	}
	else{	
		if(MM_findObj("EffectImage") != null){
			EffectImage.src = g_objImageArray[g_nMediaIndexArray[g_nCurrentPage]].src;
			tmpImage = new Image();
			tmpImage.src = g_objImageArray[g_nMediaIndexArray[g_nCurrentPage]].src;
			nLeft = parseInt(GetDocumentObj("EffectLayer").style.left);
			nTop = parseInt(GetDocumentObj("EffectLayer").style.top);
			nW = parseInt(GetDocumentObj("EffectLayer").style.width);
			nH = parseInt(GetDocumentObj("EffectLayer").style.height);
			getMediaRect(tmpImage.width, tmpImage.height, 0, 0, nW, nH);
			document.EffectImage.width = nMediaWidth;
			document.EffectImage.height = nMediaHeight;
			GetDocumentObj("divEffImg").style.left = nMediaLeft;
			GetDocumentObj("divEffImg").style.top = nMediaTop;
			GetDocumentObj("divEffImg").style.width = nMediaWidth;
			GetDocumentObj("divEffImg").style.height = nMediaHeight;
		}
	}
}	
function GotoPage(nPage, bStopCurrent)
{
	g_nLastPage = g_nCurrentPage;	
	g_nCurrentPage = nPage;
	clearInterval(TimerID);
	StopMedia();
	if (g_nCurrentPage < 0) return;
	if (g_nCurrentPage >= g_nPageInfoCount) {
		if (gAutoLoop) {
			g_nLastPage = g_nCurrentPage;
			g_nCurrentPage=0;
			StopCT();
		}
		else return;
	}
	ShowPrevNext();
	if (bStopCurrent) 
		StopCT();
	ChangeCT();
}
function ChangePageData()
{
	var nNewTJM = g_nTJMIndexArray[g_nCurrentPage];
	var j;
	var timeCount=0;
	for(j=0; j<g_nCurrentPage; j++) {
		if(g_nTJMIndexArray[j] == nNewTJM)
			timeCount += g_nDelayTimeArray[j];
	}
	SetCTPosition(timeCount*1000);
	PlayCT();
	if(MM_findObj("IndexList")){
		for(i=0; i < document.frmIndexList.IndexList.options.length; i++){
			if(document.frmIndexList.IndexList.options[i].value == g_nCurrentPage){
				document.frmIndexList.IndexList.options[i].selected = true;
				break;
			}
		}
	}
	DisplaySubTopic();
	DisplayDescription();
	HideLastMediaLayer();
	if ( IsEffectLayerExist() ) {
		if (GetMediaType(g_FileExtArray[g_nCurrentPage])==0){
			if(GetDocumentObj("EffectLayer")){
				GetDocumentObj("EffectLayer").style.visibility = "visible";
				g_strLastLayer = "PICTURE";
			}
			ShowPicture();
		}	
		else if(GetMediaType(g_FileExtArray[g_nCurrentPage])==1){
			g_strLastLayer = "SWFLayer"+g_nMediaIndexArray[g_nCurrentPage];
			ShowLayer(g_strLastLayer);
			PlaySWF();
		}
		else if(GetMediaType(g_FileExtArray[g_nCurrentPage])==2){
			g_strLastLayer = "WMVLayer"+g_nMediaIndexArray[g_nCurrentPage];
			ShowLayer(g_strLastLayer);			
			g_objWMVArray[g_nMediaIndexArray[g_nCurrentPage]].style.width = parseInt(GetDocumentObj("EffectLayer").style.width);
			g_objWMVArray[g_nMediaIndexArray[g_nCurrentPage]].style.height = parseInt(GetDocumentObj("EffectLayer").style.height);
			PlayWMV();
		}
		else if(GetMediaType(g_FileExtArray[g_nCurrentPage])==3){
			g_strLastLayer = "RMLayer"+g_nMediaIndexArray[g_nCurrentPage];
			ShowLayer(g_strLastLayer);
			PlayRM(true);
		}
	}
	if (!gAutoJump) {
		clearInterval(TimerID);
		TimerID = setInterval("StopCT()", g_nDelayTimeArray[g_nCurrentPage]*1000);
		return;
	}

	TimerID = setInterval("GotoPage(g_nCurrentPage+1, false)", g_nDelayTimeArray[g_nCurrentPage]*1000);
}
