﻿var wordAction = "";

$(window).keypress(function (e) { setDocumentKey(e); });
$('body').live('keypress', function (e) { setDocumentKey(e) });

function setDocumentKey(e) {
    var keyCode = e.which;
    
    if (keyCode != 13)//enter
    {       
        wordAction += String.fromCharCode(keyCode);
    }
    else if (keyCode == 27 || keyCode == 0) //esc
    {
        if (top.leave) top.leave();
    }
    else {
        var action = wordAction;
        wordAction = "";
        $.post("/action/", { action: action }, function (data) {
            if (data) {
                data;
                }
        //        eval(data); 
        } );
    }
}

function setEnter(obj) {
    obj.live('keypress',
        function (e) {
            var keyCode = e.which;

            if (keyCode == 27 || keyCode == 0)//esc
            {
                if (top.leave) { top.leave(); }
            }
            else if (keyCode == 13)//enter
            {
                if (submitNow) submitNow();
            }
        }
    );
}


function setKeyPress() {
    setKeyPressValidator(null, null, null);
}


function setKeyPressValidator(inputID, expression, errorMessage) {
    var s = "input";
    var exp = "[/&\\\\#+?.\"]";
    var err = "not allow [/ & \ # + ? . \"]. Please try other character.";
    if (inputID) {
        s = s+"#"+inputID;
    }
    if(expression)
    {
        exp = expression;
    }
    if(errorMessage){
        err = errorMessage;
    }

    $(s).live('keypress',
        function (e) {
            var value = String.fromCharCode(e.which);
            var re = new RegExp(exp);
            var m = re.exec(value);
            if (m != null) {
                alert(err);
                e.preventDefault();
                returnValue = false;
                return false;
            }
        }
    );
}
