//--------------- 86/9/7
//var mode = 1;
var is_internetexplorer = true;
 if(navigator.appName != "Microsoft Internet Explorer")
{
 is_internetexplorer = false;
}
//---------------------------------------------------------------------------------------

function SetMode(e)
{
var _e = window.event ? window.event : e;
var _t = window.event ? _e.srcElement : _e.target;

        if (_t != null)
            if (_t.getAttribute("defLang") != null)
                if (_t.getAttribute("defLang") != "undefined")
                    if (_t.getAttribute("defLang") == "en") {
                        _t.setAttribute("mode", "0");
	                    _e.returnValue = true;
                        return;
                    }
                    

    if (_t.getAttribute("mode") == null || _t.getAttribute("mode") == "undefined") {
        _t.setAttribute("mode", 1);
    }

    var mycode = window.event ? window.event.keyCode : e.which;

    if (mycode == 123) { // f12
        if (_t.getAttribute("mode") == 0) // fa
            _t.setAttribute("mode", 1);
        else // en
            _t.setAttribute("mode", 0);

        _e.returnValue = false;
        return;
    }
    _e.returnValue = true;
}
//---------------------------------------------------------------------------------------

/// Keyboard Mapping to Unicode characters (Farsi)
function ChangeToFarsi(e)
{
    var _e = window.event ? window.event : e;
    var _t = window.event ? _e.srcElement : _e.target;
	var code = window.event ? window.event.keyCode : e.which;
	var key = String.fromCharCode(code);
	if (code > 127)
		return;
	if (_t.getAttribute("mode") == 1)
	{
		if (code==0||code==8)
		{
			_e.returnValue= true
		}
		 
		else 
		{
		    if(is_internetexplorer)
		    {
		        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;
		        }
		        _e.returnValue= true
	    	}
	    	else // firefox
	    	{
        		var myinc="";
        		if (key >= 0 && key <= 9) {
	    	        _e.returnValue = true;
	    	    } else {
		            switch(key)
		            {
			            case 'H'     : myinc=String.fromCharCode(1570); break;
			            case 'h'     : myinc=String.fromCharCode(1575); break;
			            case 'f'     :
			            case 'F'     : myinc=String.fromCharCode(1576); break;
			            case '`'     : myinc=String.fromCharCode(1662); break;
			            case 'j'     :
			            case 'J'     : myinc=String.fromCharCode(1578); break;
			            case 'e'     :
			            case 'E'     : myinc=String.fromCharCode(1579); break;
			            case '['     : myinc=String.fromCharCode(1580); break;
			            case ']'     : myinc=String.fromCharCode(1670); break;
			            case 'p'     :
			            case 'P'     : myinc=String.fromCharCode(1581); break;
			            case 'o'     :
			            case 'O'     : myinc=String.fromCharCode(1582); break;
			            case 'n'     :
			            case 'N'     : myinc=String.fromCharCode(1583); break;
			            case 'b'     :
			            case 'B'     : myinc=String.fromCharCode(1584); break;
			            case 'v'     :
			            case 'V'     : myinc=String.fromCharCode(1585); break;
			            case 'c'     :
			            case 'C'     : myinc=String.fromCharCode(1586); break;
			            case '\\'    : myinc=String.fromCharCode(1688); break;
			            case 's'     :
			            case 'S'     : myinc=String.fromCharCode(1587); break;
			            case 'a'     :
			            case 'A'     : myinc=String.fromCharCode(1588); break;
			            case 'w'     :
			            case 'W'     : myinc=String.fromCharCode(1589); break;
			            case 'q'     :
			            case 'Q'     : myinc=String.fromCharCode(1590); break;
			            case 'x'     :
			            case 'X'     : myinc=String.fromCharCode(1591); break;
			            case 'z'     :
			            case 'Z'     : myinc=String.fromCharCode(1592); break;
			            case 'u'     :
			            case 'U'     : myinc=String.fromCharCode(1593); break;
			            case 'y'     :
			            case 'Y'     : myinc=String.fromCharCode(1594); break;
			            case 't'     :
			            case 'T'     : myinc=String.fromCharCode(1601); break;
			            case 'r'     :
			            case 'R'     : myinc=String.fromCharCode(1602); break;
			            case ';'     : myinc=String.fromCharCode(1603); break;
			            case '\''    : myinc=String.fromCharCode(1711); break;
			            case 'g'     :
			            case 'G'     : myinc=String.fromCharCode(1604); break;
			            case 'l'     : myinc=String.fromCharCode(1605); break;
			            case 'k'     : myinc=String.fromCharCode(1606); break;
			            case 'K'     : myinc=String.fromCharCode(0161); break;
			            case ','     : myinc=String.fromCharCode(1608); break;
			            case 'i'     :
			            case 'I'     : myinc=String.fromCharCode(1607); break;
			            case 'd'     : myinc=String.fromCharCode(1610); break;
			            case 'D'     : myinc=String.fromCharCode(1609); break;
			            case 'm'     :
			            case 'M'     : myinc=String.fromCharCode(1574); break;
			            case 'L'     : myinc=String.fromCharCode(1548); break;
			//          case '.'     : myinc=String.fromCharCode(1632); break;
            			case '0'     : myinc=String.fromCharCode(1776); break;
            			case '1'     : myinc=String.fromCharCode(1777); break;
            			case '2'     : myinc=String.fromCharCode(1778); break;
            			case '3'     : myinc=String.fromCharCode(1779); break;
            			case '4'     : myinc=String.fromCharCode(1780); break;
            			case '5'     : myinc=String.fromCharCode(1781); break;
            			case '6'     : myinc=String.fromCharCode(1782); break;
            			case '7'     : myinc=String.fromCharCode(1783); break;
            			case '8'     : myinc=String.fromCharCode(1784); break;
            			case '9'     : myinc=String.fromCharCode(1785); break;
			            case ' '     : myinc=String.fromCharCode(32); break;
		            }
		            e.target.value=e.target.value+myinc
		            e.preventDefault();
		            e.target.dispatchEvent();
		        }
		        return false;
    		}
	    }
	}
}
//---------------------------------------------------------------------------------------

//Validate to enter only English Character
function ChangeToEnglish(e)
{
	var code = window.event ? window.event.keyCode : e.which;
	var key = String.fromCharCode(code);
	if (code > 127)
	    {
        	if(is_internetexplorer) {
        	    window.event.returnValue= false;
	        }else
	        {
		        e.preventDefault();
		        e.target.dispatchEvent();
	        }
	    }
	    else 
		    return true;
}
//---------------------------------------------------------------------------------------

//Validate to enter only Numbers Function 1
function validateDigitText(e)
{
	var code = window.event ? window.event.keyCode : e.which;
    if((code < 48 ||  code > 57 ) && code!=46 && code != 0 && code != 8)
        if(is_internetexplorer){
            window.event.returnValue= false;
        }else {
            e.preventDefault();
            e.target.dispatchEvent();
        }
}
//---------------------------------------------------------------------------------------

//Validate to enter only Numbers Function 2
function ChangeToNumber(e)
{
	var code = window.event ? window.event.keyCode : e.which;
	var key = String.fromCharCode(code);
	if (code==46||code==47||code==48 ||code==49 ||code==50 ||code==51 ||code==52 ||code==53 ||code==54 ||code==55 ||code==56 ||code==57 ||code==45 || code==95|| code==32)
        return true;
    else 
    {
        if(is_internetexplorer)
            window.event.returnValue= false;
        else
        {
            e.preventDefault();
            e.target.dispatchEvent();
        }
	}
}
//---------------------------------------------------------------------------------------

//Validate to enter only Numbers Function 1
function validateFarsiText(e)
{
	var code = window.event ? window.event.keyCode : e.which;
    if(code != 32)
        if(code < 1575 ||  code > 1740)
            if(is_internetexplorer)
                window.event.returnValue= false;
            else
            {
                e.preventDefault();
                e.target.dispatchEvent();
            }
}
//---------------------------------------------------------------------------------------

//this is the english text  for the onkeypress and the onkeyup
function validateEnglishText(e)
{
	var code = window.event ? window.event.keyCode : e.which;
    if(window.event.keyCode < 65 ||  window.event.keyCode > 128)
        if(is_internetexplorer)
            window.event.returnValue= false;
        else
        {
            e.preventDefault();
            e.target.dispatchEvent();
        }
}
//---------------------------------------------------------------------------------------

//// Color of border in MouseOver
//function OnMouseOver(control,OnMouseOverColor)
//{ 
//    control.style.borderColor=OnMouseOverColor; 
//} 
////---------------------------------------------------------------------------------------

//// Color of border in MouseOut
//function OnMouseOut(control,OnMouseOutColor)
//{
//    control.style.borderColor=OnMouseOutColor; 
//} 
////---------------------------------------------------------------------------------------

function OnFocus(control,OnFocusColor,language) 
{
    control.style.backgroundColor=OnFocusColor; 
} 


