   var strGLList = "AVGDEEZHH8IIKLMNOOPRSTYYFXOOOaavgdeezhh8iiklmnooprsstyyfxww";
   var strGRList = "ΑΒΓΔΕΈΖΗΉΘΙΊΚΛΜΝΟΌΠΡΣΤΥΎΦΧΩΏΩαάβγδεέζηήθιίκλμνοόπρσςτυύφχωώ";
   var arrGLSpecialList = new Array("KS", "PS", "ks", "ps", "Ks", "Ps", "B",  "b",  "B");
   var arrGRSpecialList = new Array("Ξ",  "Ψ",  "ξ",  "ψ",  "Ξ",  "Ψ" , "ΜΠ", "μπ", "Μπ");
   var blnOnlyShowOnce = false;

   function toGLish(strInput){      
      var strChr    = "";
      var strOutput = "";
      var intGLPos  = 0;

      for(i=0; i < arrGRSpecialList.length; i++){
         regExpr = eval("/" + arrGRSpecialList[i] + "/g");
         strInput = strInput.replace(regExpr, arrGLSpecialList[i]);
      }
      for(i=0; i < strInput.length; i++){
         strChr   = strInput.charAt(i);
         intGLPos = strGRList.indexOf(strChr);
         if(intGLPos > -1){
            strOutput += strGLList.charAt(intGLPos);
         }else{ 
            strOutput += strChr;
         }
      }
      return strOutput;      
   }
   
   function toGreek(strInput){
      var strChr    = "";
      var strOutput = "";
      var strStore  = "";
      var intGRPos  = 0;

      for(i=0; i < arrGLSpecialList.length; i++){
         regExpr = eval("/" + arrGLSpecialList[i] + "/g");
         strInput = strInput.replace(regExpr, arrGRSpecialList[i]);
      }
      for(i=0; i < strInput.length; i++){
         strChr   = strInput.charAt(i);
         intGRPos = strGLList.indexOf(strChr);
         if(intGRPos > -1){
            if (strChr == "8"){
               strOutput += "8";
            }else{
               strOutput += strGRList.charAt(intGRPos);
            }
         }else{ 
            strOutput += strChr;
         }
      }
      for(i=0; i < strOutput.length; i++){
         strChr    = strOutput.charAt(i);
         if(strChr == " "){
            strChr = strOutput.charAt(i - 1);
            if(strChr == "σ"){
               strStore += "ς ";
            }else{
               strStore += strChr + " ";
            }          
         }else{
            if(strOutput.charAt(i + 1) != " "){
               strStore += strChr;
            }
         }
      }      
      return strStore;      
   }
   
   function doTrans(objFrm){      
      var strBanner = "\n\nwww.greeklish.idx.gr"
      var strInput  = objFrm.txtInput.value;
      var strOutput = "";

      if(objFrm.lstLang.value == "1"){
         strOutput = toGreek(strInput);
      }else{
         strOutput = toGLish(strInput);
      }

      objFrm.txtOutput.value = strOutput + strBanner;
      return false;
   }

   function fixText(objTxt){
      var txtNotify = "Γράψτε το κείμενο που θέλετε να μετατρέψετε";

      if(!blnOnlyShowOnce){
         objTxt.value = txtNotify;
         blnOnlyShowOnce = true;
      }else{
         if(objTxt.value == txtNotify){
         objTxt.value = "";
         }
      }
   }