/** extract from VietInterfaceIE5.js V1.1 10/01/1999
MViet70.js   or BViet  by SonPham ca46617@csun.edu 6/15/2002
* Copyright (c) 1999, 2000,2001, 2002, 2003 MDSS Inc. All Rights Reserved.
**/
var BoDauMV="";  var currElm;   var popupWinMV;
var thamMy=0; var MVOff =1;  var tempOff=1;  var MVsrc=null;
var TatTamMV=""; var TatTamW; var offP = false;
window.onunload = function(){if (popupWinMV) popupWinMV.close();}
//for snitz only
function setMVUserName(BDStr) { var now = new Date(); fixDate(now);  now.setTime(now.getTime() + 365 * 24 * 60 * 60 * 1000); setCookie("MVUserName", BDStr , now); }
function getMVUserName()  { var t = getCookie("MVUserName"); if (t) return t;  else  return "";}

document.onmouseout= function(){   
var src = document.selection.createRange();  
if (src.text.length>0) MVsrc=src;
else MVsrc=null;
}
function openWindowMV (url,name,widgets) 
{           
if (popupWinMV) popupWinMV.close();
popupWinMV = window.open (url,name,widgets);
popupWinMV.opener.top.name="opener";
popupWinMV.moveTo(0,0);
popupWinMV.focus();
}

document.onclick= function(){   
var tempBD=getBoDau() ;
var indBar = tempBD.indexOf('|'); 
thamMy= parseInt(tempBD.substring(0, indBar));
BoDauMV= tempBD.substring(indBar+1)

TatTamMV=getMVTatTam() ; 
TatTamW=TatTamMV.split('|') ;

if (currElm==null) currElm=event.srcElement;
else if ( (event.srcElement.type == 'textarea' || event.srcElement.type == 'text') &&
            currElm != event.srcElement)  currElm=event.srcElement;
}

document.onkeypress= function(){
var key = event.keyCode; 
if (key <33 && key != 32 && key != 5) return;

var elm = event.srcElement;
if (elm.type=='textarea' || (elm.type=='text' && elm.name!="BoDau"
&& elm.name!="Email" && elm.name!="Email2" && elm.name!="Email3" 
) ) 
     { currElm = elm;  var src = document.selection.createRange();  
if (src.text.length==0) processWord1(elm); }
 } 

function setCookie(name, value, expires, path, domain, secure) { var curCookie = name + "=" + escape(value) +((expires) ? "; expires=" + expires.toGMTString() : "") + ((path) ? "; path=" + path : "") +((domain) ? "; domain=" + domain : "") +((secure) ? "; secure" : ""); document.cookie = curCookie;}
function getCookie(name) {var dc = document.cookie; var prefix = name + "="; var begin = dc.indexOf("; " + prefix);
if (begin == -1) { begin = dc.indexOf(prefix); if (begin != 0) return null; } else begin += 2; var end = document.cookie.indexOf(";", begin); if (end == -1) end = dc.length; return unescape(dc.substring(begin + prefix.length, end)); }
function fixDate(date) { var base = new Date(0); var skew = base.getTime(); if (skew > 0) date.setTime(date.getTime() - skew); }

function setBoDau(BDStr) { var now = new Date(); fixDate(now);  now.setTime(now.getTime() + 365 * 24 * 60 * 60 * 1000); setCookie("BoDau", BDStr , now); }
function getBoDau()  { var t = getCookie("BoDau"); var BoDau=""; if (t) BoDau = t;  else BoDau="0|\'1|`2|?3|~4|5.|^6|+*7|(8|d9-||\\"; return BoDau;}

function setMVTatTam(BDStr) { var now = new Date(); fixDate(now);  now.setTime(now.getTime() + 365 * 24 * 60 * 60 * 1000); setCookie("MVTatTam", BDStr , now); }
function getMVTatTam()  { var t = getCookie("MVTatTam"); if (t) TatTamMV= t;  else  TatTamMV="http|@|www|["; return TatTamMV;}

function  processWord1(txtArea){
 var key = event.keyCode; var prefix = ''; 
  if (key==5){ if (offP) {  processLet(txtArea); offP = false; 
alert("MViet: On.\n(Ctrl-Shift-E --> Off.)");
    		  } 
else { alert("MViet: Off.\n(Ctrl-Shift-E --> On.)");
		    offP = true;}
}else if (BoDauMV=="" || (MVOff ==0) || offP ) return; else processLet(txtArea);
}

function  processLet(txtArea){ 
var strOri = String.fromCharCode(event.keyCode); //for keypress 

//email
if(strOri=='@') {tempOff = 0; return;}
else if (strOri==' ') {tempOff = 1; return;}
if(tempOff==0) return;

var src = document.selection.createRange();
var src2 = src.duplicate();  src2.moveStart("word", -1); 
 
//last check for return

for (var i=0; i<TatTamW.length; i++) { 
if (TatTamW[i].length>0 && (src2.text+strOri).indexOf(TatTamW[i] ) >-1) {tempOff = 0; return;}
}

var backward =  src2.text.length;  
if (backward<1) return;
var newWord = document.VietInterface.getVietOneWord(src2.text+strOri, -1, 0, BoDauMV, thamMy); 

if (newWord==null) return;
  else { //get |
   var indBar = newWord.indexOf('|'); 
   if (indBar > -1) { 
      var n = parseInt(newWord.substring(0, indBar));
      src.moveStart("character", -n+1); //for keypress
      txtArea.curWord=src.duplicate();
      txtArea.curWord.text = newWord.substring(indBar+1);
      txtArea.curWord.collapse(); 
      event.returnValue= false; //for keypress
   }else return;
  }//get
}   

