var IE = document.all?true:false
var objroot = IE ? document.all: document;

//mouse tracking
if (!IE) document.captureEvents(Event.MOUSEMOVE)
document.onmousemove = getMouseXY;
var tempX = 0;
var tempY = 0;
function getMouseXY(e) 
{
	if (!e) var e = window.event;
	if(!IE) 
	{  
    	tempX = e.pageX;
    	tempY = e.pageY;
	}
	else
	{ 
		if (document.documentElement && document.documentElement.scrollTop)
		{theLeft = document.documentElement.scrollLeft;theTop = document.documentElement.scrollTop;}
		else if (document.body)
		{theLeft = document.body.scrollLeft;theTop = document.body.scrollTop;}
    	tempX = event.clientX + theLeft;
    	tempY = event.clientY + theTop;
	}  
  	if (tempX < 0){tempX = 0}
  	if (tempY < 0){tempY = 0}  
  	return true
}

// Handle all the FSCommand messages in a Flash movie.
function enginput_DoFSCommand(command, args) {
	if(command=="outmal")
	{sendkeys(unescape(args));}
	else if(command=="ineng")
	{objroot.frmE2M.eng123.value=unescape(args);}
}
// Hook for Internet Explorer.
if (navigator.appName && navigator.appName.indexOf("Microsoft") != -1 && navigator.userAgent.indexOf("Windows") != -1 && navigator.userAgent.indexOf("Windows 3.1") == -1) {
	document.write('<script language=\"VBScript\"\>\n');
	document.write('On Error Resume Next\n');
	document.write('Sub enginput_FSCommand(ByVal command, ByVal args)\n');
	document.write('	Call enginput_DoFSCommand(command, args)\n');
	document.write('End Sub\n');
	document.write('</script\>\n');
}

mallen=0;
function sendkeys(msg)
{
//alert(msg);
collector=document.getElementById("eng2mal_collector");
sec=msg.split("!1!");
for(i=1;i<sec.length;i++)
{
	if(sec[i]=="") //means space within the msg
	{
	collector.innerHTML+="<a class=malsel href='javascript:void(0);'>&nbsp;</a>";
	}
	else
	{
	mallen++;
	v=sec[i].split("!2!");
	if(v.length==1) //symbols!
	{
		collector.innerHTML+="<span name=l"+mallen+" id=l"+mallen+" onMouseOver=javascript:varient(this);> <a class=malsel href=javascript:void(0);>"+v[0]+"</a></span><input type=hidden name=m"+mallen+" id=m"+mallen+" value='"+v[0]+"'>";			
	}
	else
	{
		v[1]=unescape(v[1]);
		collector.innerHTML+="<span name=l"+mallen+" id=l"+mallen+" onMouseOver=javascript:varient(this);><a class=malsel href=javascript:void(0);>"+v[1]+"</a></span><input type=hidden name=m"+mallen+" id=m"+mallen+" value='"+v[0]+"'>";	
	}
	}
}
showhide("vwnd","hidden");
}

var vwnd=document.getElementById("vwnd");
var lsel;
var html="";
function varient(n)
{
	lsel=n;
	ecode=document.getElementById("m"+n.id.substr(1));
	w=ecode.value;
	//alert(w);
	
	w3=n.innerHTML;
	reg=/[\<]a class=[\"\']?malsel[\"\']? href=[\"\']?javascript:void[\(]0[\)][\;][\"\']?[\>]/i;
	w3=w3.replace(reg,"");
	reg=/<[\/]a[\>]/i;
	w3=w3.replace(reg,"");
	w3=w3.replace(" ","");
		
	html="<table cellspacing=1 cellpadding=1 bgcolor=#BBBBBB width=40px>";

	//ii and ee & oo and uu variation
	w1=w.substr(0,w.length-2);
	w2=w.substr(w.length-2,2);
	if(w1!="")
	{	
	if(w2=="ii")
	{
		tmp=w3.substr(0,w3.length-1);		
		vadd(tmp,w1,"ee");
	}
	if(w2=="ee")
	{
		tmp=w3.substr(1);		
		vadd(tmp,w1,"ii");
	}	
	if(w2=="uu")
	{
		tmp=w3.substr(0,w3.length-1);		
		vadd(tmp,w1,"oo");
	}
	if(w2=="oo")
	{
		tmp=w3.substr(1).replace('\x6D','');		
		vadd(tmp,w1,"uu");
	}		
	}

	//e ,i and o variations
	w1=w.substr(0,w.length-1);
	w2=w.substr(w.length-1,1);	
	if(w1!="")
	{
	if(w2=="e" && w.substr(w.length-2,2)!="ee")
	{		
		tmp=w3.substr(1);		
		vadd(tmp,w1,"ee");
	}
	if(w2=="i" && w.substr(w.length-2,2)!="ii")
	{		
		tmp=w3.replace("\x6E","");		
		vadd(tmp,w1,"ii");
	}		
	if(w2=="o" && w.substr(w.length-2,2)!="oo")
	{		
		tmp=w3.substr(1).replace("\x6D","");		
		vadd(tmp,w1,"oo");
	}	
	}
	
	w1=w.substr(0,3);
	w2=w.substr(3);
	switch(w1)
	{
	case "ndh": vadd('\xB4',w1,w2);vadd('\xB5',w1,w2);
	}

	w1=w.substr(0,2);
	w2=w.substr(2);
	switch(w1)
	{
	case "tt": vadd('\xAB',w1,w2);vadd('\x54',w1,w2);vadd('\xE4',w1,w2);break;
	case "nn": vadd('\x57',w1,w2);vadd('\xAE',w1,w2);vadd('\xAA',w1,w2);vadd('\xF3',w1,w2);break;
	case "ny": vadd('\x52',w1,w2);vadd('\x57\x79',w1,w2);break;	
	case "th": vadd('\x58',w1,w2);vadd('\xAF',w1,w2);break;		
	case "sh": vadd('\x69',w1,w2);vadd('\x6A',w1,w2);break;
	case "sw": vadd('\x69\x7A',w1,w2);vadd('\x6A\x7A',w1,w2);break;	
	case "dh": vadd('\x5A',w1,w2);vadd('\x5B',w1,w2);break;		
	case "ll": vadd('\xF1',w1,w2);vadd('\x66',w1,w2);vadd('\xC5',w1,w2);break;
	case "ee": vadd('\x47',w1,"skip");vadd('\x43\x75','ii',"skip");break;
	case "ch": vadd('\xA8','cch',w2);vadd('\x4E','ch',w2);break;			
	}

	w1=w.substr(0,1);
	w2=w.substr(1);
	switch(w1)
	{
	case "n": vadd('\x5C',w1,w2);vadd('\x52',"ny",w2);vadd('\x57',w1,w2);break;
	case "t": vadd('\x53',w1,w2);vadd('\x58','th',w2);vadd('\xAB','tt',w2);break;
	case "d": vadd('\x53',"t",w2);vadd('\x58','th',w2);vadd('\x55','dd',w2);vadd('\x5A',w1,w2);break;		
	case "r": vadd('\x63',w1,w2);vadd('\x64',w1,w2);break;
	case "s": vadd('\x69',"sh",w2);vadd('\x6B',w1,w2);break;		
	case "l": vadd('\x65',w1,w2);vadd('\x66',w1,w2);break;	
	case "e": vadd('\x43',w1,"skip");vadd('\x46',w1,"skip");break;		
	case "k": vadd('\x49',w1,w2);vadd('\xA1',"kk",w2);vadd('\xA6',w1,w2);break;
	case "g": vadd('\x4B',w1,w2);vadd('\x4C',"gh",w2);vadd('\x4A',"kh",w2);break;	
	case "m": vadd('\x61',w1,w2);break;
	}
	
	//single letters
	switch(w)
	{
	case "a": vadd('\x41','','skip');vadd('\x42','','skip');break;
	case "l": vadd('\xC4',w1,'skip');break;
	case "n": vadd('\xAC',w1,'skip');break;
	case "nn": vadd('\xAC',w1,'skip');break;			
	}
	
	html+="<tr><td bgcolor=#AA1111><a class=link2 href='javascript:void(0);' onClick=javascript:mdelchar('"+n.id.substr(1)+"');>delete</a></td></tr>";	
	html+="</table>";	
	vwnd.innerHTML=html;;
	showhide("vwnd","visible");
	vwnd.style.left=(tempX-10)+"px";
	vwnd.style.top=(tempY+5)+"px";
}

function vadd(m,a,b)
{
	var c="";
	switch(b)
	{
	case "a": c=m;vadd(m,a,'aa');break;
	case "aa": c=m+"m";break;
	case "e": c="s"+m;break;
	case "ee": c="t"+m;break;
	case "i": c=m+"n";break;
	case "ii": c=m+"o";break;
	case "o": c="s"+m+"m";break;
	case "oo": c="t"+m+"m";break;
	case "u": c=m+"p";break;
	case "uu": c=m+"q";break;
	case "ai": c="ss"+m;break;
	case "au": c=m+"u";break;
	case "am": c=m+"w";break;
	}

	if(b.substr(0,1)=="r") //kr varients
	{
		vadd(m+"\x79",a+"r","skip");
		vadd("\x7B"+m,a+"r",b.substr(1));
	}		
	
//	ecode=document.getElementById("m"+lsel.id.substr(1));
	//alert((a+b)+"-"+ecode.value); && ecode.value!=(a+b)

	//if((a.length==1 && b=="") || b=="skip"){c=m;}
	if(b=="skip"){c=m;}
	if(b==""){c=m+"v";}
	
	if(c!="")
	{
	html+="<tr><td bgcolor=#FCFCFC><a class=malsel href='javascript:void(0);' onClick=javascript:vsel('"+(c.replace("\\","\\\\"))+"','"+a+b+"');>"+c+"</a></td></tr>";
	}
}

function vsel(c,d)
{
	showhide("vwnd","hidden");
	lsel.innerHTML="<a class=malsel href='javascript:void(0);'>"+c+"</a>";
	
	ecode=document.getElementById("m"+lsel.id.substr(1));
	ecode.value=d;
}

function hidevwnd()
{
	vwnd.style.visibility="hidden";
}

function showhide(layer_ref,state) //state=visible or hidden
{
	if (document.all) {eval( "document.all." + layer_ref + ".style.visibility = state");}
	if (document.layers) { document.layers[layer_ref].visibility = state;}
	if (document.getElementById && !document.all) 
	{
		tmp= document.getElementById(layer_ref);
		tmp.style.visibility = state;
	}
}

function mdelchar(id)
{
obj=document.getElementById("l"+id);
obj.innerHTML="";
showhide("vwnd","hidden");
}

function mdelline()
{
obj=document.getElementById("eng2mal_collector");
obj.innerHTML="";
showhide("vwnd","hidden");
}

function mal2eng()
{
obj=document.getElementById("eng2mal_collector");
txt=obj.innerHTML;
regexp=/value=[\'\"]?[^\'\"\> ]*[\'\"\> ]?/gi;
eng=txt.match(regexp);
eword="";
for(i=1;i<=eng.length;i++)
{
	txt=eng[i-1].replace(/[\"\']/g,"").substr(6);
	eword+=txt;
}
//alert(eword);
}

function getMalString()
{
	obj=document.getElementById("eng2mal_collector");
	txt=obj.innerHTML;
	regexp=/[\>][^\<]+[\<][\/]a[\>]/gi;
	eng=txt.match(regexp);
	eword="";
	for(i=1;i<=eng.length;i++)
	{
		txt=eng[i-1].replace(/([\>\<]|[\/]a)/gi,"");
		eword+=txt;
	}
	return eword;
}

function submitmal()
{
eword=getMalString();
//alert(eword);return;
document.frmE2M.mal123.value=eword;
document.frmE2M.submit();
}