﻿function submitOnEnter() {
    
    if (event && event.keyCode == 13) {

        for (n = 0; n < document.forms.length; n++) {
            if (document.forms[n].id != 'frmLang') {
                document.forms[n].submit();
                return;
            }
        }

    }
}

function getCaretPosition(input) {
    var pos = 0;
    if (document.selection) {
        input.focus();
        var sel = document.selection.createRange();
        sel.moveStart('character', -input.value.length);
        pos = sel.text.length;
    }
    else {
        pos = input.selectionStart;
    }
    return pos;
}

function getTextSelection() {
    var selText;
    if (document.selection)
        selText = document.selection.createRange().text;
    else
        selText = window.getSelection().toString();
    return selText;
}

var ntb_sep = new String(".");
var ntb_altsep = new String(".,");

function checkNumeric(sender, d, ng, e) {
    var keyCode, selText;
    if (IsMSIE()) 
        keyCode = event.keyCode;
    else 
        keyCode = e.charCode;
   
    if (keyCode >= 32) {
        var newChar = String.fromCharCode(keyCode);
        var value = new String(sender.value);

        if (ntb_altsep.indexOf(newChar) >= 0) {
            newChar = ntb_sep;
        }

        switch (newChar) {
            case ntb_sep:
                if (ntb_indexOf_sep(value) >= 0 || d < 1) {
                    selText = getTextSelection();
                    if (ntb_indexOf_sep(selText) < 0) cancelEvent(e);
                }
                break;

            case '-':
                if (ng) {
                    if (value.indexOf("-") >= 0) {
                        sender.value = sender.value.replace("-", "");
                    }
                    else {
                        sender.value = "-" + sender.value;
                    }
                }
                cancelEvent(e);
                break;

            default:

                if (isNumeric(newChar)) {
                    var i = ntb_indexOf_sep(value);
                    n = getCaretPosition(sender);
                    selText = getTextSelection();
                    if (n > i && i >= 0 && value.length - selText.length - i > d) {
                        if (ntb_indexOf_sep(selText) < 0) {
                            cancelEvent(e);
                        }
                    }
                }
                else {
                    cancelEvent(e);
                }
                break;
        } //switch
    }
}

function cancelEvent(e) {
    if (IsMSIE())
        event.returnValue = 0;
    else
        e.preventDefault();
}

function ntb_onblur(sender, d, e) {
    if (sender.value.length > 0) {
        //if(ntb_altsep.indexOf(sender.value.charAt(0))>=0 ){
        //	sender.value = "0" + sender.value;
        //}
        sender.value = mmbs.format.number(sender.value, d);
    }
}

function IsMSIE() {
    return new String(navigator.userAgent).toLowerCase().indexOf("msie") >= 0;
}

function ntb_indexOf_sep(value) {
    for (j = 0; j < ntb_altsep.length; j++) {
        var n = value.indexOf(ntb_altsep.charAt(j));
        if (n >= 0) {
            return n;
        }
    }
    return -1;
}

function isNumeric(value) {
    var b = true;
    var c;
    for (n = 0; n < value.length; n++) {
        c = value.charCodeAt(n);
        b = b && (c >= 48 && c <= 57);
    }
    return b;
}
