﻿//MOHSEN ASGHARI 1387/09/25
// Java Script For Handle Text Box Focuse ,Blur And MouseOut ,MouseOver
//----------------------------------------------------------------------------------------------------
var textBoxFocused;
var langFarsi;
//-----------------------------------------------------------------------------------------------------
function onmouseoverTextBox(textbox) {
    if (textBoxFocused != null) {
        textBoxFocused.style.backgroundColor = '#ffffff';
        textBoxFocused.style.border = 'solid 1px black';
    }
    else {
        textbox.style.backgroundColor = '#ffffff';

    }
}
//-----------------------------------------------------------------------------------------------------
function mouseoutTextBox(textbox) {
    if (textBoxFocused != null) {
        //textbox.style.backgroundColor = '#eaf2fb';
        textbox.style.border = 'solid 1px black';
    }
    else {
        textbox.style.backgroundColor = '#eaf2fb';
    }
}
//-----------------------------------------------------------------------------------------------------
function onfocusTextBox(textbox) {
    textBoxFocused = textbox;
    onmouseoverTextBox(this);
}
//-----------------------------------------------------------------------------------------------------
function onblurTextBox(textbox) {
    textBoxFocused = null;
    textbox.style.backgroundColor = '#eaf2fb';
    textbox.style.border = 'solid 1px #abc1de';
}
//-----------------------------------------------------------------------------------------------------
function Farsi(Key) {
    switch (Key) {
        case "`": window.event.keyCode = 1662; break;
        case "q": window.event.keyCode = 1590; break;
        case "Q": window.event.keyCode = 1590; break;
        case "w": window.event.keyCode = 1589; break;
        case "W": window.event.keyCode = 1589; break;
        case "e": window.event.keyCode = 1579; break;
        case "E": window.event.keyCode = 1579; break;
        case "r": window.event.keyCode = 1602; break;
        case "R": window.event.keyCode = 1602; break;
        case "t": window.event.keyCode = 1601; break;
        case "T": window.event.keyCode = 1601; break;
        case "y": window.event.keyCode = 1594; break;
        case "Y": window.event.keyCode = 1594; break;
        case "u": window.event.keyCode = 1593; break;
        case "U": window.event.keyCode = 1593; break;
        case "i": window.event.keyCode = 1607; break;
        case "I": window.event.keyCode = 1607; break;
        case "o": window.event.keyCode = 1582; break;
        case "O": window.event.keyCode = 1582; break;
        case "p": window.event.keyCode = 1581; break;
        case "P": window.event.keyCode = 1581; break;
        case "[": window.event.keyCode = 1580; break;
        case "]": window.event.keyCode = 1670; break;
        case "a": window.event.keyCode = 1588; break;
        case "A": window.event.keyCode = 1588; break;
        case "s": window.event.keyCode = 1587; break;
        case "S": window.event.keyCode = 1587; break;
        case "d": window.event.keyCode = 1610; break;
        case "D": window.event.keyCode = 1610; break;
        case "f": window.event.keyCode = 1576; break;
        case "F": window.event.keyCode = 1576; break;
        case "g": window.event.keyCode = 1604; break;
        case "G": window.event.keyCode = 1604; break;
        case "h": window.event.keyCode = 1575; break;
        case "H": window.event.keyCode = 1570; break;
        case "j": window.event.keyCode = 1578; break;
        case "J": window.event.keyCode = 1578; break;
        case "k": window.event.keyCode = 1606; break;
        case "K": window.event.keyCode = 1606; break;
        case "l": window.event.keyCode = 1605; break;
        case "L": window.event.keyCode = 1605; break;
        case ";": window.event.keyCode = 1705; break;
        case "'": window.event.keyCode = 1711; break;
        case "z": window.event.keyCode = 1592; break;
        case "Z": window.event.keyCode = 1592; break;
        case "x": window.event.keyCode = 1591; break;
        case "X": window.event.keyCode = 1591; break;
        case "c": window.event.keyCode = 1586; break;
        case "C": window.event.keyCode = 1586; break;
        case "v": window.event.keyCode = 1585; break;
        case "V": window.event.keyCode = 1585; break;
        case "b": window.event.keyCode = 1584; break;
        case "B": window.event.keyCode = 1584; break;
        case "n": window.event.keyCode = 1583; break;
        case "N": window.event.keyCode = 1583; break;
        case "m": window.event.keyCode = 1583; break;
        case "M": window.event.keyCode = 1574; break;
        case ",": window.event.keyCode = 1608; break;
        default: window.event.keyCode = ""; break;
    } //END SWITCH
}

//-----------------------------------------------------------------------------------------------------
function FKeyDown(currentTextbox,langFarsi_set) {
    if (window.event.shiftKey && window.event.ctrlKey) {
        chang_lang = 1;
        if (langFarsi == true) {
            langFarsi = false;
            currentTextbox.style.direction = 'ltr';
            window.status = "press ctrl+shift to Chang Language ; current language:English";
        }
        else {
            langFarsi = true;
            currentTextbox.style.direction = 'rtl';
            window.status = "press ctrl+shift to Chang Language ; current language:Farsi";
        }
    }
    else if (chang_lang == 0) {
        langFarsi = langFarsi_set;
    }
}
//-----------------------------------------------------------------------------------------------------
function _KeyPress(type, baseChars) {
    var keyCode = window.event.keyCode;
   
    var key = String.fromCharCode(keyCode);
    //Space 32  ( 40 )41
    if (keyCode == 32 || keyCode == 41 || keyCode==40) {
        window.event.keyCode = keyCode;
    }
    else if (type == "Text") {
        TextPressKey(langFarsi, key, keyCode);
    }
    else if (type == "Number") {
        OtherPressKey(baseChars, key, keyCode);
    }
    else if (type == "TextNumber") {
        if (baseChars.indexOf(key) == -1 && keyCode != 9 && keyCode != 8 && keyCode != 32 && keyCode != 16) {
            TextPressKey(langFarsi, key, keyCode);
        }
        else {
            OtherPressKey(baseChars, key, keyCode);
        }
    }
}
function OtherPressKey(baseChars, key, keyCode) {
    if (baseChars.indexOf(key) == -1 && keyCode != 9 && keyCode != 8 && keyCode != 32 && keyCode != 16) {
        window.event.keyCode = "";
    }
}
function TextPressKey(langFarsi, Key, keyCode) {
    if (langFarsi) {
        if ((keyCode > 1569 && keyCode < 1712) || keyCode == 1740 || keyCode == 92) {
            if (keyCode == 1740) {
                window.event.keyCode = 1610;
            }
            window.event.keyCode = keyCode;
            if (keyCode == 92) {
                window.event.keyCode = 1688;
            }
        }
        Farsi(Key);
    }
    else if (!langFarsi) {
    if (keyCode > 47 && keyCode < 58 || keyCode > 41 && keyCode < 45 || keyCode > 90 && keyCode < 94) {
        window.event.keyCode = "";
    }
    else
        if (keyCode != 61 && keyCode != 39 && keyCode != 59 && keyCode != 96 && keyCode != 47 ) {
            window.event.keyCode = keyCode;
    }
    else {
        window.event.keyCode = "";
    }
    }

}
//-----------------------------------------------------------------------------------------------------

