﻿// JScript File
var xmlHttp; // for sending ajax request
init(); //for initialising above variable

function init()
 {
  
   try
    {
        xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
       
    }
    catch(e)
    {
        try
        {
            xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
           
        }
        catch(E)
        {
            xmlHttp = null;
           
        }
    }
    //Creating object of XMLHTTP in Mozilla and Safari
    if(!xmlHttp && typeof XMLHttpRequest != "undefined")
    {
        xmlHttp = new XMLHttpRequest();
       }

   }
   
function hidepanel(id)
{
 document.getElementById(id).style.visibility = "hidden";
 document.getElementById(id).style.position = "absolute";
}
function showpanel(id)
{
 document.getElementById(id).style.position = "relative";
 document.getElementById(id).visibility = "visible";
}

function Button5_onclick() {
var page="http://www.jgmatrix.com/trltws.aspx?Textbox1="
page = page + document.getElementById("Text1").value;
window.open(page);
}

function Button6_onclick() 
{
email();
}
//function for handling email
function email() 
 { 
  //Get the itemID value from the form elements
   var item = document.getElementById("unitext").value;
   var choice=document.getElementById("Select1").value;
   var to = document.getElementById("Text2").value;
   var from=document.getElementById("Text3").value;
   var sub = document.getElementById("Text4").value;
  var params= "item=" + escape(item) + "&choice=" + escape(choice) + "&to=" + escape(to) + "&from=" + escape(from) + "&sub=" + escape(sub);
  //check whether the element has value
   if((item==null) || (item=="")) return;
   //make the URL that will process the request
  var url1 = "./mail.aspx";
   //make a connection to the server
  if (xmlHttp)
  {
    xmlHttp.open("POST",url1,true);
  //Send the proper header information along with the request
   xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xmlHttp.setRequestHeader("Content-length", params.length);
xmlHttp.setRequestHeader("Connection", "close");

    // Setup a function for the server to run when it's done
    xmlHttp.onreadystatechange = mailresponse;
    // Send the request
    xmlHttp.send(params);
  }
  
 }
//handle the response from above function
function mailresponse() 
 {
   if (xmlHttp.readyState == 4) 
    {
        var response = xmlHttp.responseText;
        document.getElementById("Panel1").innerHTML = response;
        
    }
   
 }

 
// function for getting 8 nearest words
function callserver() 
 { 
  //Get the itemID value from the form elements
 
   var item = document.getElementById("unitext").value;
  
   
  //check whether the element has value
 
   if((item==null) || (item=="")) return;
    var params="item=" + escape(item);
   //make the URL that will process the request
  var url1 = "./backend.aspx";
 
   //make a connection to the server
  if (xmlHttp)
  {
 
    xmlHttp.open("POST",url1,true);
     xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xmlHttp.setRequestHeader("Content-length", params.length);
xmlHttp.setRequestHeader("Connection", "close");
    
    // Setup a function for the server to run when it's done
    xmlHttp.onreadystatechange = updatePage;
  // Send the request
    xmlHttp.send(params);
  }
  
 }
//handle the response from above function
function updatePage() 
 {
   if (xmlHttp.readyState == 4) 
    {
        var response = xmlHttp.responseText;
        document.getElementById("guess").innerHTML = response;
        
    }

 }

//for filling the textbox with option selected by user in div(guess) tag
function filltxtbox(website)
{
   	  var editor= document.getElementById('unitext');
	  editor.focus();
	  var data
      data = editor.value;
	  var st=data.lastIndexOf(" ");
	  if (st < 0 )
	   {
	     editor.value=website;
	   }
	  else
	   {
	     data=data.substring(0,st);
	     editor.value=data + " " + website;
	   }
}

// called when translate button is clicked
function trlt()
{
  var item = document.getElementById("unitext").value;
  
  //check whether the element has value
  if((item==null) || (item=="")) return;
  //make the URL that will process the request
 var params="item=" + escape(item);

  var url1 = "./betrlt.aspx";
  //make a connection to the server
  if (xmlHttp)
  {
    xmlHttp.open("POST",url1,true);
     xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xmlHttp.setRequestHeader("Content-length", params.length);
xmlHttp.setRequestHeader("Connection", "close");
    // Setup a function for the server to run when it's done
    xmlHttp.onreadystatechange = updateoutput;
    // Send the request
    xmlHttp.send(params);
  }
}

 
 // called when transliterate button is clicked
function trltrt()
{
  var item = document.getElementById("unitext").value;
  //check whether the element has value
  if((item==null) || (item=="")) return;
  var params="item=" + escape(item);

  //make the URL that will process the request
  var url1 = "./betrltt.aspx";
  //make a connection to the server
  if (xmlHttp)
  {
    xmlHttp.open("POST",url1,true);
     xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xmlHttp.setRequestHeader("Content-length", params.length);
xmlHttp.setRequestHeader("Connection", "close");
    // Setup a function for the server to run when it's done
    xmlHttp.onreadystatechange = updateoutput;
    // Send the request
    xmlHttp.send(params);
  }
}

//handles output from above function
function updateoutput() 
{
    if (xmlHttp.readyState == 4) 
    {
        var response = xmlHttp.responseText;
        document.getElementById("output").value = response;
    }
}


    var selpad;
    function pad(myValue) 
    { 
	  var editor= document.getElementById('unitext');
	  editor.focus();
	  if (document.selection)
	    {
	  	  var selection =document.selection.createRange();
		  selection.text= myValue;
	    }
	  else 
	   {
			editor.value= editor.value + myValue;
	   }
	if(editor.value.length>1) {editor.value=formatUni(editor.value);editor.focus();}
	var t= setTimeout("markLen();",1);
}

function markLen(){
    var editor = document.getElementById('unitext');
    var TxtLen=document.getElementById('Len');
    var ThisLen=editor.value.length;
    TxtLen.value = ThisLen;
  }
function formatUni(Input){
var iStr = new String(Input);
var oStr= new String();
var t,tmp,pre,nxt,nxt2nxt,chr;
var skip=0;
if (iStr){
    for (t=0; t< iStr.length; t++){
        if (skip==1) {skip=0; continue;}
        chr = iStr.charCodeAt(t);
        if (t > 0 && t < iStr.length){pre=iStr.charCodeAt(t-1);}else{ pre=0;}
        if (t < iStr.length - 1){nxt = iStr.charCodeAt(t+1);}else{ nxt=0;}
        if (t < iStr.length - 2){nxt2nxt = iStr.charCodeAt(t+2);}else{ nxt2nxt=0;}
        //if (chr==2623){
        //alert("SehariFound and NXT is=" + nxt);
          //  if ((pre==32 || pre==0 || pre==2562 || pre==2622 || pre==2623 || pre==2624 || pre==2625 || pre==2626 || pre==2631 || pre==2632 || pre==2635 || pre==2636 || pre==2672 || pre==2673 ) && nxt > 0){
          //  oStr= oStr + String.fromCharCode(nxt) + String.fromCharCode(chr);
          //  skip=1;
          //  }
        //}
        if (pre==8204 && chr==2623 && nxt>0){oStr=oStr.substring(0,oStr.length-1);oStr= oStr + String.fromCharCode(nxt) + String.fromCharCode(chr);skip=1;}
        if (pre==2623 && chr==2637 && nxt>0){if (t-1 > 0){oStr=oStr.substring(0,t-1);}else {oStr="";};oStr= oStr + String.fromCharCode(chr)+ String.fromCharCode(nxt) + String.fromCharCode(pre);skip=1;}
        if (chr==2582 && nxt==2620){skip=1; oStr= oStr + String.fromCharCode(2649);}
        if (chr==2588 && nxt==2620){skip=1; oStr= oStr + String.fromCharCode(2651);}
        if (chr==2583 && nxt==2620){skip=1; oStr= oStr + String.fromCharCode(2650);}
        if (chr==2603 && nxt==2620){skip=1; oStr= oStr + String.fromCharCode(2654);}
        if (chr==2610 && nxt==2620){skip=1; oStr= oStr + String.fromCharCode(2611);}
        if (chr==2616 && nxt==2620){skip=1; oStr= oStr + String.fromCharCode(2614);}
        if (chr==8204 && nxt!=2623){continue;}
        if (skip==0) {oStr= oStr + String.fromCharCode(chr); }       
   }
   oStr=formatUniLV(oStr);
 }
return oStr;
}
function formatUniLV(Input){
var iStr = new String(Input);
var oStr= new String();
var t,tmp,pre,nxt,chr;
var skip=0;
if (iStr){
    for (t=0; t< iStr.length; t++){
        if (skip==1) {skip=0; continue;}
        chr = iStr.charCodeAt(t);
        if (t > 0 && t < iStr.length){pre=iStr.charCodeAt(t-1);}else{ pre=0;}
        if (t < iStr.length - 1){nxt = iStr.charCodeAt(t+1);}else{ nxt=0;}
        if (chr==2675 || chr==2579){
        //alert("Ura Found and NXT is=" + nxt);
            if (nxt == 2625){
            oStr= oStr + String.fromCharCode(2569);
            skip=1;
            }
            if (nxt == 2626){
            oStr= oStr + String.fromCharCode(2570);
            skip=1;
            }
            if (nxt == 2635 || nxt==2636){
            oStr= oStr + String.fromCharCode(2579);
            skip=1;
            }
        }
        if (chr==2565 || chr==2566 || chr==2576 || chr==2580){
        //alert("Aera Found and NXT is=" + nxt);
            if (nxt == 2622){
            oStr= oStr + String.fromCharCode(2566);
            skip=1;
            }
            if (nxt == 2632 || nxt==2631){
            oStr= oStr + String.fromCharCode(2576);
            skip=1;
            }
            if (nxt == 2635 || nxt==2636){
            oStr= oStr + String.fromCharCode(2580);
            skip=1;
            }
        }
        if (chr==2674 || chr==2567 || chr==2568 || chr==2575){
        //alert("Eri Found and NXT is=" + nxt);
            if (nxt == 2623){
            oStr= oStr + String.fromCharCode(2567);
            skip=1;
            }
            if (nxt == 2624){
            oStr= oStr + String.fromCharCode(2568);
            skip=1;
            }
            if (nxt == 2631 || nxt==2632){
            oStr= oStr + String.fromCharCode(2575);
            skip=1;
            }
        }
        if (skip==0) {oStr= oStr + String.fromCharCode(chr); }       
   }
 }
return oStr;
}

function GurEvents(evt)
{
	var keyCode = evt.keyCode ? evt.keyCode : evt.charCode;
	if (keyCode==13 || keyCode==8 || keyCode==46 || keyCode==40 || keyCode==39 || keyCode==37)
	{
		return true;
	}
    if (evt.type=='keypress')
    {
 	      var myValue= keyMapUnicodeGur(keyCode); 
		  var editor = document.getElementById('unitext');
		  editor.focus();
		  		if (document.selection){
		    //alert("IE");
		    sel=document.selection.createRange();
		    sel.text=myValue;
		    }
		else{
		//alert("NON-IE");
		editor.value= editor.value + myValue;
		}
		//editor.focus();
		if (editor.value.length>1) {editor.value=formatUni(editor.value);editor.focus();}
		return false;
	}

 var t= setTimeout(markLen(),1);
}

function keyMapUnicodeGur(keyValue){
 var uniValue=keyValue;
 	switch (keyValue){
	case 38: uniValue=2654;
	break;
	case 60:  uniValue=2676;
	break;
	case 65:  uniValue= 2565;
	break;
	case 66:  uniValue= 2605;
	break;
	case 67:  uniValue= 2587;
	break;
	case 68:  uniValue= 2599;
	break;
	case 69:  uniValue= 2579;
	break;
	case 70:  uniValue= 2594;
	break;
	case 71:  uniValue= 2584;
	break;
	case 72:  return String.fromCharCode(2637,2617);
	break;
	case 73:  uniValue= 2624;
	break;
	case 74:  uniValue= 2589;
	break;
	case 75:  uniValue= 2582;
	break;
	case 76:  uniValue= 2611;
	break;
	case 77:  uniValue= 2672;
	break;
	case 78:  uniValue= 2562;
	break;
	case 79:  uniValue= 2636;
	break;
	case 80:  uniValue= 2603;
	break;
	case 81:  uniValue= 2597;
	break;
	case 82:  return String.fromCharCode(2637,2608);
	break;
	case 83:  uniValue= 2614;
	break;
	case 84:  uniValue= 2592;
	break;
	case 85:  uniValue= 2626;
	break;
	case 86:  uniValue= 2652;
	break;
	case 87:  return String.fromCharCode(2622,2562);
	break;
	case 88:  uniValue= 2607;
	break;
	case 89:  uniValue= 2632;
	break;
	case 90:  uniValue= 2650;
	break;
	case 91:  uniValue= 2404;
	break;
	case 92:  uniValue= 2590;
	break;
	case 93:  return String.fromCharCode(2404,2404);
	break;
	case 94:  uniValue= 2649;
	break;
	case 95:  return String.fromCharCode(2637,2613);
	break;
	case 96:  uniValue= 2673;
	break;
	case 97:  uniValue= 2569;
	break;
	case 98:  uniValue= 2604;
	break;
	case 99:  uniValue= 2586;
	break;
	case 100:  uniValue= 2598;
	break;
	case 101:  uniValue= 2567;
	break;
	case 102:  uniValue= 2593;
	break;
	case 103:  uniValue= 2583;
	break;
	case 104:  uniValue= 2617;
	break;
	case 105:  uniValue= 2623;
	break;
	case 106:  uniValue= 2588;
	break;
	case 107:  uniValue= 2581;
	break;
	case 108:  uniValue= 2610;
	break;
	case 109:  uniValue= 2606;
	break;
	case 110:  uniValue= 2600;
	break;
	case 111:  uniValue= 2635;
	break;
	case 112:  uniValue= 2602;
	break;
 	case 113: uniValue=2596;
	break;
	case 114: uniValue=2608;
	break;
	case 115: uniValue=2616;
	break;
	case 116: uniValue=2591;
	break;
	case 117: uniValue=2625;
	break;
	case 118: uniValue=2613;
	break;
	case 119: uniValue=2622;
	break;
 	case 120: uniValue=2595;
	break;
	case 121: uniValue=2631;
	break;
	case 122: uniValue=2651;
	break;
	//case 123: uniValue=2;
	//break;
	case 124: uniValue=2585;
	break;
	//case 125: uniValue=2;
	//break;
	case 126: uniValue=2673;
	break;
	//case 127: uniValue=2;
	//break;
	

	}
 return String.fromCharCode(uniValue);
 
}

function disable(obj)
{
obj.disabled=true;
obj.className="btn4";
RefreshUpdatePanel();
}

