var mode = 1;

function SetMode()
{
	if (window.event.keyCode == 123)
	{
		if (mode == 0)
			mode = 1;
		else
			mode = 0;
	
		window.event.returnValue = false;
		return;
	}
	window.event.returnValue = true;
}


/// Keyboard Mapping to Unicode characters
function ChangeToFarsi()
{
	var code = window.event.keyCode;
	var key = String.fromCharCode(code);
	
	if (code > 127)
		return;
		
	if (mode == 1)
	{
		switch(key)
		{
			case 'H'     : window.event.keyCode =  1570; break;
			case 'h'     : window.event.keyCode =  1575; break;
			case 'f'     :
			case 'F'     : window.event.keyCode =  1576; break;
			case '`'     : window.event.keyCode =  1662; break;
			case 'j'     :
			case 'J'     : window.event.keyCode =  1578; break;
			case 'e'     :
			case 'E'     : window.event.keyCode =  1579; break;
			case '['     : window.event.keyCode =  1580; break;
			case ']'     : window.event.keyCode =  1670; break;
			case 'p'     :
			case 'P'     : window.event.keyCode =  1581; break;
			case 'o'     :
			case 'O'     : window.event.keyCode =  1582; break;
			case 'n'     :
			case 'N'     : window.event.keyCode =  1583; break;
			case 'b'     :
			case 'B'     : window.event.keyCode =  1584; break;
			case 'v'     :
			case 'V'     : window.event.keyCode =  1585; break;
			case 'c'     :
			case 'C'     : window.event.keyCode =  1586; break;
			case '\\'    : window.event.keyCode =  1688; break;
			case 's'     :
			case 'S'     : window.event.keyCode =  1587; break;
			case 'a'     :
			case 'A'     : window.event.keyCode =  1588; break;
			case 'w'     :
			case 'W'     : window.event.keyCode =  1589; break;
			case 'q'     :
			case 'Q'     : window.event.keyCode =  1590; break;
			case 'x'     :
			case 'X'     : window.event.keyCode =  1591; break;
			case 'z'     :
			case 'Z'     : window.event.keyCode =  1592; break;
			case 'u'     :
			case 'U'     : window.event.keyCode =  1593; break;
			case 'y'     :
			case 'Y'     : window.event.keyCode =  1594; break;
			case 't'     :
			case 'T'     : window.event.keyCode =  1601; break;
			case 'r'     :
			case 'R'     : window.event.keyCode =  1602; break;
			case ';'     : window.event.keyCode =  1603; break;
			case '\''    : window.event.keyCode =  1711; break;
			case 'g'     :
			case 'G'     : window.event.keyCode =  1604; break;
			case 'l'     : window.event.keyCode =  1605; break;
			case 'k'     : window.event.keyCode =  1606; break;
			case 'K'     : window.event.keyCode =  0161; break;
			case ','     : window.event.keyCode =  1608; break;
			case 'i'     :
			case 'I'     : window.event.keyCode =  1607; break;
			case 'd'     : window.event.keyCode =  1610; break;
			case 'D'     : window.event.keyCode =  1609; break;
			case 'm'     :
			case 'M'     : window.event.keyCode =  1574; break;
			case 'L'     : window.event.keyCode =  1548; break;
			case '.'     : window.event.keyCode =  1632; break;
			case '0'     : window.event.keyCode =  1776; break;
			case '1'     : window.event.keyCode =  1777; break;
			case '2'     : window.event.keyCode =  1778; break;
			case '3'     : window.event.keyCode =  1779; break;
			case '4'     : window.event.keyCode =  1780; break;
			case '5'     : window.event.keyCode =  1781; break;
			case '6'     : window.event.keyCode =  1782; break;
			case '7'     : window.event.keyCode =  1783; break;
			case '8'     : window.event.keyCode =  1784; break;
			case '9'     : window.event.keyCode =  1785; break;
		}
	}
	
    window.event.returnValue = true;
}

