﻿function getObj(name) {
    if (document.getElementById) this.obj = document.getElementById(name);
    else if (document.all) this.obj = document.all[name];
    else if (document.layers) this.obj = document.layers[name];
}

function formatCurrency(num) {
    num = num.toString().replace(/\$|\,/g, '');

    if (isNaN(num))
        num = "0";

    sign = (num == (num = Math.abs(num)));
    num = Math.floor(num * 100 + 0.50000000001);
    cents = num % 100;
    num = Math.floor(num / 100).toString();
    if (cents < 10)
        cents = "0" + cents;

    for (var i = 0; i < Math.floor((num.length - (1 + i)) / 3); i++)
        num = num.substring(0, num.length - (4 * i + 3)) + ',' + num.substring(num.length - (4 * i + 3));

    return (((sign) ? '' : '-') + num + '.' + cents);
}

function formatCur(cont) {
    document.getElementById(cont).value = formatCurrency(document.getElementById(cont).value);
}

function SetFocusToForward(curControl, nextControl) {
    if (curControl.value.length >= curControl.maxLength) {
        document.getElementById(nextControl).focus();
    }
}

function filterInteger(e) {
    var keyCode;

    if (window.event) // IE
    {
        keyCode = e.keyCode;
    }
    else if (e.which) // Netscape/Firefox/Opera
    {
        keyCode = e.which;
    }
    return (keyCode == 45 || keyCode == 13 || keyCode == 8 || keyCode == 9 || keyCode == 189 || keyCode == 109 || (keyCode >= 48 && keyCode <= 58));
}

function formatSSN(ssn) {
    if (ssn.length == 4) {
        ssn = ReplaceAll(ssn, '-', '');
        var str = ssn.substring(0, 3) + '-' + ssn.substring(3, 4);
        return str;
    }
        
    if (ssn.length == 7) {
        ssn = ReplaceAll(ssn, '-', '');
        var str = ssn.substring(0, 3) + '-' + ssn.substring(3, 5) + '-' + ssn.substring(5, 6);
        return str;
    }
    
    return ssn;
}

function formatSSNControl(cont) {
    document.getElementById(cont).value = formatSSN(document.getElementById(cont).value);
}

function formatSSNControlCanadian(cont)
{
    document.getElementById(cont).value = formatSSNCanadian(document.getElementById(cont).value);
}

function formatSSNCanadian(ssn)
{
    if (ssn.length == 4)
    {
        ssn = ReplaceAll(ssn, '-', '');
        var str = ssn.substring(0, 3) + '-' + ssn.substring(3, 4);
        return str;
    }

    if (ssn.length == 7)
    {
        ssn = ReplaceAll(ssn, '-', '');
        var str = ssn.substring(0, 3) + '-' + ssn.substring(3, 6) + '-' + ssn.substring(6, 7);
        return str;
    }

    return ssn;
}

function formatZIP(zip) {
    if (zip.length == 6) {
        zip = ReplaceAll(zip, '-', '');
        var str = zip.substring(0, 5) + '-' + zip.substring(5, 6);
        return str;
    }
    return zip;
}

function formatZIPControl(cont) {
    document.getElementById(cont).value = formatZIP(document.getElementById(cont).value);
}

function formatZIPCanadian(zip) {
    if (zip.length == 4) {
        zip = ReplaceAll(zip, ' ', '');
        var str = zip.substring(0, 3) + ' ' + zip.substring(3, 4);
        return str.toUpperCase();
    }
    return zip.toUpperCase();
}

function formatZIPControlCanadian(cont) {
    document.getElementById(cont).value = formatZIPCanadian(document.getElementById(cont).value);
}

function ReplaceAll(checkMe, toberep, repwith) {
    var temp = checkMe;
    var i = temp.indexOf(toberep);
    while (i > -1) { 
        temp = temp.replace(toberep, repwith);
        i = temp.indexOf(toberep);
    }
    return temp;
}
