enImg = new Image(); enImg.src = "../img/fa.gif"; faImg = new Image(); faImg.src = "../img/en.gif"; var language='f'; var farsikey = [ // Farsi keyboard map based on Iran Popular Keyboard Layout 0x0020, 0x0021, 0x061B, 0x066B, 0x00A4, 0x066A, 0x060C, 0x06AF, 0x0029, 0x0028, 0x002A, 0x002B, 0x0648, 0x002D, 0x002E, 0x002F, 0x06F0, 0x06F1, 0x06F2, 0x06F3, 0x06F4, 0x06F5, 0x06F6, 0x06F7, 0x06F8, 0x06F9, 0x003A, 0x06A9, 0x003E, 0x003D, 0x003C, 0x061F, 0x066C, 0x0624, 0x200C, 0x0698, 0X064a, 0x064D, 0x0625, 0x0623, 0x0622, 0x0651, 0x0629, 0x00BB, 0x00AB, 0x0621, 0x004E, 0x005D, 0x005B, 0x0652, 0x064B, 0x0626, 0x064F, 0x064E, 0x0056, 0x064C, 0x0058, 0x0650, 0x0643, 0x062C, 0x0698, 0x0686, 0x00D7, 0x0640, 0x067E, 0x0634, 0x0630, 0x0632, 0X06cc, 0x062B, 0x0628, 0x0644, 0x0627, 0x0647, 0x062A, 0x0646, 0x0645, 0x0626, 0x062F, 0x062E, 0x062D, 0x0636, 0x0642, 0x0633, 0x0641, 0x0639, 0x0631, 0x0635, 0x0637, 0x063A, 0x0638, 0x007D, 0x007C, 0x007B, 0x007E ]; function FKeyPress() { var key = window.event.keyCode; if (key < 0x0020 || key >= 0x00FF) return; if (language=='f') { var ValChar=String.fromCharCode(key); var validate="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ[];,'`\\" var el = event.srcElement; if (validate.indexOf(ValChar) != -1 ) // Detect persian letter if (el.value.charCodeAt(el.value.length-1) == 0x06cc) // Replace persian ye if needed { el.value = el.value.slice(0, -1); el.value += String.fromCharCode(0x064a); // Use arabic ye } if (key == 0x0020 && window.event.shiftKey) window.event.keyCode = 0x200C; else window.event.keyCode = farsikey[key - 0x0020]; } return true; } function EKeyPress() { var key = window.event.keyCode; var fKey=[ 1588,1584,1586,1740,1579,1576,1604,1575,1607,1578,1606,1605,1574, 1583,1582,1581,1590,1602,1587,1601,1593,1585,1589,1591,1594,1592,1662,1580,1670,247 ]; var fKeyShift=[ 1614,1573,1688,1616,1613,1617,1728,1570,93,1600,171,187,1569, 1571,91,92,1611,1604,1615,1548,44,1572,1612,1610,1563,1577 ]; var eKey=[ 97,98,99,100,101,102,103,104,105,106,107,108,109, 110,111,112,113,114,115,116,117,118,119,120,121, 122,92,91,93,96 ]; var eKeyShift=[ 65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80, 81,82,83,84,85,86,87,88,89,90 ]; var index; if(window.event.shiftKey) { for (index in fKeyShift) { if(key == fKeyShift[index]) { window.event.keyCode= eKeyShift[index]; return true; } } } else { for (index in fKey) { if(key == fKey[index]) { window.event.keyCode= eKey[index]; return true; } } } return true; } function chLanguage(txtName,imgName) { if(language=='f') {/// this is changed txtName.onkeypress=null; txtName.style.textAlign = "right"; txtName.style.direction = "rtl"; language='e'; imgName.src=faImg.src; } else { txtName.onkeypress=FKeyPress; txtName.style.textAlign = "right"; txtName.style.direction = "rtl"; language='f'; imgName.src=enImg.src; } txtName.focus(); }