﻿//  CAUSES ENTER KEY TO BEHAVE LIKE TAB KEY.
//  DISABLE BACKSPACE KEY AS BACK FUNCTION
//  THIS HAS BEEN TESTED ON IE6, IE7, FF2, FF3
//  © 2008 - transim
//  

function setEventHandeler()
{
    if (window.event)
        document.onkeydown = KeyCheck;
    else
        document.onkeypress = KeyCheck;
}
function KeyCheck(e) {
    var _keyCode;
    if (e == null)
        e = window.event;
    if( e.keyCode != null)
        _keyCode = e.keyCode;
    else if( e.which != null)
        _keyCode = e.which
    else
        _keyCode = e.charCode;
    
    var type = (window.event) ? event.srcElement.type : e.target.type;
    if (!type) type = "body";

    if (_keyCode == 13) {
        focusOnNextInput(e);

        if (e.stopPropagation) {
            e.stopPropagation();
        }

        if (e.cancelBubble) {
            e.cancelBubble = true;
        }

        e.returnValue = false;

        return false;
    }
    else if ((_keyCode == 8) && (type.toUpperCase() != "TEXT")) //so they can delete text with bs key.
    {
        if (window.event) event.cancel;
        return false;
    }
    else {
        return true;
    }
}
function focusOnNextInput(e) {
    var formid = "aspnetForm"
    var elements = document.getElementById(formid).elements;
    if (e == null) e = window.event;
    var id = "";

    if (e.target) {
        id = e.target.id
    }
    else if (e.srcElement) {
        id = e.srcElement.id;
    }

    for (var i = 0; i < elements.length; i++) {
        if (elements[i] && elements[i].id && elements[i].id == id) {
            for (var j = i + 1; j < elements.length; j++) {
                try {
                    if (elements[j].style.visible != 'hidden' && elements[j].style.display != 'none' && elements[j].type != 'hidden') {
                        if (elements[j].focus) {
                            elements[j].focus();
                        }

                        if (elements[j].select) {
                            elements[j].select();
                        }

                        return false;
                    }
                }
                catch (expeption) { }

            }
            return false;
        }
    }
    return false;
}