var version = "6.8.1";
var versionstr = "6.8.1";
var v = 0;
/******************************************************************************/
/* 123 Flash Chat Server Software --- Flash Client Source code                */
/* Software Version:           V6.8.1                                         */
/* Author:                     Daniel Jiang (support@123flashchat.com)        */
/* Copyright 2001-2007 by:     http://www.topcmm.com (TopCMM Software Corp.)  */
/* Support, News, Updates at:  http://www.123flashchat.com                    */
/* Last update:                Nov.2,2007                                     */
/******************************************************************************/
/**************************for proxy start*************************************/
//You should set the variable my_domain to the shared domain suffix of the domain name of the 
//URL that can access the web page containing the 123flashchat.swf and the domain
// name of httpServer host value in client.xml.
var my_domain="";
//Please don't editing following code!!!
if(my_domain==undefined||my_domain==""){try{hostStr=window.location.host;var COLON=":";my_domain=hostStr.indexOf(COLON)==-1?hostStr:hostStr.substring(0,hostStr.indexOf(COLON));}catch(e){my_domain="";}}var L=true;document.domain=my_domain;if(urlLink==undefined){var urlLink;try{urlLink=window.location.href;}catch(e){try{urlLink=document.URL;}catch(e){urlLink="";}}}function F(){var K=urlLink.indexOf(my_domain)==-1?"0":"1";window.document.topcmm_123flashchat.SetVariable("checkCometObj.cometDomain",my_domain);window.document.topcmm_123flashchat.SetVariable("checkCometObj.K",K);};function d(A){if(A.contentDocument){return(A.contentDocument);}else if(A.contentWindow){return(A.contentWindow.document);}else if(A.document){return(A.document);}else{return(undefined);}};function c(z){var v=null;var o=z;var j=z+'_div';var w='border-width:0;height:0;width:0;visibility:hidden;';var k='position:absolute;top:0;left:0;width:0;height:0;overflow:hidden;';if(document.getElementById(o)){return(document.getElementById(o));}try{var C=document.createElement("iframe");C.setAttribute("id",o);C.setAttribute("name",o);C.setAttribute("style",w);var B=document.createElement("div");B.setAttribute("id",j);B.setAttribute("style",k);B.appendChild(C);document.body.appendChild(B);if(typeof document.frames!="undefined"){v=document.frames[o];}if(!v||typeof v.nodeType=="undefined"){v=document.getElementById(o);}}catch(e){var n='<iframe id="'+o+'" name="'+o+'" style="'+w+'"><\/iframe>';if(!document.getElementById(j)){B=document.createElement("div");B.setAttribute('id',j);B.setAttribute('style',k);B.innerHTML=n;document.getElementsByTagName('DIV')[0].appendChild(B);}else{document.getElementById(j).innerHTML=n;}v=document.getElementById(o);}return v;};function J(url,f,r){try{var m=(navigator.userAgent.toLowerCase().indexOf("msie")!=-1);var g=url+"?"+f;var v=c(r);var contentDocument=d(v);}catch(l){}try{if(!contentDocument.location){contentDocument.location=g;}else{contentDocument.location.replace(g);}}catch(l){v.src=g;}};function I(i){window.document.topcmm_123flashchat.SetVariable("cometObject.xmlStr",i);};function D(){var t=navigator.userAgent.toLowerCase();window.document.topcmm_123flashchat.SetVariable("cometObject.type",t);};function G(){var t=navigator.userAgent.toLowerCase();window.document.topcmm_123flashchat.SetVariable("cometObject.wb",t);};function H(){var t=urlLink;window.document.topcmm_123flashchat.SetVariable("cometObject.url",t);}
/**************************for proxy end**************************************/
/********************for clear swf object when close the ie window start*********/
window.onunload=function(){try{var m=navigator.userAgent.toLowerCase().indexOf("msie")!=-1;if(m){var fc=document.getElementById('topcmm_123flashchat');flashchat.removeChild(fc);}}catch(e){}}
/********************for clear swf object when close the ie window end*********/
/**************************for open swf method start**************************/
var init_user;
var init_password;
var init_nickname;
var init_root;
var init_room;
var init_room_pwd;
var init_lang;
var init_skin;
var admin_mode;
var init_ad;
var loading_bkground;
var init_private;
var init_private_message;
var init_listroom;
var init_invisible;
var init_group;
var init_host;
var init_port;
var init_host_s;
var init_port_s;
var init_host_h;
var init_port_h;
var view_private;
var init_avatar;

function getParameter(arg){arg=(arg=="")?(arg+"?"):(arg+"&");return arg;}
function openSWF(urlValue,widthValue,heightValue)
{
	var indexOfSWF=urlValue.indexOf('.swf');
	var indexOfInterrogation=urlValue.indexOf('?');
	var ieURL="";
	var otherBrowserURL="";
	var swfURL="";
	var parameter="";
	if(indexOfInterrogation!=-1)
	{
		swfURL=urlValue.substring(0,indexOfInterrogation);
		parameter=urlValue.substring(indexOfInterrogation);
	}
	else
	{
		swfURL=urlValue;
	}
	if(init_user!=undefined&&parameter.indexOf("init_user")==-1)
	{
			parameter=getParameter(parameter);
			parameter+="init_user="+init_user;
	}
	if(init_password!=undefined&&parameter.indexOf("init_password")==-1)
	{
		parameter=getParameter(parameter);
		parameter+="init_password="+init_password;
	}
	if(init_nickname!=undefined&&parameter.indexOf("init_nickname")==-1)
	{
		parameter=getParameter(parameter);				
		parameter+="init_nickname="+init_nickname;
	}
	if(init_root!=undefined&&parameter.indexOf("init_root")==-1)
	{
		parameter=getParameter(parameter);	
		parameter+="init_root="+init_root;
	}
	if(init_room!=undefined&&parameter.indexOf("init_room")==-1)
	{
		parameter=getParameter(parameter);	
		parameter+="init_room="+init_room;
	}			
	if(init_room_pwd!=undefined&&parameter.indexOf("init_room_pwd")==-1)
	{
		parameter=getParameter(parameter);
		parameter+="init_room_pwd="+init_room_pwd;
	}
	if(init_lang!=undefined&&parameter.indexOf("init_lang")==-1)
	{
		parameter=getParameter(parameter);
		parameter+="init_lang="+init_lang;
	}
	if(init_skin!=undefined&&parameter.indexOf("init_skin")==-1)
	{
		parameter=getParameter(parameter);
		parameter+="init_skin="+init_skin;
	}
	if(admin_mode!=undefined&&parameter.indexOf("admin_mode")==-1)
	{
		parameter=getParameter(parameter);
		parameter+="admin_mode="+admin_mode;
	}
	if(init_ad!=undefined&&parameter.indexOf("init_ad")==-1)
	{
		parameter=getParameter(parameter);
		parameter+="init_ad="+init_ad;
	}
	if(loading_bkground!=undefined&&parameter.indexOf("loading_bkground")==-1)
	{
		parameter=getParameter(parameter);
		parameter+="loading_bkground="+loading_bkground;
	}
	if(init_private!=undefined&&parameter.indexOf("init_private")==-1)
	{
		parameter=getParameter(parameter);
		parameter+="init_private="+init_private;
	}
	if(init_private_message!=undefined&&parameter.indexOf("init_private_message")==-1)
	{
		parameter=getParameter(parameter);
		parameter+="init_private_message="+init_private_message;
	}
	if(init_listroom!=undefined&&parameter.indexOf("init_listroom")==-1)
	{
		parameter=getParameter(parameter);
		parameter+="init_listroom="+init_listroom;
	}
	if(init_invisible!=undefined&&parameter.indexOf("init_invisible")==-1)
	{
		parameter=getParameter(parameter);
		parameter+="init_invisible="+init_invisible;
	}
	if(init_group!=undefined&&parameter.indexOf("init_group")==-1)
	{
		parameter=getParameter(parameter);
		parameter+="init_group="+init_group;
	}		
	if(init_host!=undefined&&parameter.indexOf("init_host")==-1)
	{
		parameter=getParameter(parameter);
		parameter+="init_host="+init_host;
	}		
	if(init_port!=undefined&&parameter.indexOf("init_port")==-1)
	{
		parameter=getParameter(parameter);
		parameter+="init_port="+init_port;
	}		
	if(init_host_s!=undefined&&parameter.indexOf("init_host_s")==-1)
	{
		parameter=getParameter(parameter);
		parameter+="init_host_s="+init_host_s;
	}		
	if(init_port_s!=undefined&&parameter.indexOf("init_port_s")==-1)
	{
		parameter=getParameter(parameter);
		parameter+="init_port_s="+init_port_s;
	}		
	if(init_host_h!=undefined&&parameter.indexOf("init_host_h")==-1)
	{
		parameter=getParameter(parameter);
		parameter+="init_host_h="+init_host_h;
	}		
	if(init_port_h!=undefined&&parameter.indexOf("init_port_h")==-1)
	{
		parameter=getParameter(parameter);
		parameter+="init_port_h="+init_port_h;
	}					
	if(view_private!=undefined&&parameter.indexOf("view_private")==-1)
	{
		parameter=getParameter(parameter);
		parameter+="view_private="+view_private;
	}	
	if(init_avatar!=undefined&&parameter.indexOf("init_avatar")==-1)
	{
		parameter=getParameter(parameter);
		parameter+="init_avatar="+init_avatar;
	}																						
	if(indexOfSWF!=-1)
	{
		ieURL=swfURL.substring(0,indexOfSWF);
		otherBrowserURL=swfURL;
	}
	else
	{
		ieURL=swfURL;
		otherBrowserURL=swfURL+'.swf';
	}
	ieURL=ieURL+parameter;
	otherBrowserURL=otherBrowserURL+parameter;
	var m=navigator.userAgent.toLowerCase().indexOf("msie")!=-1
	if(m)//for ie, resolve the active swf problem
	{
		document.write('<DIV id="flashchat">');
		AC_FL_RunContent('codebase','http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,19,0','width',widthValue,'height',heightValue,'src',ieURL,'id','topcmm_123flashchat','quality','high','pluginspage','http://www.macromedia.com/go/getflashplayer','movie',ieURL,'name','topcmm_123flashchat','swfLiveConnect','true'); 
		document.write('</DIV>');
	}
	else
	{
		try
		{
			//if firefox use document.write('<OBJECT...'>) to embed swf object, the browser will throw SetVariable is not a method exception
			document.write('<DIV id="flashchat">');
			document.getElementById("flashchat").innerHTML='<OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,19,0" WIDTH="'+widthValue+'" HEIGHT="'+heightValue+'" id="topcmm_123flashchat"><PARAM NAME=movie VALUE="'+otherBrowserURL+'"><PARAM NAME=quality VALUE="high"><PARAM NAME="menu" value="false"><EMBED src="'+otherBrowserURL+'" quality=high menu=false WIDTH="'+widthValue+'" HEIGHT="'+heightValue+'" TYPE="application/x-shockwave-flash" PLUGINSPAGE="http://www.macromedia.com/go/getflashplayer" scale="noscale" name="topcmm_123flashchat" swLiveConnect="true"></EMBED></OBJECT>';
			document.write('</DIV>');
		}
		catch(e)
		{
			//can not use proxy
			document.write('<DIV id="flashchat"><OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,19,0" WIDTH="'+widthValue+'" HEIGHT="'+heightValue+'" id="topcmm_123flashchat"><PARAM NAME=movie VALUE="'+otherBrowserURL+'"><PARAM NAME=quality VALUE="high"><PARAM NAME="menu" value="false"><EMBED src="'+otherBrowserURL+'" quality=high menu=false WIDTH="'+widthValue+'" HEIGHT="'+heightValue+'" TYPE="application/x-shockwave-flash" PLUGINSPAGE="http://www.macromedia.com/go/getflashplayer" scale="noscale" name="topcmm_123flashchat" swLiveConnect="true"></EMBED></OBJECT></DIV>');
		}
	}
}
/**************************for open swf method end******************************/
/*******************************Adobe method start******************************/
//v1.0
//Copyright 2006 Adobe Systems, Inc. All rights reserved.
function AC_AddExtension(src, ext)
{
  if (src.indexOf('?') != -1)
    return src.replace(/\?/, ext+'?'); 
  else
    return src + ext;
}

function AC_Generateobj(objAttrs, params, embedAttrs) 
{ 
  var str = '<object ';
  for (var i in objAttrs)
    str += i + '="' + objAttrs[i] + '" ';
  str += '>';
  for (var i in params)
    str += '<param name="' + i + '" value="' + params[i] + '" /> ';
  str += '<embed ';
  for (var i in embedAttrs)
    str += i + '="' + embedAttrs[i] + '" ';
  str += ' ></embed></object>';
  document.write(str);
}

function AC_FL_RunContent(){
  var ret = 
    AC_GetArgs
    (  arguments, ".swf", "movie", "clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
     , "application/x-shockwave-flash"
    );
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_SW_RunContent(){
  var ret = 
    AC_GetArgs
    (  arguments, ".dcr", "src", "clsid:166B1BCA-3F9C-11CF-8075-444553540000"
     , null
    );
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_GetArgs(args, ext, srcParamName, classid, mimeType){
  var ret = new Object();
  ret.embedAttrs = new Object();
  ret.params = new Object();
  ret.objAttrs = new Object();
  for (var i=0; i < args.length; i=i+2){
    var currArg = args[i].toLowerCase();    

    switch (currArg){	
      case "classid":
        break;
      case "pluginspage":
        ret.embedAttrs[args[i]] = args[i+1];
        break;
      case "src":
      case "movie":	
        args[i+1] = AC_AddExtension(args[i+1], ext);
        ret.embedAttrs["src"] = args[i+1];
        ret.params[srcParamName] = args[i+1];
        break;
      case "onafterupdate":
      case "onbeforeupdate":
      case "onblur":
      case "oncellchange":
      case "onclick":
      case "ondblClick":
      case "ondrag":
      case "ondragend":
      case "ondragenter":
      case "ondragleave":
      case "ondragover":
      case "ondrop":
      case "onfinish":
      case "onfocus":
      case "onhelp":
      case "onmousedown":
      case "onmouseup":
      case "onmouseover":
      case "onmousemove":
      case "onmouseout":
      case "onkeypress":
      case "onkeydown":
      case "onkeyup":
      case "onload":
      case "onlosecapture":
      case "onpropertychange":
      case "onreadystatechange":
      case "onrowsdelete":
      case "onrowenter":
      case "onrowexit":
      case "onrowsinserted":
      case "onstart":
      case "onscroll":
      case "onbeforeeditfocus":
      case "onactivate":
      case "onbeforedeactivate":
      case "ondeactivate":
      case "type":
      case "codebase":
        ret.objAttrs[args[i]] = args[i+1];
        break;
      case "width":
      case "height":
      case "align":
      case "vspace": 
      case "hspace":
      case "class":
      case "title":
      case "accesskey":
      case "name":
      case "id":
      case "tabindex":
        ret.embedAttrs[args[i]] = ret.objAttrs[args[i]] = args[i+1];
        break;
      default:
        ret.embedAttrs[args[i]] = ret.params[args[i]] = args[i+1];
    }
  }
  ret.objAttrs["classid"] = classid;
  if (mimeType) ret.embedAttrs["type"] = mimeType;
  return ret;
}
/*******************************Adobe method end******************************/
/*********************some methods used for demo page start*******************/ 
function openFullScreenChat(url)
{
	if (document.all)
	{
		var w = screen.width - window.screenLeft - 10;
		var h = screen.height - window.screenTop;
		var win = window.open(url, "_123FullscreenDemo", "resizable=1, width="+w+",height="+h+",status=1");
		win.moveTo(0,0);
	}
	else
	{
		window.open(url, "_123FullscreenDemo", "resizable=1, fullscreen=1");
	}
}

function openPrivateWin(winId,w,h)
{
	window.open ("privatewin.html?"+winId, "privateMsg_"+winId, "height="+h+", width="+w+", top=0, left=0, toolbar=no, menubar=no, scrollbars=no, resizable=yes,location=no, status=no");
}

function openCustomLiteClient(win_width,win_height)
{
	var win_width = window.screen.width - 5;
	var win_height = window.screen.Height - 10;
	
	if(document.customForm.customsize[0].checked==true)
	{
			win_width=document.customForm.win_width.value;
			win_height=document.customForm.win_height.value;
	}
	
	if (win_width < 270)
	{
		alert("width can't be less than 270");
		return;
	}
	
	if (win_height < 200)
	{
		alert("height can't be less than 200");
		return;	
	}
	
	var init_user=document.customForm.init_user.value;
	var init_password=document.customForm.init_password.value;
	var init_room=document.customForm.init_room[document.customForm.init_room.selectedIndex].value;
	var url="lite_client.html?init_user="+init_user+"&init_password="+init_password+"&init_room="+init_room;
	if(document.customForm.customsize[0].checked==true)
	{
	  var win = window.open(url, "_123flashchat_lite", "resizable=1, width=" + win_width + ",height=" + win_height + ",status=1,top=0,left=0");
  }
	else
	{
				var win = window.open(url, "_123flashchat_fullscreen_lite", "resizable=1, fullscreen=1");
	}
}

function openCustomStandardClient()
{
	var win_width = window.screen.width - 5;
	var win_height = window.screen.Height - 10;
	if(document.customForm.customsize[0].checked==true)
	{
			win_width=document.customForm.win_width.value;
			win_height=document.customForm.win_height.value;
	}
	
	if (win_width < 634)
	{
		alert("width can't be less than 634");
		return;
	}
	
	if (win_height < 250)
	{
		alert("height can't be less than 250");
		return;	
	}
	
	var urlStr="standard.html";
	var init_user;
	var init_password="";
	var init_room;
	var init_skin=document.customForm.init_skin[document.customForm.init_skin.selectedIndex].value;
	var init_lang=document.customForm.init_lang[document.customForm.init_lang.selectedIndex].value;
	if(document.customForm.autologin[1].checked==true)
	{
			init_user=document.customForm.init_user.value;
	}
	
	if(document.customForm.roomlist[document.customForm.roomlist.selectedIndex].value=="true")
	{
			init_room="1";
	}
	
	var init_ad=document.customForm.adbanner[document.customForm.adbanner.selectedIndex].value;

	if(init_user!=undefined)
	{
		urlStr=(urlStr.indexOf("?")==-1)?urlStr+"?init_user="+init_user:urlStr+"&init_user="+init_user;	
		urlStr+="&init_password="+init_password;
	}

	if(init_room!=undefined)
	{
		urlStr=(urlStr.indexOf("?")==-1)?urlStr+"?init_room="+init_room:urlStr+"&init_room="+init_room;
		if(init_user==undefined)
		{
			init_user="guest";
		}
		urlStr+="&init_user="+init_user;
		urlStr+="&init_password="+init_password;
	}
	
	if(init_lang!="*")
	{
		urlStr=(urlStr.indexOf("?")==-1)?urlStr+"?init_lang="+init_lang:urlStr+"&init_lang="+init_lang;
	}
	urlStr=(urlStr.indexOf("?")==-1)?urlStr+"?init_skin="+init_skin:urlStr+"&init_skin="+init_skin;
	urlStr+="&init_ad="+init_ad;
	if(document.customForm.customsize[0].checked==true)
	{
		var win = window.open(urlStr, "_123flashchat_demo", "resizable=1, width=" + win_width + ",height=" + win_height + ",status=1,top=0,left=0");
  }
	else
	{
		var win = window.open(urlStr, "_123flashchat_fullscreen_demo", "resizable=1, fullscreen=1");
	}
}
var HTML_CODE_TEMPLATE='<script language="javascript" src="#javascript#"></script>\r\n<script language="javascript">\r\nopenSWF("#swfurl#","#width#","#height#");\r\n</script>\r\n<noscript>\r\n<DIV id="flashchat">\r\n<OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,19,0" WIDTH="#width#" HEIGHT="#height#" id="topcmm_123flashchat">\r\n<PARAM NAME=movie VALUE="#swfurl#">\r\n<PARAM NAME=quality VALUE="high">\r\n<PARAM NAME="menu" value="false">\r\n<EMBED src="#swfurl#" quality=high menu=false WIDTH="#width#" HEIGHT="#height#" TYPE="application/x-shockwave-flash" PLUGINSPAGE="http://www.macromedia.com/go/getflashplayer" scale="noscale" name="topcmm_123flashchat" swLiveConnect="true">\r\n</EMBED>\r\n</OBJECT>\r\n</DIV>\r\n</noscript>';	

var STANDARD_TYPE="0";
var ADMIN_TYPE="1";
var LITE_TYPE="2";
var AVATAR_TYPE="3";
var BANNER_BLUE_468_60_TYPE="4";
var BANNER_ORANGE_468_60_TYPE="5";
var BANNER_BLUE_728_90_TYPE="6";
var BANNER_ORANGE_728_90_TYPE="7";
var PPC_176_208_TYPE="8";

var JAVA_SCRIPT="123flashchat.js";
var STANDARD_SWF="123flashchat.swf";
var ADMIN_SWF="admin_123flashchat.swf";
var LITE_SWF="lite.swf";
var AVATAR_SWF="avatarchat.swf";
var BANNER_BLUE_468_60_SWF="banner/lite_blue_468_60.swf";
var BANNER_ORANGE_468_60_SWF="banner/lite_orange_468_60.swf";
var BANNER_BLUE_728_90_SWF="banner/lite_blue_728_90.swf";
var BANNER_ORANGE_728_90_SWF="banner/lite_orange_728_90.swf";
var PPC_176_208_SWF="banner/lite_ppc_176_208.swf";

var ROOT_URL=urlLink.substring(0,urlLink.lastIndexOf('/'));

var STANDARD_EMBED_CHAT_CODE=generateEmbedChatCode(ROOT_URL,STANDARD_TYPE,"*",51127,"634","476");
var STANDARD_ADMIN_EMBED_CHAT_CODE=generateEmbedChatCode(ROOT_URL,ADMIN_TYPE,"*",51127,"634","476");
var STANDARD_LITE_EMBED_CHAT_CODE=generateEmbedChatCode(ROOT_URL,LITE_TYPE,"*",51127,"440","380");
var	STANDARD_AVATAR_EMBED_CHAT_CODE=generateEmbedChatCode(ROOT_URL,AVATAR_TYPE,"*",51127,"800","600");
var	STANDARD_BANNER_BLUE_468_60_EMBED_CHAT_CODE=generateEmbedChatCode(ROOT_URL,BANNER_BLUE_468_60_TYPE,"*",51127,"468","60");
var	STANDARD_BANNER_ORANGE_468_60_EMBED_CHAT_CODE=generateEmbedChatCode(ROOT_URL,BANNER_ORANGE_468_60_TYPE,"*",51127,"468","60");
var	STANDARD_BANNER_BLUE_728_90_EMBED_CHAT_CODE=generateEmbedChatCode(ROOT_URL,BANNER_BLUE_728_90_TYPE,"*",51127,"728","90");
var	STANDARD_BANNER_ORANGE_728_90_EMBED_CHAT_CODE=generateEmbedChatCode(ROOT_URL,BANNER_ORANGE_728_90_TYPE,"*",51127,"728","90");
var	STANDARD_PPC_176_208_EMBED_CHAT_CODE=generateEmbedChatCode(ROOT_URL,PPC_176_208_TYPE,"*",51127,"176","208");

var TABLE_HEAD='<table id="browser"><tbody><tr><th><img src="img/jiant.gif" align="absmiddle" />Client Type: </th><td><select name="client_type" onchange="javascript:initGenerateEmbedChatCode(document.customForm.client_type.value);return false;"><option selected value="0">Standard Chat</option><option value="1">Admin Panel</option><option value="2">Lite Chat</option><option value="3">Avatar Chat</option><option value="4">Banner Blue(468*60)</option><option value="5">Banner Orange(468*60)</option><option value="6">Banner Blue(728*90)</option><option value="7">Banner Orange(728*90)</option><option value="8">PocketPC(176*208)</option></select></td></tr><tr><th><img src="img/jiant.gif" align="absmiddle" />Chat server host name or IP </th><td><input name="init_host" size="16" type="text" class="textinput"><br>(Leave it blank if the client and server are on the same server.)</td></tr><tr><th><img src="img/jiant.gif" align="absmiddle" />Chat server port</th><td><input name="init_port" size="16" type="text" class="textinput"><br>(Leave it blank if  you are using the default 51127 port.)</td></tr>';
var TABLE_TAIL='<tr><th><img src="img/jiant.gif" align="absmiddle" />Your web server URL where 123flashchat.swf is located.</th><td><input name="root_url" size="16" type="text" class="textinput3" value="'+ROOT_URL+'"><br>(For example, the swf file url is: http://www.youdomain.com/chat/123flashchat.swf , this field should be:http://www.youdomain.com/chat/)</td></tr></tbody><tfoot><tr><td colspan="3"><p><input type="button" value="Generate Code" onclick="generateEmbedChatCodeFromForm(document.customForm.client_type.value);return false;" /><br />The generated new code will	apprear	in	the field below.</p><p><span class="style1">Copy and paste the following code into your HTML page, at the proper location.<br></span><textarea name="embedChatCode" cols="90" rows="12\" class="textinput2" onclick="this.select()"></textarea></p></td></tr></tfoot></table>';
var STANDARD_SIZE_SETTING_HTML='<tr><th><img src="img/jiant.gif" align="absmiddle" />Client Size</th><td><input name="customsize" type="radio" value="true" checked>Width&nbsp;&nbsp;<input name="width" type="text" id="win_width" value="634" size="10" class="textinput">(Minimum: 634 pixels)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Height <input name="height" type="text" id="win_height" value="476" size="10" class="textinput">(Minimum: 476 pixels)<br /><input name="customsize" value="false" type="radio">&nbsp;&nbsp;Full Screen</td></tr>';
var ADMIN_SIZE_SETTING_HTML='<tr><th><img src="img/jiant.gif" align="absmiddle" />Client Size</th><td><input name="customsize" type="radio" value="true" checked>Width&nbsp;&nbsp;<input name="width" type="text" id="win_width" value="634" size="10" class="textinput">(Minimum: 634 pixels)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Height <input name="height" type="text" id="win_height" value="476" size="10" class="textinput">(Minimum: 476 pixels)<br /><input name="customsize" value="false" type="radio">&nbsp;&nbsp;Full Screen </td></tr>';
var LITE_SIZE_SETTING_HTML='<tr><th><img src="img/jiant.gif" align="absmiddle" />Client Size</th><td><input name="customsize" type="radio" value="true" checked>Width&nbsp;&nbsp;<input name="width" type="text" id="win_width" value="440" size="10" class="textinput"">(Minimum: 440 pixels)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Height <input name="height" type="text" id="win_height" value="380" size="10" class="textinput">(Minimum: 380 pixels)<br /><input name="customsize" value="false" type="radio">&nbsp;&nbsp;Full Screen </td></tr>';
var AVATAR_SIZE_SETTING_HTML='<tr><th><img src="img/jiant.gif" align="absmiddle" />Client Size</th><td><input name="customsize" type="radio" value="true" disabled="disabled" checked>Width&nbsp;&nbsp;<input name="width" type="text" id="win_width" value="800" size="10" readOnly="true" class="textinput"><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Height <input name="height" type="text" id="win_height" value="600" size="10" class="textinput" readOnly="true"><br /><input name="customsize" value="false" type="radio" disabled="disabled">&nbsp;&nbsp;Full Screen </td></tr>';
var BANNER_BLUE_468_60_SIZE_SETTING_HTML='<tr><th><img src="img/jiant.gif" align="absmiddle" />Client Size</th><td><input name="customsize" type="radio" value="true" disabled="disabled" checked>Width&nbsp;&nbsp;<input name="width" type="text" id="win_width" value="468" size="10" readOnly="true" class="textinput"><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Height <input name="height" type="text" id="win_height" value="60" size="10" readOnly="true" class="textinput"><br /><input name="customsize" value="false" type="radio" disabled="disabled">&nbsp;&nbsp;Full Screen</td></tr>';
var BANNER_ORANGE_468_60_SIZE_SETTING_HTML='<tr><th><img src="img/jiant.gif" align="absmiddle" />Client Size</th><td><input name="customsize" type="radio" value="true" disabled="disabled" checked>Width&nbsp;&nbsp;<input name="width" type="text" id="win_width" value="468" size="10" readOnly="true" class="textinput"><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Height <input name="height" type="text" id="win_height" value="60" size="10" readOnly="true" class="textinput"><br /><input name="customsize" value="false" type="radio" disabled="disabled">&nbsp;&nbsp;Full Screen</td></tr>';
var BANNER_BLUE_728_90_SIZE_SETTING_HTML='<tr><th><img src="img/jiant.gif" align="absmiddle" />Client Size</th><td><input name="customsize" type="radio" value="true" disabled="disabled" checked>Width&nbsp;&nbsp;<input name="width" type="text" id="win_width" value="728" size="10" readOnly="true" class="textinput"><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Height <input name="height" type="text" id="win_height" value="90" size="10" readOnly="true" class="textinput"><br /><input name="customsize" value="false" type="radio" disabled="disabled">&nbsp;&nbsp;Full Screen</td></tr>';
var BANNER_ORANGE_728_90_SIZE_SETTING_HTML='<tr><th><img src="img/jiant.gif" align="absmiddle" />Client Size</th><td><input name="customsize" type="radio" value="true" disabled="disabled" checked>Width&nbsp;&nbsp;<input name="width" type="text" id="win_width" value="728" size="10" readOnly="true" class="textinput"><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Height <input name="height" type="text" id="win_height" value="90" size="10" readOnly="true" class="textinput"><br /><input name="customsize" value="false" type="radio" disabled="disabled">&nbsp;&nbsp;Full Screen</td></tr>';
var PPC_176_208_SETTING_HTML='<tr><th><img src="img/jiant.gif" align="absmiddle" />Client Size</th><td><input name="customsize" type="radio" value="true"  disabled="disabled" checked>Width&nbsp;&nbsp;<input name="width" type="text" id="win_width" value="176" size="10"  readOnly="true" class="textinput"><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Height <input name="height" type="text" id="win_height" value="208" size="10"  readOnly="true" class="textinput"><br /><input name="customsize" value="false" type="radio" disabled="disabled">&nbsp;&nbsp;Full Screen</td></tr>';

function generateEmbedChatCodeFromForm(chatType)
{
	var init_host=document.customForm.init_host.value;
	if(init_host=="")
	{
		init_host="*";
	}
	var init_port=document.customForm.init_port.value;
	if(init_port=="")
	{
		init_port=51127;
	}
	var win_width = "100%";
	var win_height = "100%";
	if(document.customForm.customsize[0].checked==true)
	{
			win_width=document.customForm.win_width.value;
			win_height=document.customForm.win_height.value;
	}
	var rootUrl=document.customForm.root_url.value;
	var embedChatCode=generateEmbedChatCode(rootUrl,chatType,init_host,init_port,win_width,win_height);
	document.customForm.embedChatCode.value=embedChatCode;
}

function initGenerateEmbedChatCode(chatType)
{
		var innerHtmlCode="";
	  var embedCode="";
		if(chatType==ADMIN_TYPE)
		{
			innerHtmlCode=ADMIN_SIZE_SETTING_HTML;
			embedCode=STANDARD_ADMIN_EMBED_CHAT_CODE;
		}
		else if(chatType==LITE_TYPE)
		{
			innerHtmlCode=LITE_SIZE_SETTING_HTML;
			embedCode=STANDARD_LITE_EMBED_CHAT_CODE;
		}
		else if(chatType==AVATAR_TYPE)
		{
			innerHtmlCode=AVATAR_SIZE_SETTING_HTML;
			embedCode=STANDARD_AVATAR_EMBED_CHAT_CODE;
		}
		else if(chatType==BANNER_BLUE_468_60_TYPE)
		{
			innerHtmlCode=BANNER_BLUE_468_60_SIZE_SETTING_HTML;
			embedCode=STANDARD_BANNER_BLUE_468_60_EMBED_CHAT_CODE;
		}
		else if(chatType==BANNER_ORANGE_468_60_TYPE)
		{
			innerHtmlCode=BANNER_ORANGE_468_60_SIZE_SETTING_HTML;	
			embedCode=STANDARD_BANNER_ORANGE_468_60_EMBED_CHAT_CODE;
		}
		else if(chatType==BANNER_BLUE_728_90_TYPE)
		{
			innerHtmlCode=BANNER_BLUE_728_90_SIZE_SETTING_HTML;	
			embedCode=STANDARD_BANNER_BLUE_728_90_EMBED_CHAT_CODE;
		}
		else if(chatType==BANNER_ORANGE_728_90_TYPE)
		{
			innerHtmlCode=BANNER_ORANGE_728_90_SIZE_SETTING_HTML;
			embedCode=STANDARD_BANNER_ORANGE_728_90_EMBED_CHAT_CODE;
		}
		else if(chatType==PPC_176_208_TYPE)
		{
			innerHtmlCode=PPC_176_208_SETTING_HTML;	
			embedCode=STANDARD_PPC_176_208_EMBED_CHAT_CODE;
		}
		else
		{
			innerHtmlCode=STANDARD_SIZE_SETTING_HTML;		
			embedCode=STANDARD_EMBED_CHAT_CODE;
		}
		innerHtmlCode=TABLE_HEAD+innerHtmlCode+TABLE_TAIL;
		document.getElementById("setting").innerHTML=innerHtmlCode;
		document.customForm.client_type[chatType].selected=true;
		document.customForm.embedChatCode.value=embedCode;
}

function isValidPortValue(init_port)
{
		if(!(init_port>0&&init_port<=65535))
		{
			alert("Invilid chat server port value, port value must great than 0 and less than 65536");
			return false;	
		}
		else
		{
			return true;
		}
}

function generateEmbedChatCode(rootUrl,chatType,init_host,init_port,win_width,win_height)
{	

	var rootUrlLength=rootUrl.length;
	var webServerUrl="";
	if(rootUrlLength>0)
	{
			webServerUrl=rootUrl;
			var lastIndexOfSlash=rootUrl.lastIndexOf('/');
			if((rootUrlLength-1)!=lastIndexOfSlash)
			{
				webServerUrl=	webServerUrl+'/';
			}
	}
	var javascriptUrl=webServerUrl+JAVA_SCRIPT;
	var swfUrl=STANDARD_SWF;
	if(chatType==ADMIN_TYPE)
	{
		swfUrl=ADMIN_SWF;
		if (win_width < 634)
		{
				alert("width can't be less than 634");
				return STANDARD_ADMIN_EMBED_CHAT_CODE;
		}
		if (win_height < 250)
		{
				alert("height can't be less than 250");
				return STANDARD_ADMIN_EMBED_CHAT_CODE;	
		}
		if(!isValidPortValue(init_port))
		{
			return STANDARD_ADMIN_EMBED_CHAT_CODE;	
		}
	}
	else if(chatType==LITE_TYPE)
	{
		swfUrl=LITE_SWF;
		if (win_width < 440)
		{
				alert("width can't be less than 440");
				return STANDARD_LITE_EMBED_CHAT_CODE;
		}
		if (win_height < 380)
		{
				alert("height can't be less than 380");
				return STANDARD_LITE_EMBED_CHAT_CODE;	
		}
		if(!isValidPortValue(init_port))
		{
			return STANDARD_LITE_EMBED_CHAT_CODE;	
		}
	}
	else if(chatType==AVATAR_TYPE)
	{
		swfUrl=AVATAR_SWF;
		if (win_width != 800)
		{
					alert("width must be equals to 800");
				return STANDARD_AVATAR_EMBED_CHAT_CODE;
		}
		if (win_height != 600)
		{
					alert("width must be equals to 600");
				return STANDARD_AVATAR_EMBED_CHAT_CODE;	
		}
		if(!isValidPortValue(init_port))
		{
			return STANDARD_AVATAR_EMBED_CHAT_CODE;	
		}
	}
	else if(chatType==BANNER_BLUE_468_60_TYPE)
	{
		swfUrl=BANNER_BLUE_468_60_SWF;
		if (win_width != 468)
		{
				alert("width must be equals to 468");
				return STANDARD_BANNER_BLUE_468_60_EMBED_CHAT_CODE;
		}
		if (win_height != 60)
		{
				alert("height must be equals to 60");
				return STANDARD_BANNER_BLUE_468_60_EMBED_CHAT_CODE;	
		}
		if(!isValidPortValue(init_port))
		{
			return STANDARD_BANNER_BLUE_468_60_EMBED_CHAT_CODE;	
		}
	}
	else if(chatType==BANNER_ORANGE_468_60_TYPE)
	{
		swfUrl=BANNER_ORANGE_468_60_SWF;
		if (win_width != 468)
		{
				alert("width must be equals to 468");
				return STANDARD_BANNER_ORANGE_468_60_EMBED_CHAT_CODE;
		}
		if (win_height != 60)
		{
				alert("height must be equals to 60");
				return STANDARD_BANNER_ORANGE_468_60_EMBED_CHAT_CODE;	
		}
		if(!isValidPortValue(init_port))
		{
			return STANDARD_BANNER_ORANGE_468_60_EMBED_CHAT_CODE;	
		}
	}
	else if(chatType==BANNER_BLUE_728_90_TYPE)
	{
		swfUrl=BANNER_BLUE_728_90_SWF;
		if (win_width != 728)
		{
				alert("width must be equals to 728");
				return STANDARD_BANNER_BLUE_728_90_EMBED_CHAT_CODE;
		}
		if (win_height != 90)
		{
				alert("height must be equals to 90");
				return STANDARD_BANNER_BLUE_728_90_EMBED_CHAT_CODE;	
		}
		if(!isValidPortValue(init_port))
		{
			return STANDARD_BANNER_BLUE_728_90_EMBED_CHAT_CODE;	
		}
	}
	else if(chatType==BANNER_ORANGE_728_90_TYPE)
	{
		swfUrl=BANNER_ORANGE_728_90_SWF;
		if (win_width != 728)
		{
				alert("width must be equals to 728");
				return STANDARD_BANNER_ORANGE_728_90_EMBED_CHAT_CODE;
		}
		if (win_height != 90)
		{
				alert("height must be equals to 90");
				return STANDARD_BANNER_ORANGE_728_90_EMBED_CHAT_CODE;	
		}
		if(!isValidPortValue(init_port))
		{
			return STANDARD_BANNER_ORANGE_728_90_EMBED_CHAT_CODE;	
		}
	}
	else if(chatType==PPC_176_208_TYPE)
	{
		swfUrl=PPC_176_208_SWF;		
		if (win_width != 176)
		{
				alert("width must be equals to 176");
				return STANDARD_PPC_176_208_EMBED_CHAT_CODE;
		}
		if (win_height != 208)
		{
				alert("height must be equals to 208");
				return STANDARD_PPC_176_208_EMBED_CHAT_CODE;	
		}
		if(!isValidPortValue(init_port))
		{
			return STANDARD_PPC_176_208_EMBED_CHAT_CODE;	
		}
	}
	else
	{
		swfUrl=STANDARD_SWF;
		if (win_width < 634)
		{
				alert("width can't be less than 634");
				return STANDARD_EMBED_CHAT_CODE;
		}
		if (win_height < 250)
		{
				alert("height can't be less than 250");
				return STANDARD_EMBED_CHAT_CODE;	
		}
		if(!isValidPortValue(init_port))
		{
			return STANDARD_EMBED_CHAT_CODE;	
		}
	}
	if(init_host!="*")
	{
		swfUrl=(swfUrl.indexOf("?")==-1)?swfUrl+"?init_host="+init_host:swfUrl+"&init_host="+init_host;
	}
	if(init_port!=51127)
	{
		swfUrl=(swfUrl.indexOf("?")==-1)?swfUrl+"?init_port="+init_port:swfUrl+"&init_port="+init_port;
	}
	swfUrl=webServerUrl+swfUrl;
	var embedChatCode=HTML_CODE_TEMPLATE;
	while(embedChatCode.indexOf("#javascript#")!=-1)
	{
		embedChatCode=embedChatCode.replace("#javascript#",javascriptUrl);
	}
	while(embedChatCode.indexOf("#swfurl#")!=-1)
	{
		embedChatCode=embedChatCode.replace("#swfurl#",swfUrl);
	}
	while(embedChatCode.indexOf("#width#")!=-1)
	{
		embedChatCode=embedChatCode.replace("#width#",win_width);
	}
	while(embedChatCode.indexOf("#height#")!=-1)
	{
		embedChatCode=embedChatCode.replace("#height#",win_height);
	}
	return embedChatCode;
}
/****************************some methods used for demo page end*************************************/