//
//             Copyright (c) 2002, 2003 Smartlink Corp.
//                       All rights reserved.
//

var m_form      = null;
var m_langsCtrl = null;
var m_dicCtrl   = null;
var m_data      = null;
var m_clipboard = null;

var m_sourceFrame = null, m_sourceForm = null, m_sourceText = null;
var m_targetFrame = null, m_targetForm = null;
var m_iActiveForm = 0;

var m_autodecode   = false;
var m_autospell    = false;
var m_autocheck    = false;
var m_autoback     = false;
var m_autotranslit = false;
var m_backWindow   = null;



var m_parent = getParent();

// toolbar params
var m_curEl      = "";
var m_curFrame   = "";
var m_curLang    = "";
var m_fspell     = 0;
var m_clientName = "";
var m_ln         = ""
var m_skin       = ""

var m_interval = null;
var ALLProviders="promt google microsoft ";
var curPROVIDERS=ALLProviders;

var PROMTpairs="en/fr,en/de,en/pt,en/ru,en/es,fr/en,fr/ru,fr/es,de/en,de/ru,pt/en,ru/en,ru/fr,ru/de,ru/es,es/en,es/fr,es/ru";
var MSpairs="ar,bg,zh,zt,ca,cs,da,nl,en,et,fi,fr,de,el,ht,iw,hi,hu,id,it,ja,ko,lv,lt,no,pl,pt,ro,ru,sk,sl,es,sv,th,tr,uk,vi";
var GOOGLEpairs="af,sq,be,hr,tl,gl,is,ga,mk,ms,mt,fa,sr,sw,cy,yi";

FOCUS="source";

var m_options = [ "autodecode",  "autospell", "alwaysback", "autotranslit", "autoreverse"];


function onclose()
{
	//  for punchout
//  window.open("http://translation2.paralink.com/images/s.gif", "waitFrame");
	window.close();
}

function finish()
{
	if(m_backWindow)
		m_backWindow.close();
}


function init () {

   setCookie("advr",0);
   // if (isDialog ())
   //    document.body.style.padding = "10px";
   if (!m_form) {
      // adjustWindowSize ();
      window.focus ();
      m_form = document.forms ["form"];
   }
   if(m_form.clientName) {
      m_clientName	= m_form.clientName.value;
   }
   if(m_form.skin) {
    m_skin = m_form.skin.value;
   }
  if(m_form.ln) {
    m_ln = m_form.ln.value;
   }
     
   loadData ();
   loadSettings();
   
   var text = ""; // get text to translate
   if (window.opener && m_form.ctrl.value) {
      var textCtrl = m_form.ctrl.value;
      textCtrl = getDocElementById (opener.document, textCtrl);
      text = (textCtrl ? textCtrl.value : "");
   }

   else if (window.textToTranslate) {
   	text = window.textToTranslate;
   }
   else if (m_parent.textToTranslate) {
   	text = m_parent.textToTranslate;
   }
	else if(m_form.text.value) {
		text = m_form.text.value;
	}
   else if (text = getQueryParam (location.href, "text")) {
      text = unescape (text);
   }
   if(m_parent.splash) {
	 try {m_parent.splash(); m_parent.splash = null;} catch (err) {};
	} 
    if (window.splash) {
		try { splash(); } catch (err) {};
   }
   translate (text, m_form.dir.value);
    if (window.spylo)  {
		spylog_up();
	}
  
	enableSubmit ();
}

function loadSettings()
{	
	var options = m_form.options.value.split(";");
		for(var i= 0; i<options.length; i++) {
		var opt = options[i].split("=");		
		if(opt.length<2 || !m_form[opt[0]])
			continue;
		var ctrl = 	m_form[opt[0]];
		ctrl.value = opt[1];
		if(ctrl.type.toLowerCase() == "checkbox") {
			ctrl.checked = (opt[1]=="yes" ? true : false);
		}
	}
	init_backwindow();
}

function loadData () {

   var dir = getQueryParam (location.href, "dir");
   if (!dir)
      dir = m_form.dir.value;
   m_langsCtrl = m_form.langs;
   m_dicCtrl   = m_form.dic;

   m_data = m_form.data.value.split ("\t");
   var ctrLen = m_data.length;
 //   if(m_form.translit.value =="yes") {
	 ctrLen++;
 //   }

  //!!!!!!   setListLength (m_langsCtrl, ctrLen); // This line has been removed to organize the list of languages in the drop-down menu !!!!!

   for (var i = 0; i < m_data.length-1; i++) {
      m_data [i] = m_data [i].split (";");
      var values = m_data [i] [0].split (",");
      setListItem (m_langsCtrl, i, values [0], values [1]);
   }

   if(m_form.autotranslit.value =="yes") {
      setListItem (m_langsCtrl, ctrLen-1, TEXT_DIR_TRANSLIT, "ru/trl");
   }

   setDirValue (dir);   
   onFocusFrame (0);
  
  if(m_sourceForm && !slfloater)
    m_sourceForm.text.focus();
   m_form.dir.value = dir; // restore dir, if it was changed
}

function setDirValue (dirValue) {
//   m_form.dir.value = dirValue;
//  dirValue = dirValue.replace("alt_","");

 //  var dirIndex = 0;
  if(m_langsCtrl) { 
   var dirIndex = Math.max(m_langsCtrl.selectedIndex, 0);
   var dirs = m_langsCtrl.options;
   for (var i = 0; i < m_langsCtrl.length; i++) {
      if (dirs [i].value == dirValue) 
         dirIndex = i;
   }
   m_langsCtrl.selectedIndex = -1; // To prevent bug in Netscape 6.0
   m_langsCtrl.selectedIndex = dirIndex;
   onDirChanged ();
   }

}
   
function onLoadFrame (index) {
 	  if(! browser.ie && m_interval) {
 	    return;
 	  }
// virk 
   if(window.initFocus) {
		initFocus();
	} 
// end of virk


   if (index == 0) {
      m_sourceFrame = getFrame ("source");
      m_sourceForm  = m_sourceFrame.document.forms ["form"];
      m_sourceText  = m_sourceForm.text.value;
      setToolbarParams(index);
   }
   else {                    
      m_targetFrame = getFrame ("target");
      m_targetForm  = m_targetFrame.document.forms ["form"];

      if (m_targetForm.dir.value)
         setDirValue (m_targetForm.dir.value);
	  if(m_targetForm.source.value)	
	  	m_sourceForm.text.value = m_targetForm.source.value;
/*		
	  if(m_targetForm.back.value) {
	  	 if( m_form.back_translation)	
		  	m_form.back_translation.value = m_targetForm.back.value;
		 else
		 	showBackWindow(m_targetForm.back.value);
		}
*/
	  if(m_targetForm.back.value) { 

	  	 showBackWindow(m_targetForm.back.value,m_targetForm.sh.value);
		}
        enableSubmit ();

/*
	  if(m_targetForm.actions.value == "spelldlg") {
	  	if (confirm(TEXT_MSG_SPELL_ERRORS)){
	  	  doSpell();
	  	  if(browser.ie) {
	  	    onCloseSpeller();
	  	  }
	  	  else {
	  	    	m_interval=window.setInterval(speller_closed, 100);
	  	  }
	  	}
	  	else {
		    translate();
		  }
	  }
*/

	  if(m_targetForm.actions.value == "spelldlg") {
//	  	if (confirm(TEXT_MSG_SPELL_ERRORS)){
	  	  doSpell();
//		  }
//               translate();

	  }



   }
 }

function enableSubmit (enable) {
   if (m_form)
      enableControl (m_form.go, enable);
}

function onFocusFrame (index) {
   m_iActiveForm = index;

   var frameSource = getDocElementById (document, "source");
   var frameTarget = getDocElementById (document, "target");
	if(!frameSource || !frameTarget) {
		return;
	}
   frameSource.className= (index ? border_passive : border_active);


   if(!browser.ie)  var sourceCtrl = frameSource.contentWindow.document.form.text;
   else                             var sourceCtrl = frameSource.document.form.text;
                                    
var targetCtrl = null


   if(!browser.ie)  frameTarget.contentWindow.document.form.text;
   else	var targetCtrl = frameTarget.document.form.text;


setElementStyle (sourceCtrl, "color", (index ? textcolor_passive : textcolor_active ) );
frameTarget.className= (index ?  border_active : border_passive ); 

if(targetCtrl)
   setElementStyle (targetCtrl, "color", (index ? textcolor_active : textcolor_passive ) );
   setToolbarParams(index);
}


function onDirChanged () {

   if(m_langsCtrl.value.substring(0,3) == "ru/")  m_form.autodecode.disabled = false;
   else                                           {m_form.autodecode.checked = 0;m_form.autodecode.disabled = true;}

   if(m_langsCtrl.value.substring(2,5) == "/ru" ) m_form.autotranslit.disabled = false;
   else                                           {m_form.autotranslit.checked = 0;m_form.autotranslit.disabled = true;}


var langsAr = m_langsCtrl.value.split("/");

if(langsAr[0] == "en" || langsAr[0] == "fr" || langsAr[0] == "de" || langsAr[0] == "it" || langsAr[0] == "pt" || langsAr[0] == "ru" || langsAr[0] == "es" || langsAr[0] == "uk"){
  	m_form.autospell.disabled = false;
}
else
{
 	m_form.autospell.checked = 0;m_form.autospell.disabled = true;
}


/*
   if(m_langsCtrl.value.substring(0,2) == "zh" || m_langsCtrl.value.substring(0,2) == "zt" || m_langsCtrl.value.substring(0,2) == "nl" || m_langsCtrl.value.substring(0,2) == "el" || m_langsCtrl.value.substring(0,2) == "ja" || m_langsCtrl.value.substring(0,2) == "ko"){
        if(m_langsCtrl.value.substring(4,7) == "en/" || m_langsCtrl.value.substring(4,7) == "fr/" || m_langsCtrl.value.substring(4,7) == "de/" || m_langsCtrl.value.substring(4,7) == "it/"  || m_langsCtrl.value.substring(4,7) == "pt/"){
             	m_form.autospell.disabled = false;
        }
        else
 		{m_form.autospell.checked = 0;m_form.autospell.disabled = true;}

   }
   else                                           m_form.autospell.disabled = false;

 */

   if (m_dicCtrl) {
      var dirIndex = Math.max (m_langsCtrl.selectedIndex, 0);
      var dicValue = getListValue (m_dicCtrl);
      var dicIndex = 0;
      var dics = m_data [dirIndex].slice (1);
      setListLength (m_dicCtrl, dics.length);
      
      for (var i = 0; i < dics.length; i++) {
         var values = dics [i].split (",");
         setListItem (m_dicCtrl, i, values [1], values [0]);
         if (values [0] == dicValue)
            dicIndex = i;
      }
      m_dicCtrl.selectedIndex = dicIndex;
   }
   var lastDir = m_form.dir.value;
   m_form.dir.value = getListValue (m_langsCtrl, "");
   setToolbarParams(m_iActiveForm);
  /* if (lastDir != m_form.dir.value)
      translate();
	*/  
}
   

function confirmation(LIMIT,text) {
var answer = confirm(TEXT_MSG_LIMIT_START + " "+ LIMIT + " " + TEXT_MSG_LIMIT_END +"\nThe text will be trimmed.")
	if (answer){
                text = text.substring(0, LIMIT-1); 
                window.frames['source'].document.form.text.value=text;
                return text;
	}
	else{
		return -1;
	}

}


function translate (text, dir) {
 if(LangsBulder() == false){shortCut();return false;}
 if(PROVIDER == "google"){GOOGLEREDIRECT();return false;}
 if(PROVIDER == "microsoft"){MSREDIRECT();return false;}

 if(window.frames['source'].document.form.text.value != "") document.getElementById('loading').style.display='block';

   if (!m_sourceForm || !m_targetForm)
      return false;
   if (typeof (dir) == "undefined")
      dir = getListValue (m_langsCtrl, "");
   if (text)
      m_sourceForm.text.value = text;
   else
      text = m_sourceForm.text.value;
   if (strtrim (text) == "") {
      m_targetForm.text.value = "";
	  if(m_form.back_translation)
		m_form.back_translation.value = "";
      return true;
   }
	setCookie("dir",dir,"01-01-2030");	
	testAutoOptions(dir);
	setOptions();

   if (text.length > REDIR_LIMIT && REDIR_LIMIT < LIMIT) {
	REDIRECT();

   }else{

    if(text.length > LIMIT){text = confirmation(LIMIT, text); if(text==-1) return false;}
   }



   if(dir == "ru/trl") {
   		return translit(text);
   }

   setFOCUS(1);
   painter(PROVIDER);


if(dir == "") 	dir = document.form.langs1.value+"/"+document.form.langs2.value;

   TTS_OnOff(dir);

   enableSubmit (false);
   setTimeout (enableSubmit, m_form.timeout.value); //3000
   
   m_targetForm.clientID.value = m_form.clientID.value;
   m_targetForm.appID.value    = m_form.appID.value;
   m_targetForm.source.value   = text;
   m_targetForm.text.value     = "";
   m_targetForm.dir.value      = dir;
   m_targetForm.provider.value = PROVIDER;

//   m_targetForm.z.value        = m_form.z.value;
//   m_targetForm.height.value   = m_form.h.value;
   m_targetForm.PX.value       = m_form.PX.value;
   m_sourceForm.PX.value       = m_form.PX.value;
//  alert(">>." + m_targetForm.height.value);
//   m_sourceForm.SRC.value       = text;

   m_targetForm.options.value  = m_form.options.value;
   m_targetForm.actions.value  = (m_autodecode? 'decode ' : '' ) + (m_autocheck? 'check ' : '' )+ (m_autospell? 'spell ' : '' )  + 'translate' + (m_autoback? ' back' : '' ) + (m_autotranslit? ' translit' : '' ) ;


//SlideUp(700);

   if(m_form.back_translation)
   	m_form.back_translation.value = "";
 
	if (m_dicCtrl)

      m_targetForm.dic.value = getListValue (m_dicCtrl);
	m_targetForm.submit ();
	m_targetForm = null;  
   return true;

}

function SlideUp(pix){
//alert(getCookie('advr'));
 if(document.getElementById('adv').style.display!='block' && getCookie('advr')==0){
  setTimeout('adv()',50);
  for (i=0;i<pix;i++) setTimeout('moveme('+(pix+26-i)+')',i);
  setTimeout('moveme('+(pix+26-i)+')',i);
  setTimeout('moveme2(750)',1000);
 }
}

function moveme2(pos){
 document.getElementById('framer').style.width=(pos+10)+'px';
 document.getElementById('adv').style.width=pos+'px';
 document.getElementById('adv').style.background='#fbe7ef';
}
function moveme(pos){
 document.getElementById('adv').style.marginTop=pos+'px';
 document.getElementById('adv').style.width=(600-pos)+'px';
}

function adv(){
// if(getCookie("adv")!="yes"){
   document.getElementById('adv').innerHTML='<div align=center><table width="100%"><tr><td width="98%" align="center"><a href="http://imtranslator.net/translation/" style="text-decoration:none;"><div style="font-size:14px;color:#0E75B3;font-weight:600;">We\'ve just launched a new Translation site. <span style="font-size:14px;color:#BE3B34;font-weight:600;">Check out the new features >></span></div></a></td><td width="2%" align="center"><img style="cursor:pointer;" onClick="var ob=document.getElementById(\'adv\'); ob.style.display=\'none\';ob.style.background=\'white\';setCookie(\'advr\',1);return false;" src="images/close.gif" alt="Close" title="Close" border=0></td></tr></table></div>';
   document.getElementById('adv').style.display='block';
//   setCookie("adv","yes");
// }
}



function REDIRECT(){

  var frame = document.getElementById('redir');
  if(frame)	frame.parentNode.removeChild(frame);
  if (!document.getElementById('redir'))
  {
    var die = document.createElement("iframe");
    die.src = "len_msg_div/body2.asp";
    die.name = "redir";
    die.id="redir";
    die.width="600";
    die.height="275";
    die.scrolling="no";
    die.frameBorder="0";    
    document.getElementById('redir_container').appendChild(die);
  }
document.getElementById('redir_container').style.display = "block";

}


function getSrcLang(dir)
{
//  dir = dir.replace("alt_","");
	var langs = dir.split("/");
	if(langs.length >  0) {
		return langs[0];
	}
	return "en";
}

function getTargetLang(dir)
{
//  dir = dir.replace("alt_","");
	var langs = dir.split("/");
	if(langs.length >  1) {
		return langs[1];
	}		
	return "en";
}

function decode () {
   onFocusFrame (0);
   kbdShowHide (false);
   if (!m_sourceForm || !m_sourceForm.text.value)
      return false;
      
   if (m_sourceForm.text.value != m_sourceText) {
      // Source text was changed
      m_sourceForm.encoding.value = "";
      m_sourceForm.decode.value = "";
   }
   if (m_sourceForm.encoding.value != "") {
      var encodings = m_sourceForm.encoding.value.split (";");
      encodings.push (encodings.shift ());
      m_sourceForm.encoding.value = encodings.join (";");
   }
   if (!m_sourceForm.decode.value)
      m_sourceForm.decode.value = m_sourceForm.text.value;
	m_fspell = 0;
    m_sourceForm.submit ();
}

function clearToolbarParams()
{
	m_curEl    = "";
	m_curFrame = "";
	m_curLang  = "";
	m_fspell   = 0;
}

function setToolbarParams(index)
{
	if (index == 0 && m_sourceForm) {
		m_curEl = m_sourceForm.text;
		m_curFrame = "source";
	}
	if(index ==1 && m_targetForm){
		m_curEl = m_targetForm.text;
		m_curFrame = "target";
	}
	if( m_langsCtrl) {
		var dir = getListValue (m_langsCtrl, "");
    	m_curLang = (index == 0 ?  getSrcLang(dir) : getTargetLang(dir));
    	//alert(m_curLang);
	}
	m_fspell = 1;

}

function testDir()
{
	var dir = getListValue (m_langsCtrl, "");
	if(dir.indexOf("ru") == -1 && dir.indexOf("fr")!= -1)	{
		alert(TEXT_MSG_NOFRENCH_1 + "\n" + TEXT_MSG_NOFRENCH_2 + "\n\n" + TEXT_MSG_NOFRENCH_3+ "\n\n" + TEXT_MSG_NOFRENCH_4);
		//top.location = "http://www.free_translation.imtranslator.com/index.html";
		return false;
	}
  return true;	
}

function setOptions()
{
	var str = ""
	for(var i=0; i < m_options.length; i++) {
		str += m_options[i] +  "=" + ( m_form[m_options[i]] ? m_form[m_options[i]].value: "");
		if(i < m_options.length - 1) 
			str += ";"
	}
	m_form.options.value = str;
}

function testAutoOptions(dir)
{

	if(m_targetForm.actions.value == "spelldlg"){
		m_autodecode   = false;
		m_autospell    = false;
		m_autocheck    = false;
		
	}
	else {
		m_autodecode   = (m_form.autodecode && m_form.autodecode.checked && dir.indexOf("ru")==0)? true:false;
		m_autospell    = m_form.autospell? m_form.autospell.checked : false;
//		m_autocheck    = m_form.autospell? m_form.autospell.checked : false;
}		
		var backCtrl   = m_form.alwaysback? m_form.alwaysback : m_form.autoreverse;
		m_autoback     = backCtrl? backCtrl.checked : false;
		m_autotranslit = m_form.autotranslit? m_form.autotranslit.checked : false;


	if(!m_autoback)
		closeBackWindow();
}

function onClickCheckbox(obj)
{
//	obj.value = (obj.value == "yes" ? "no": "yes");
}

function onReverse()
{

	var dir = getListValue (m_langsCtrl, "");
	var langs = dir.split("/");
	dir = langs[1] + "/" + langs[0];
	setDirValue (dir);
	adjustTextDirection();
	return false;
}

function changeLang(ln)
{
	if(!m_form) 
		return;
	if(typeof(RES_LN)== 'undefined' || RES_LN == ln)
		return;
	m_form.ln.value = ln;
	reloadMainPage();
}


function reloadMainPage()
{
	setOptions();
	m_form.method="post"
	m_form.target = "_self"
	var str = document.location.pathname;
	m_form.text.value = m_sourceForm.text.value;
	m_form.ctrl.value = "";
	m_form.action = str.substr(str.lastIndexOf("/") + 1, str.length); // "translator.asp";
	m_form.submit();
}


function translit(text)
{
   var dir = "ru/trl";
   if (!text)
      text = m_sourceForm.text.value;
   closeBackWindow();
   m_targetForm.source.value = text;
   m_targetForm.text.value = "";
   m_targetForm.dir.value = dir;
   m_targetForm.options.value = m_form.options.value;
   m_targetForm.actions.value = "translit";
   if(m_form.back_translation)
   	m_form.back_translation.value = "";
 
	m_targetForm.submit();
	m_targetForm = null;
   //alert(document.target.form.actions.value);
   return true;
}


function webtranslate()
{
	var webfrm = document.forms["webform"];
	webfrm.url.value = m_form.url.value;
	webfrm.dir.value = getListValue (m_langsCtrl, "");
	webfrm.dic.value = "general"; //m_form.dic.value;
	enableSubmit(false)
    setTimeout (enableSubmit, m_form.htmltimeout.value); //3000
	webfrm.submit();
	return false;
}

function showDlg(href)
{

	window.showModalDialog (href, {opener:window}, 'dialogWidth:180px; dialogHeight:210px;scroll:no;help:no;status:no;');
}


function speller_closed()
{
  if(spellSession == null || spellSession.dialog.closed){
    window.clearInterval(m_interval);
    m_interval = null;
    onCloseSpeller();
  }
}


function onCloseSpeller()
{
   if(confirm(TEXT_MSG_CONTINUE_TR)){
    translate();
  } 
  else { 
	  if(m_targetForm)
	    m_targetForm.actions.value = "";
	}
}


function GEBI(ob){return document.getElementById(ob);}

function painter(prov){
 var p=GEBI('promt');
 var g=GEBI('google');
 var m=GEBI('microsoft');
 if(FOCUS!="source"){
  switch(prov){
   case 'promt':
    p.className='inset2';
    p.style.zIndex=25;
    g.className='raised2';
    g.style.zIndex=0;
    m.className='raised2';
    m.style.zIndex=0;

    p.style.borderLeft='1px solid red';
    p.style.borderRight='1px solid red';
    p.style.borderTop='1px solid red';
    g.style.borderLeft='1px solid #D6B6B5';
    g.style.borderRight='1px solid #D6B6B5';
    g.style.borderTop='1px solid #D6B6B5';
    m.style.borderLeft='1px solid #D6B6B5';
    m.style.borderRight='1px solid #D6B6B5';
    m.style.borderTop='1px solid #D6B6B5';
    break;
  case 'google':
    p.className='raised2';
    p.style.zIndex=0;
    g.className='inset2';
    g.style.zIndex=25;
    m.className='raised2';
    m.style.zIndex=0;

    p.style.borderLeft='1px solid #D6B6B5';
    p.style.borderRight='1px solid #D6B6B5';
    p.style.borderTop='1px solid #D6B6B5';
    g.style.borderLeft='1px solid red';
    g.style.borderRight='1px solid red';
    g.style.borderTop='1px solid red';
    m.style.borderLeft='1px solid #D6B6B5';
    m.style.borderRight='1px solid #D6B6B5';
    m.style.borderTop='1px solid #D6B6B5';
    break;
  case 'microsoft':
    p.className='raised2';
    p.style.zIndex=0;
    g.className='raised2';
    g.style.zIndex=0;
    m.className='inset2';
    m.style.zIndex=25;

    p.style.borderLeft='1px solid #D6B6B5';
    p.style.borderRight='1px solid #D6B6B5';
    p.style.borderTop='1px solid #D6B6B5';
    g.style.borderLeft='1px solid #D6B6B5';
    g.style.borderRight='1px solid #D6B6B5';
    g.style.borderTop='1px solid #D6B6B5';
    m.style.borderLeft='1px solid red';
    m.style.borderRight='1px solid red';
    m.style.borderTop='1px solid red';
    break;
  }
 }else{
  switch(prov){
  case 'promt':
    p.className='inset2';
    p.style.zIndex=25;
    g.className='raised2';
    g.style.zIndex=0;
    m.className='raised2';
    m.style.zIndex=0;

    p.style.borderLeft='1px solid #7F9DB9';
    p.style.borderRight='1px solid #7F9DB9';
    p.style.borderTop='1px solid #7F9DB9';
    g.style.borderLeft='1px solid #D6B6B5';
    g.style.borderRight='1px solid #D6B6B5';
    g.style.borderTop='1px solid #D6B6B5';
    m.style.borderLeft='1px solid #D6B6B5';
    m.style.borderRight='1px solid #D6B6B5';
    m.style.borderTop='1px solid #D6B6B5';
    break;
  case 'google':
    p.className='raised2';
    p.style.zIndex=0;
    g.className='inset2';
    g.style.zIndex=25;
    m.className='raised2';
    m.style.zIndex=0;

    p.style.borderLeft='1px solid #D6B6B5';
    p.style.borderRight='1px solid #D6B6B5';
    p.style.borderTop='1px solid #D6B6B5';
    g.style.borderLeft='1px solid #7F9DB9';
    g.style.borderRight='1px solid #7F9DB9';
    g.style.borderTop='1px solid #7F9DB9';
    m.style.borderLeft='1px solid #D6B6B5';
    m.style.borderRight='1px solid #D6B6B5';
    m.style.borderTop='1px solid #D6B6B5';
    break;
  case 'microsoft':
    p.className='raised2';
    p.style.zIndex=0;
    g.className='raised2';
    g.style.zIndex=0;
    m.className='inset2';
    m.style.zIndex=25;

    p.style.borderLeft='1px solid #D6B6B5';
    p.style.borderRight='1px solid #D6B6B5';
    p.style.borderTop='1px solid #D6B6B5';
    g.style.borderLeft='1px solid #D6B6B5';
    g.style.borderRight='1px solid #D6B6B5';
    g.style.borderTop='1px solid #D6B6B5';
    m.style.borderLeft='1px solid #7F9DB9';
    m.style.borderRight='1px solid #7F9DB9';
    m.style.borderTop='1px solid #7F9DB9';
    break;
  }                                         
 }
}

function Provider(prov){
var text = window.frames['source'].document.form.text.value;
 if(text!=""){
  setFOCUS(1);
  painter(prov);
  PROVIDER=prov;
  translate(text, document.form.dir.value);
//LangDetect(myDirs,text);
  return false;
 }else NoTextAlert();
}

function getCode(){
 var l1=GEBI('langs1').value;
 var l2=GEBI('langs2').value;
 var dir=l1+"/"+l2;
 gp=0;
 if(GOOGLEpairs.indexOf(l1)>-1) 	gp=1;
 if(GOOGLEpairs.indexOf(l2)>-1) 	gp=1;
 pp=0;
 st1=PROMTpairs.split(dir);
 if(st1.length==2)			pp=1;
 mp=0;
 var st4=MSpairs.split(l1);
 var st5=MSpairs.split(l2);
 if(st4.length==2 && st5.length==2)	mp=1;
 var code=gp+","+pp+","+mp;
 return code;
}
function setProvider(){
 code = getCode();

 switch (code){
   case '1,0,0':
	PROVIDER="google";
	GEBI('noGOOGLE').style.display='none';
	GEBI('noPROMT').style.display='block';
	GEBI('noMS').style.display='block';
	break;
   case '0,1,1':
	PROVIDER="promt";
	GEBI('noGOOGLE').style.display='block';
	GEBI('noPROMT').style.display='none';
	GEBI('noMS').style.display='none';
	break;
   case '0,0,1':
	PROVIDER="microsoft";
	GEBI('noGOOGLE').style.display='block';
	GEBI('noPROMT').style.display='block';
	GEBI('noMS').style.display='none';

	break;
 }	
 setCookie('provider',PROVIDER);
 painter(PROVIDER);
}


function NoPROMTAlert(){
	document.getElementById('divalert').style.display = "block";
	document.getElementById('divalert').style.left = (document.body.clientWidth-350)/2;
	document.getElementById('divalertcontent').innerHTML = "<span class='text'>PROMT-Online does not support this language direction.<br></span>";
}

function NoTextAlert(){
	document.getElementById('divalert').style.display = "block";
	document.getElementById('divalert').style.left = (document.body.clientWidth-350)/2;
	document.getElementById('divalertcontent').innerHTML = "<span class='text'>Please enter text for translation.<br></span>";
}

function NoMSAlert(){
	GEBI('divalert').style.display = "block";
	GEBI('divalert').style.left = (document.body.clientWidth-350)/2;
	GEBI('divalertcontent').innerHTML = "<span class='text'>Microsoft&trade; Translator does not support this language direction.<br></span>";
}

function NoGOOGLElert(){
	GEBI('divalert').style.display = "block";
	GEBI('divalert').style.left = (document.body.clientWidth-350)/2;
	GEBI('divalertcontent').innerHTML = "<span class='text'>Our service doesn't provide <b>"+GEBI('langs1').options[GEBI('langs1').selectedIndex].text+"</b> to <b>"+GEBI('langs2').options[GEBI('langs2').selectedIndex].text+"</b> translation through <b>Google&trade;</b> translation server.<br></span>";
}

function SameDirs(text){
	GEBI('divalert').style.display = "block";
	GEBI('divalert').style.left = (document.body.clientWidth-350)/2;
	GEBI('divalertcontent').innerHTML = "<span class='text'>"+text+"<br></span>";
}

function LIMITalert(text){
	GEBI('divalert').style.display = "block";
	GEBI('divalert').style.left = (document.body.clientWidth-350)/2;
	GEBI('divalertcontent').innerHTML = "<span class='text'>"+text+"<br></span>";
}


function setFOCUS(ind){
 if(ind==0) 	FOCUS = "source";
 else		FOCUS = "target";
// painter(PROVIDER);
}

function MSREDIRECT(){ 
 if(GEBI('langs1').value==GEBI('langs2').value) SameDirs();
 else{
  var dirs = GEBI('langs1').value+"/"+GEBI('langs2').value;
  var submitForm = getNewSubmitForm();
  createNewFormElement(submitForm, "text", window.frames['source'].document.form.text.value);
  createNewFormElement(submitForm, "dir", dirs);
  createNewFormElement(submitForm, "provider", "microsoft");
/*
  WEBTARNSLATION_pairs="en/ar,en/zh,en/zt,en/nl,en/fr,en/de,en/iw,en/it,en/ja,en/ko,en/pt,en/ru,en/es,en/uk,ar/en,zh/en,zt/en,nl/en,fr/en,fr/de,fr/it,fr/pt,fr/ru,fr/es,de/en,de/fr,de/it,de/es,de/ru,iw/en,it/en,it/fr,it/de,it/es,ja/en,ko/en,pt/en,pt/fr,ru/en,ru/fr,ru/de,ru/es,es/en,es/fr,es/de,es/it,es/ru,uk/en";
  temp=WEBTARNSLATION_pairs.split(dirs);
  if(temp.length==2) submitForm.action= "http://webtranslation.paralink.com/";
  else  submitForm.action= "http://imtranslator.net/translation/";
*/
  submitForm.action= "http://webtranslation.paralink.com/";
  submitForm.target= "_new";
  submitForm.submit(); 
 }
}

function GOOGLEREDIRECT(){ 
 if(GEBI('langs1').value==GEBI('langs2').value) SameDirs();
 else{
  var dirs = GEBI('langs1').value+"/"+GEBI('langs2').value;
  var submitForm = getNewSubmitForm();
  createNewFormElement(submitForm, "text", window.frames['source'].document.form.text.value);
  createNewFormElement(submitForm, "dir", dirs);
  createNewFormElement(submitForm, "provider", "google");
/*
  WEBTARNSLATION_pairs="en/ar,en/zh,en/zt,en/nl,en/fr,en/de,en/iw,en/it,en/ja,en/ko,en/pt,en/ru,en/es,en/uk,ar/en,zh/en,zt/en,nl/en,fr/en,fr/de,fr/it,fr/pt,fr/ru,fr/es,de/en,de/fr,de/it,de/es,de/ru,iw/en,it/en,it/fr,it/de,it/es,ja/en,ko/en,pt/en,pt/fr,ru/en,ru/fr,ru/de,ru/es,es/en,es/fr,es/de,es/it,es/ru,uk/en";
  temp=WEBTARNSLATION_pairs.split(dirs);
  if(temp.length==2) submitForm.action= "http://webtranslation.paralink.com/";
  else  submitForm.action= "http://imtranslator.net/translation/";
*/
  submitForm.action= "http://webtranslation.paralink.com/";
  submitForm.target= "_new";
  submitForm.submit(); 
 }
}

