var _CLIENTTIMEOUTERROR="Problem loading data.";
var _ASK_SAVE_PARAMETER_DATA="You have unsaved data beside current control. Do you want to save it also?";
var _ASK_SAVE_PARAMETER_DATA_GLOBAL="You have unsaved data. Do you want to save it?";
var _ASK_DISCARD_PARAMETER_DATA="You have unsaved data in parameters. Do you want to discard your changes?"
function ById(id){return document.getElementById(id)}
////////////GENERAL/////////////
function getBrowserEvent(e){
	var evt=new Object();
    if(navigator.userAgent.indexOf('MSIE')>=0){
		evt.target=event.srcElement;
		evt.event=event;
	}
	else{
		evt.target=e.target;
		evt.event=e;
	}
	return evt;
}
///////FOCUS//////
function checkSubmitOnEnter(e){
	var evt=getBrowserEvent(e);
	var obj=evt.target;
	if(evt.event && obj){	
		var btnId=obj.getAttribute("CSsubmitControlId");
		if(btnId){
			var btn=ById(btnId);
			if(btn && (evt.event.keyCode==13)){
				if(obj.value !=null && obj.value.length>0)
					btn.click();
				return false;
			}
		}
	}
	return true;
}
function registerClickEvent(txtId, btnId){
	var txt=ById(txtId);
	var btn=ById(btnId);
	if(txt){
		txt.setAttribute("CSsubmitControlId", btnId)
		txt.onkeypress=new Function("e", "return checkSubmitOnEnter(e);");
	}	
}
////FOCUS///////
var CSChangedParameters='\t';
var CSParametersSaveButton=new Array();
function CSParameterChange(obj, propName, defValue){
	eval('var curValue=obj.'+propName+'.toString();');
	defValue=unescape(defValue)
	if(defValue !=curValue)
		CSChangedParameters=CSChangedParameters+obj.id+'\t';
	else
		CSChangedParameters.replace('\t'+obj.id+'\t', '\t');
}
function CSIsAnyUnsavedParams(sbmtid){
	if(CSChangedParameters !='\t'){
		var unsaved=CSChangedParameters.split('\t');
		for(var i=1; i<unsaved.length - 1; i++){	
			var sbid=CSParametersSaveButton[unsaved[i]];
			if(sbid && sbid !=sbmtid)
				return true
		}
	}
	return false;
}
function checkForUnsavedParameters(saveButtonId){
	if(CSChangedParameters !='\t')
	{
		if(saveButtonId){
			if(CSIsAnyUnsavedParams(saveButtonId))
				CSSaveAll(_ASK_SAVE_PARAMETER_DATA);
		}
		else
			CSSaveAll(_ASK_SAVE_PARAMETER_DATA_GLOBAL);
	}
	return true;
}
function CSSaveAll(msg){
	var res=true //confirm(msg);
	var hd=ById('saveAllParameters');
	hd.value=res ? "1" : "0";
	return res;
}
///////Parameters Saving/////////////
function ShowEditBlock(objid,id){
	var param=ById(id);
	var obj=ById(objid);
	if (param.style.display=='none'){
		param.style.display=''
		obj.innerHTML=obj.innerHTML.replace("edit", "close")
	}
	else{
		param.style.display='none'
		obj.innerHTML=obj.innerHTML.replace("close", "edit")
	}	
	var s="s";
}
///////////Customization Pane////////
function togglecp(cid, catId){
	var el=ById(cid+'_dvChild');
	if(el){
		var cp=el.style;
		var invis=(cp.display=='none');
		cp.display=invis ? '': 'none';
		var img=ById(cid+'_img')
		if (img)
			if (invis)
				img.src=img.src.replace('right', 'down')
			else
				img.src=img.src.replace('down', 'right')
		var str=getCookie("ts");
		if(!str)str="0";
		str=updateHEXBit(str, catId, invis);
		setCookie("ts", str);
		var Load=el.getAttribute('Load');
		LoadMenu(el);
	}
}
function togglecp2(cid, catId){
	var el=ById(cid+'_dvChild');
	if(el){
		var cp=el.style;
		var invis=(cp.display=='none');
		cp.display=invis ? '': 'none';
		var img=ById(cid+'_img')
		if (img)
			if (invis)
				img.style.backgroundPosition='0 -115px';
			else
				img.style.backgroundPosition='0 -127px';
		var str=getCookie("ts");
		if(!str)str="0";
		str=updateHEXBit(str, catId, invis);
		setCookie("ts", str);
		var Load=el.getAttribute('Load');
		LoadMenu(el);
	}
}
function LoadMenu(el){
	var Load=el.getAttribute('Load');
	if (Load)
		if (el.getAttribute('DataLoaded')=='0'){
			ById('CA_dataTransfer').src='/_/hp/Controls/AsyncMenu.aspx?CID='+el.id+'&Menu='+Load;
			setTimeout("_TFAIL('"+el.id+"')", 5000);
		}
}
function addBlock(obj,id){
	if(!CSIsAnyUnsavedParams(null) || confirm(_ASK_DISCARD_PARAMETER_DATA)){
		var hnb=getServerElement('hnb');
		hnb.value=obj+(id?'|'+id:'');
		submitForm(obj);	
	}
	return false;
}
function addCustomRSSBlock(){
	if(!CSIsAnyUnsavedParams(null) || confirm(_ASK_DISCARD_PARAMETER_DATA)){
		var hdCust=getServerElement('hdCustomRSS');
		hdCust.value="1";
		submitForm(hdCust);	
	}
}
//////////Customization Pane//////
function updateHEXBit(str, n, value){
	var hexN=parseInt(n / 4);
	var pHex=n % 4;
	while(str.length<=hexN)
		str="0"+str;
	var strInd=str.length - hexN - 1;
	var hexPart=str.substr(strInd, 1);
	var st=parseInt(hexPart, 16);
	st=value ? (st | (1<<pHex)) : (st & (~(1<<pHex)));
	str=str.substr(0, strInd)+st.toString(16)+str.substr(strInd+1);
	while(str.length>1 && str.substr(0, 1)=="0")
		str=str.substr(1);
	return str;
}
////////ASYNC LOADING////////
function _CP(destId, sourceID){
	var dest=ById(destId);
	var source=ById(sourceID);
	if(source && dest){
		dest.setAttribute("DataLoaded", "1");
		dest.innerHTML=source.innerHTML;
	}
}
function _CPD(destId, data){
	var dest=ById(destId);
	if(dest){
		dest.setAttribute("DataLoaded", "1");
		dest.innerHTML=data;
	}
}
function _TFAIL(id){
	var ctrl=ById(id);
	if(ctrl){	
		var attr=ctrl.getAttribute("DataLoaded");
		if(attr !="1")
			ctrl.innerHTML=_CLIENTTIMEOUTERROR
	}
}


///////Customization Usage///////
var Cust_Used_Text='Customization Used 0%';
function _CUP(val, maxval){
	var ctrl=ById("CustUsedText");
	var pcnt=parseInt(val * 100 / maxval).toString();
	if(ctrl && maxval) ctrl.innerHTML=Cust_Used_Text.replace('0',pcnt);
	ById('CustUsedSlider').style.width=parseInt(val * 163 / maxval + 2)+'px';
	var ectrl=ById("currentCustomizationErrorMsg");
	var isError=(val<0 || val>maxval);
	if(ectrl){ectrl.style.display=isError ? "inline" : "none";}
}
function _CUSE(msg){
	var ctrl=ById("currentCustomizationErrorMsg");
	if(ctrl)ctrl.innerHTML=msg;
}

// drag drop.js
var dragEvent = null;
var isMacIE5 = (navigator.platform.indexOf ("Win32") == -1 && navigator.appName == "Microsoft Internet Explorer")?1:0;
function DADSaveConfig(de){
	if(dragEvent == null || !dragEvent.control.Dragged)
		return;
	var strdata = "";
	var colIndex = 0;
	for(var i in dragEvent.columns){
		var col = dragEvent.columns[i];
		var rowIndex = 0;
		if(col != null)
			for(var j = 0; j < col.childNodes.length; j++){
				var el = col.childNodes[j];
				if(dragEvent.control.isSupported(el)){
					var acid=el.getAttribute("ACID")
					strdata+=acid+"="+colIndex.toString()+rowIndex.toString()+";";
					rowIndex++;
				}
			}
		colIndex ++;
	}
	var frame = _getE(dragEvent.Params["frame"])
	if(frame)
		frame.src = dragEvent.Params["path"] + "/UpdateClientConfiguration.aspx?data=" + escape(strdata);;
}
//////////////////////////////////////////////////////////////////////////////////
function DADInitControls(cols, headers, path, frameID){
	dragEvent = new DragMouseEvent(headers);
	dragEvent.Params["path"] = path;
	dragEvent.Params["frame"] = frameID;
	dragEvent.OnFinish = new Function("de", "DADSaveConfig(de)");  	
	for(var i in cols)
		dragEvent.columns[cols[i]] = _getE(cols[i]);
	for(var i in headers){
		var id = headers[i];
		var hdr_obj = document.getElementById(id);		
		var dc_id = hdr_obj.getAttribute('DC');		
		dragEvent.blocks[dc_id] = _getE(dc_id);
		hdr_obj.style.cursor="move";
		hdr_obj.onmousedown = new Function("e", "return dragEvent.Start(e);");  	
	}
}
function _offsetE(a, b){
	var c = 0;
	while(a != null){
		c += a["offset"+(b?"Left":"Top")];
		a = a.offsetParent
	}
	return c;
}

function _getE(id){return document.getElementById(id);}
function _getX(obj){
	var x = obj.offsetLeft + obj.parentNode.offsetLeft;
	return x;
}
function _getY(obj){
	var y = obj.offsetTop + obj.parentNode.offsetTop;
	return y;
}
function DragPoint(col, row){
	this.Col = col;
	this.Row = row;
}
function DragControl(e){
	this.dragNodeType = 'DIV';
	this.dragEvent = e;
	this.mc = null;
	this.dragContainer = e.getDragContainer();
	this.dx = 0;
	this.dy = 0;
	this.mcPos = null;
}
DragControl.prototype={
	"getCoordinates":function(obj){
		var colIndex = 0;
		for(var i in this.dragEvent.columns){
			var col = this.dragEvent.columns[i];
			var rowIndex = 0;
			if(col != null)
				for(var j = 0; j < col.childNodes.length; j++){
					var el = col.childNodes[j];
					if(el == obj)
						return new DragPoint(colIndex, rowIndex);
					else
					if(this.isSupported(el))
						rowIndex ++;
				}
			colIndex ++;
		}
		return null;
	},
	"PrepareDrag":function(){
		var obj = this.dragEvent.target;
		var e = this.dragEvent.event;
		this.mc = this.getContainer(obj);
		this.mcPos = this.getCoordinates(this.mc);
		var dc = this.dragContainer 
		this.dx = e.clientX - _offsetE(this.mc, true);
		this.dy = e.clientY - _offsetE(this.mc, false);
		dc.innerHTML = this.mc.innerHTML;
		dc.className = this.mc.className;
		dc.backgroundColor = this.mc.backgroundColor
		var cc = e.clientX;
		dc.style.left =  _offsetE(this.mc, true);
		dc.style.top =   _offsetE(this.mc, false);		
		dc.style.height = this.mc.offsetHeight;
		dc.style.width = this.mc.offsetWidth;
		if(navigator.platform == "Win32" || navigator.userAgent.indexOf('Gecko') >= 0){
			dc.style.filter="alpha(Opacity=75)"
			dc.style.opacity=0.75;	
		}
	
	},
	"Drag":function(applyDrag){
		var obj = this.dragEvent.target;
		var e = this.dragEvent.event;
		var dc = this.dragContainer;
		dc.style.left = e.clientX - this.dx;
		dc.style.top = e.clientY - this.dy;
		if(applyDrag)this.DragOver();
	},
	"DragOver":function(){	
		var dc = this.dragContainer;
		var e = this.dragEvent.event;
		var mode ;
		var neighbour;
		var colparent;
		if(e.clientX == this.cacheX && e.clientY == this.cacheY)
			return;
		else{
			this.cacheX = e.clientX;
			this.cacheY = e.clientY;
		}
		var canAppend = false;		
		var l1 = dc.offsetLeft;
		var t1 = dc.offsetTop;
		var l2 = _offsetE(dc,true);
		var t2 = _offsetE(dc,false);		
		var minx = 1000000;
		var miny = 1000000;
		var nearestCol = null;
		for(var i in this.dragEvent.columns){
			var col = this.dragEvent.columns[i];
			if(col != null){
				var xx = l1-_offsetE(col,true);
				if(xx < 0) xx = -xx;
				if(xx<minx){
					minx = xx;
					nearestCol = col;
				}
			}
		}
		if(nearestCol != null){
				for(var j = 0; j < nearestCol.childNodes.length; j++){
					var el = nearestCol.childNodes[j];
					if(!this.isSupportedSimple(el))
						continue;
					var yy = t1-_offsetE(el,false);
					if(yy < 0) yy = -yy;
					if(yy<miny){
						miny=yy;
						neighbour=el;
					}
				}
		}	
		if(neighbour!=null  && (this.mc.nextSibling!=neighbour && this.mc!=neighbour))
			neighbour.parentNode.insertBefore(this.mc, neighbour);
	},
	"Contains": function(parent, child){
		var i = 0;
		for(i = 0; i < parent.childNodes.length; i++)
			if(parent.childNodes[i] == child)
				return true;
		return false;
	},
	"EndDrag":function(){
		var mcPos = this.getCoordinates(this.mc);
		this.Dragged = false;
		if(this.mcPos != null && mcPos != null)
			this.Dragged = this.mcPos.Col != mcPos.Col || this.mcPos.Row != mcPos.Row;
		this.mc = null;
		this.dragContainer.innerHTML = "";
		this.dragContainer.style.height = 0;
		this.dragContainer.style.width = 0;
	},
	"getContainer":function(obj){
		var headers = this.dragEvent.headers;
		var tmpObj = obj;
		do{
			for(var i = 0; i < headers.length; i++)
				if(tmpObj.id == headers[i]){
					var pid = tmpObj.getAttribute('DC')
					return _getE(pid);
				}
			tmpObj = tmpObj.parentNode;
		}
		while(tmpObj.parentNode);
		return null;
	},
	"isSupported":function(obj){	
		return obj.nodeName == this.dragNodeType && this.dragEvent.blocks[obj.id] == obj;
	},
	"isSupportedSimple":function(obj){	
		return obj.nodeName == this.dragNodeType;
	}		
}
//////////////////////////EVENT////////////////////////////////////////////////////////
function DragMouseEvent(headers){
	this.headers = headers;
	this.columns = new Array();
	this.blocks = new Array();
	this.DC = null;
	this.Params = new Array();
}
DragMouseEvent.prototype={
	"getDragContainer":function (){
		if(this.DC == null){
			/*
			var n = document.createElement("DIV");
			n.class='dragContainer';
			n.style.position="absolute";
			n.style.cursor="move";
			n.style.backgroundColor="#ffffff";
			n.style.paddingBottom="0px";
			n.style.left="0px";
			n.style.top="0px";
			document.body.appendChild(n)
			*/
			var n = ById("DragContainer");
			this.DC = n;		
		}
		return this.DC;
	},
	"Init":function (e){
		var evt = getBrowserEvent(e);
		this.target = evt.target;
		this.event = evt.event; 
	},
	"Start" : function(e){
		this.Init(e);
		this.oldMouseMove = document.onmousemove;		
		this.oldMouseUp = document.onmouseup;
		this.control = new DragControl(this);
		this.control.PrepareDrag();
		document.onmousemove = new Function("e", "return dragEvent.Move(e);");  	
		document.onmouseup = new Function("e", "return dragEvent.End(e);");  
		return false;
	},
	"Move" : function(e){
		this.Init(e);
		this.control.Drag(!isMacIE5);
		if(document.selection)document.selection.empty();
		return false;
	},
	"End" : function(e){
		document.onmousemove = this.oldMouseMove 	
		document.onmouseup = this.oldMouseUp
		if(isMacIE5)this.control.Drag(true);
		this.control.EndDrag();
		if(typeof(this.OnFinish) == "function")
			this.OnFinish(this);
		this.control = null;
		this.event = null;
		this.target = null;
		if(document.selection)document.selection.empty();
		return false;
	}
}

//bookmarks.js
var ccbContentContainer=null;
var ccbTemplateContainer=null;
var ccbHiddenForSerialize=null;
var ccbBookmarksArray=new Array();

function cbHtmlEncode(a){var b=a;return b.replace(/</g,"&lt;").replace(/>/g,"&gt;");}

function cbAddClick(nid, uid){
	var nm=ById(nid);
	var url=ById(uid);
	if(nm && url){
		if(nm.value.length==0) nm.value=url.value;
		if(ccbBookmarksArray.push)
			ccbBookmarksArray.push(new Array(cbHtmlEncode(nm.value), cbHtmlEncode(url.value)));
		else
			ccbBookmarksArray[ccbBookmarksArray.length]=new Array(cbHtmlEncode(nm.value), cbHtmlEncode(url.value));
		nm.value=""
		url.value="http://"
		cbUpdateContent(false);
	}
}
function cbDeleteClick(index){
	if(confirm('Delete this bookmark?')){
		if(ccbBookmarksArray.splice)
			ccbBookmarksArray.splice(index, 1);
		else	{
			var tmpArray=new Array();
			var j=0;
			for(var i=0; i<ccbBookmarksArray.length; i++)
				if(i !=index) tmpArray[j++]=ccbBookmarksArray[i];
			ccbBookmarksArray=tmpArray;
		}
		cbUpdateContent(false);
	}
}

function cbInitalize(cid, tid, hid, arr){
	ccbContentContainer=ById(cid);
	ccbTemplateContainer=ById(tid);
	ccbHiddenForSerialize=ById(hid);
	ccbBookmarksArray=arr;
	cbUpdateContent(true);
}
function cbUpdateContent(first){
	//Clear Old items
	var content="";
	var hValue="";
	var tmplt=ccbTemplateContainer.innerHTML;
	for(var i=0; i<ccbBookmarksArray.length; i++){
		var name=ccbBookmarksArray[i][0];
		var url=ccbBookmarksArray[i][1];
		var itemTmplt=tmplt;		
		itemTmplt=itemTmplt.replace("__name__", name);
		itemTmplt=itemTmplt.replace("__url__", url);
		itemTmplt=itemTmplt.replace("__click__", "cbDeleteClick("+i+");return false;");
		//Seriazliing
		hValue+="<"+name+">"+url;
		content+=itemTmplt;		
	}	
	if(first) ccbHiddenForSerialize.setAttribute("defValue", escape(hValue));
	ccbHiddenForSerialize.value=hValue;
	if(!first){
		var defValue=ccbHiddenForSerialize.getAttribute("defValue");
		CSParameterChange(ccbHiddenForSerialize, 'value', defValue);
	}	
	ccbContentContainer.innerHTML=content;
}
function DisplayBookmarks(){
	for(var i=0; i<cbArr.length; i++){
		var name=cbArr[i][0];
		var url=cbArr[i][1];
		document.write('<a href="'+url+'">'+name+'</a><br>')
	}
}

//////// match up

var mu_left_selected=0;
var mu_answers=[null,null,null,null,null];
function mu_click_a(b){
	ById('mu_left').style.visibility='hidden';
	ById('mu_right').style.visibility='';
	for (var i in mu_answers)
		ById('mu_a'+i).style.border='1px black solid';
	b.style.border='2px red solid';
	mu_left_selected=b.id.substr(4, 1);
}
function mu_click_b(b){
	ById('mu_left').style.visibility='';
	ById('mu_right').style.visibility='hidden';
	var match=b.id.substr(4, 1);
	for (var i in mu_answers){
		if (mu_answers[i]==match) mu_answers[i]=null;
		ById('mu_b'+i).style.backgroundColor='white';
	}
	mu_answers[mu_left_selected]=match;
	for (var i in mu_answers)
		if (mu_answers[i]!=null) ById('mu_b'+mu_answers[i]).style.backgroundColor=ById('mu_a'+i).style.backgroundColor;
}
function mu_clear(){
	mu_answers=[null,null,null,null,null];
	for (var i in mu_answers) 
		ById('mu_b'+i).style.backgroundColor='white';
}
function mu_submit(){
var loc='http://www.thefreedictionary.com/_/MatchUp.aspx?res='+escape(mu_answers);
for (var i=0;i<=4;i++){
	loc+='&tfd_a'+i+'='+escape(ById('mu_a'+i).innerHTML)
	loc+='&tfd_b'+i+'='+escape(ById('mu_b'+i).innerHTML)
}
top.location=loc;
}
//// hangman
var tfd_hm_word='';
var tfd_hm_guess='';
var tfd_hm_You_Lost='Sorry, you lost.';
var tfd_hm_You_Won='You won!';
function tfd_hm_update(){
	var input=document.fHP.hm_input;
	var c='';
	for (var i=0;i<input.value.length;i++){
		c=input.value.substr(i,1).toUpperCase();
		if (tfd_hm_guess.indexOf(c)<0){
			tfd_hm_guess+=c;		
			if (tfd_hm_word.indexOf(c)<0) ById('hm_wrong').innerHTML+=c
			break;
		}	
	}
	input.value=c;
	for (var i=0;i<ById('hm_wrong').innerHTML.length;i++)
		ById('tfd_hm_td'+i).style.backgroundColor='transparent';
	ById('hm_word').innerHTML='';
	var gamelost=ById('tfd_hm_td9').style.backgroundColor=='transparent';
	for (var i=0;i<tfd_hm_word.length;i++)
	ById('hm_word').innerHTML+=(tfd_hm_guess.indexOf(tfd_hm_word.substr(i,1))>=0 || gamelost?tfd_hm_word.substr(i,1):'_');
	if (ById('hm_word').innerHTML.indexOf('_')<0){
		if (gamelost){
			document.tfd_hm_img.src='http://img.tfd.com/m/hangman_l.gif';	
			ById('hm_result').innerHTML=tfd_hm_You_Lost;
		}
		else {
			document.tfd_hm_img.src='http://img.tfd.com/m/hangman_w.gif';	
			ById('hm_result').innerHTML=tfd_hm_You_Won;
			for (var i=0;i<=9;i++)
				ById('tfd_hm_td'+i).style.backgroundColor='transparent';
		}
		input.disabled=true;
		ById('tfd_hm_a').style.visibility='';
	}
}
var tfd_hm_cnt=0;
function tfd_hm_init(c){
	document.tfd_hm_img.src='http://img.tfd.com/m/hangman.gif'
	var bgcolor=ById('CA_HM_0_trDz').getAttribute("BGColor");
	if (!bgcolor) bgcolor='white';
	if (c || tfd_hm_cnt==1)
		for (var i=0;i<=9;i++)
		ById('tfd_hm_td'+i).style.backgroundColor=bgcolor;
	tfd_hm_cnt+=1;
}
function tfd_hm_refresh(){
	tfd_hm_guess='';
	ById('tfd_hm_a').style.visibility='hidden';
	if (tfd_hm_cnt) tfd_hm_init(1);
	tfd_hm_cnt+=1;
	var input=document.fHP.hm_input;
	input.disabled=false;
	ById('hm_result').innerHTML='';
	input.value='';
	ById('hm_wrong').innerHTML='';
	tfd_hm_guess='';
	tfd_hm_update();
	if (!IE)
		window.setTimeout('ById(\'tfd_hm_tbl\').style.width=\'99.9px\'', 300)
}
function tfd_hm_start(word){
	if (getCookie('h'))
	dw('<scr'+'ipt language="JavaScript" src="/_/WoD/hangmanjs.aspx?f=1&lang='+PageLang+'&r='+Math.random()+'"></scr'+'ipt>');
	else {
	document.cookie='h=1';
	tfd_hm_word=word;
	window.setTimeout('tfd_hm_refresh()',100);
	}
}
function BGColorPal(id) {
var colors=['White','#F8F8F8','#F0F0F0','#FEF2F2','#FFF6F1','#FFFBF1','#FEFFF1','#F9FFF1','#F4FFF1','#F1FFF3','#F1FFF8','#F1FFFD','#F1FDFF','#F1F8FF','#F1F3FF','#F4F1FF','#F9F1FF','#FEF1FF','#FFF1FB','#FFF1F6'];
document.write('<table class=BGColorPal border=1 cellpadding=0 cellspacing=0 style="float:left"><tr>');
for (var i=0;i<colors.length;i++){
	if (i==colors.length/2) document.write('</tr><tr>');
	document.write('<td bgcolor="'+colors[i]+'" onclick="ById(\''+id+'\').value=\''+colors[i]+'\';ById(\''+id+'\').style.backgroundColor=\''+colors[i]+'\'">&nbsp;</td>');
}
document.write('</tr></table>');
}
//SPELLING BEE
var tfd_bee_word;
var tfd_bee_sound;
var tfd_bee_tot=0;
var tfd_bee_corr=0;
var tfd_bee_level=2;
var tfd_bee_no=Math.floor(Math.random()*100000);
function tfd_bee_answer(){
	var answ=ById('tfd_bee_answ');
	if (answ.innerHTML.length>20) return;
	answ.innerHTML='<a href="http://www.thefreedictionary.com/'+escape(tfd_bee_word)+'">'+tfd_bee_word+'</a>';
	var a=ById('tfd_bee_uword');
	if (a.value.toLowerCase()==tfd_bee_word.toLowerCase()) {
		a.className='tfd_bee_correct';
		tfd_bee_corr+=1;
	}
	else
		a.className='tfd_bee_wrong';
	tfd_bee_tot+=1;
	ById('tfd_bee_score').innerHTML='score: '+Math.round(tfd_bee_corr*100/tfd_bee_tot)+'%';
}
function tfd_bee_new(){
var scr = document.createElement('script');
var a=ById('tfd_bee_uword');
a.className='tfd_bee_na';
a.value='';
ById('tfd_bee_sound').innerHTML='';
ById('tfd_bee_def').innerHTML='<b>please wait...</b>';
ById('tfd_bee_answ').innerHTML='&nbsp;';
scr.src = 'http://www.thefreedictionary.com/_/wod/bee-js.aspx?l='+tfd_bee_level+'&n='+tfd_bee_no;
tfd_bee_no+=1
scr.type = 'text/javascript';
scr.defer = true;
document.getElementsByTagName('head').item(0).appendChild(scr);
return false;
}
function tfd_level_click(l){
    if (l.value!=tfd_bee_level) {
    tfd_bee_level=l.value;
    tfd_bee_new();
    }
}
function tfd_bee_load(word, sound, def){
    tfd_bee_word=word;
    ById('tfd_bee_sound').innerHTML=tfd_bee_play(sound);
    ById('tfd_bee_def').innerHTML=def;
}
function tfd_bee_play(snd){
	if(flashInstalled())
		return '<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" width="100%" height="100%"><param name="movie" value="http://img.tfd.com/m/sound.swf"><param name="menu" value="false"><param name="wmode" value="transparent"><param name="FlashVars" value="sound_src=http://img.tfd.com/hm/mp3/'+snd+'.mp3&image_src=http://img.tfd.com/m/flags/40_plain.jpg"><embed src="http://img.tfd.com/m/sound.swf"  FlashVars="sound_src=http://img.tfd.com/hm/mp3/'+snd+'.mp3&image_src=http://img.tfd.com/m/flags/40_plain.jpg" menu="false" width="100%" height="100%" wmode="transparent" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer"></object>';
	else
		return '<a href="javascript:play(\''+snd+'\')" onMouseOver="return m_over(\'Click to hear pronunciation\')" onMouseOut="m_out()"><img alt="Pronunciation" align=absbottom src="http://img.tfd.com/games/spellbee_play.gif"></a>';
}
function add2g(t,tl,g){if (!g) g='google.com';dw('<div style="float:right"><a title="'+tl+'" target=_blank rel=nofollow href="http://www.'+g+'/ig/add?moduleurl=http%3A//www.thefreedictionary.com/_/WoD/'+t+'-module.xml"><span class="img A feed_icon"></span></a></div>')}
function add2all(t){
dw('<div style="float:right"><a title="Add to Google" target=_blank rel=nofollow href="http://www.google.com/ig/add?moduleurl=http%3A//www.thefreedictionary.com/_/WoD/'+t+'-module.xml"><span class="img A feed_icon"></span></a>');
dw('<a target=_blank rel=nofollow href="http://e.my.yahoo.com/config/cstore?.opt=content&.url=http%3A//www.thefreedictionary.com/_/WoD/rss.aspx'+(t=='wod'?'':'?type='+t)+'&.page=p1" title="Add to My Yahoo!"><span class="img A feed_icon" style="width:11px;background-position:-57px -18px;"></span></a>');
dw('<a target=_blank rel=nofollow href="/_/WoD/rss.aspx'+(t=='wod'?'':'?type='+t)+'" title="RSS feed source"><span class="img A feed_icon" style="width:11px;background-position:-68px -18px;"></span></a>');
dw('</div>')}