﻿function pad(number, length) {
    var str = '' + number;
    while (str.length < length)
        str = '0' + str;
    return str;
}

function parseBoolean(value) {
    switch (value.toLowerCase()) {
        case "true": case "yes": case "1": return true;
        case "false": case "no": case "0": case null: return false;
        default: return Boolean(string);
    }
}

function formatCurrency(num, showCents) {
    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));

    if (showCents) {
        return (((sign) ? "" : "-") + "$" + num + "." + cents); 
    }
    else {
        return (((sign) ? "" : "-") + "$" + num);
    }
}

function isValidEmail(email) {
    validRegExp = /^[^@]+@[^@]+.[a-z]{2,}$/i;

    // search email text for regular exp matches
    if (email.search(validRegExp) == -1) {
        return false;
    }
    return true;
}
