﻿
var triggerFormat = false;
function FormatNumber(id) {
    //alert(id);

    var value = document.getElementById(id).value;
    var len = value.length - 1;

    var fstr = "";
    var fstr_comma = "";

    var zerocount = 4; // numbers before comma as 111,xxxx

    var tmp = "";
    var comma = 0;
    var intlen = 0;
    var upperlimit = 0;

    comma = FindComma(value); // finds comma position

    for (i = 0; i <= len; i++) {
        (
(
value.charAt(i).match(/^([0-9])$/)
|| ((comma && comma == i))
)
&& value.charAt(i) != "."
) ? tmp = tmp + value.charAt(i) : NaN;
    }
    comma = FindComma(tmp);

    if (comma > 0) { intlen = comma - 1; }
    else { intlen = tmp.length - 1; }

    j = 0
    for (i = intlen; i >= 0; i--) {
        j++;
        if ((j % 3) == 0 && i > 0) {
            fstr = "." + tmp.charAt(i) + fstr;
            j = 0;
        }
        else
            fstr = tmp.charAt(i) + fstr;
    }

    if (comma > 0) {
        upperlimit = comma + zerocount // upperlimit = len 

        for (i = upperlimit; i >= comma; i--) {
            fstr_comma = tmp.charAt(i) + fstr_comma;
        }
    }

    document.getElementById(id).value = fstr + fstr_comma;
}
function FindComma(value) {
    var len = value.length - 1;

    for (i = len; i >= 0; i--) {
        if (value.charAt(i) == ",") { return i; }
    }
    return 0;
}

function karakterKontrol(id, message)
{
    if (document.getElementById(id).value.length < 6) {
        alert(message);
        document.getElementById(id).focus();
        //return false;
    }
}

function CalcKeyCode(aChar) {
    var character = aChar.substring(0, 1);
    var code = aChar.charCodeAt(0);
    return code;
}

function checkNumber(controlId) {
    var strPass = document.getElementById(controlId).value;
    var strLength = strPass.length;
    var lchar = strPass.charAt((strLength) - 1);
    var cCode = CalcKeyCode(lchar);

    /* Check if the keyed in character is a number
    do you want alphabetic UPPERCASE only ?
    or lower case only just check their respective
    codes and replace the 48 and 57 */

    if (cCode < 48 || cCode > 57) {
        var myNumber = strPass.substring(0, (strLength) - 1);
        document.getElementById(controlId).value = myNumber;
    }
    return false;
}




