﻿function getEml(arr) {
    var EmlArray = arr;
    var EncrEmail = ''
    for (var i = 0; i < EmlArray.length; i++) {
        EncrEmail += String.fromCharCode((EmlArray[i] + 5));
    }
    document.location.href = EncrEmail;
}        
function setURL(obj) {
    if (obj.value == "") {
        obj.value = "http://www.";
        setCursor(obj,11,11);
    }
}
function setCursor(el, st, end) {
    if (el.setSelectionRange) {
        el.focus(); el.setSelectionRange(st, end);
    } else {
        if (el.createTextRange) {
            range = el.createTextRange();
            range.collapse(true);
            range.moveEnd('character', end);
            range.moveStart('character', st);
            range.select();
        }
    }
} 
function checkURL(obj) {
    if (obj.value == "http://www.") {
        obj.value = "";
    }
}
function trim(str, chars) {
    return ltrim(rtrim(str, chars), chars);
}
function ltrim(str, chars) {
    chars = chars || "\\s";
    return str.replace(new RegExp("^[" + chars + "]+", "g"), "");
}
function rtrim(str, chars) {
    chars = chars || "\\s";
    return str.replace(new RegExp("[" + chars + "]+$", "g"), "");
}
function intToBool(iInt) {
    if (iInt == 1) return true;
    return false;
}
function ynToBool(sYN) {
    if (sYN == "Y") return true;
    return false;
}
function blankToInt(sVal) {
    if (sVal == "") {
        return 0;
    } else {
        return parseInt(sVal);
    }
}
function round(n) {
    return Math.round(n * 100 + ((n * 1000) % 10 > 4 ? 1 : 0)) / 100;
}
function roundNumber(num, dec) {
    var result = String(Math.round(num * Math.pow(10, dec)) / Math.pow(10, dec));
    if (result.indexOf('.') < 0) { result += '.'; }
    while (result.length - result.indexOf('.') <= dec) { result += '0'; }
    return result;
}
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 checklistLimit(chkControlId, MaxChecks, obj) {
    var x = 0;
    var options = document.getElementById(chkControlId).getElementsByTagName('input');
    for (i = 0; i < options.length; i++) {
        var opt = options[i];
        if (opt.type == "checkbox") {
            if (opt.checked) {
                x++;
                if (x > MaxChecks) {
                    alert("Please limit your selection to " + MaxChecks + " options.");
                    document.getElementById(obj.id).checked = false;
                }
            }
        }
    }
    return;
}
function addChkValLimit(chkControlId, MaxChecks, obj, sTxtField, sValField, sText, ID) {
    var x = 0;
    var options = document.getElementById(chkControlId).getElementsByTagName('input');
    for (i = 0; i < options.length; i++) {
        var opt = options[i];
        if (opt.type == "checkbox") {
            if (opt.checked) {
                x++;
                if (x > MaxChecks) {
                    alert("Please limit your selection to " + MaxChecks + " options.");
                    document.getElementById(obj.id).checked = false;
                    return;
                }
            }
        }
    }
    var hdVals = document.getElementById(sValField);
    var hdTxt = document.getElementById(sTxtField);
    var sVals = SetVals(hdVals.value, ID);
    var sTxtVals = SetVals(hdTxt.value, sText);

    hdVals.value = sVals;
    hdTxt.value = sTxtVals;

    //alert("sTxtVals: " + sTxtVals);
    //alert("sVals: " + sVals);
}
function addChkCatLimit(MaxChecks, obj, sTxtField, sValField, sText, ID) {
    var x = 0;
    var z = 0;
    var hdVals = document.getElementById(sValField);
    var hdTxt = document.getElementById(sTxtField);
    var aChControlID = ['cklCatgHealth', 'cklCatgGrowth', 'cklCatgSpiritual', 'cklCatgSustain', 'cklCatgArts']
    for (z = 0; z < aChControlID.length; z++) {
        var options = document.getElementById(aChControlID[z]).getElementsByTagName('input');
        for (i = 0; i < options.length; i++) {
            var opt = options[i];
            if (opt.type == "checkbox") {
                if (opt.checked) {
                    x++;
                    if (x > MaxChecks) {
                        alert("Please limit your selection to " + MaxChecks + " options.\n(You have selected: " + 
                            hdTxt.value.replace(",",", ") + ")");
                        document.getElementById(obj.id).checked = false;
                        return;
                    }
                }
            }
        }
    }

    var sVals = SetVals(hdVals.value, ID);
    var sTxtVals = SetVals(hdTxt.value, sText);
    hdVals.value = sVals;
    hdTxt.value = sTxtVals;

    //alert("sTxtVals: " + sTxtVals);
    //alert("sVals: " + sVals);
}
function addChkVal(sTxtField, sValField, sText, ID) {
    
    var hdVals = document.getElementById(sValField);
    var hdTxt = document.getElementById(sTxtField);
    var sVals = SetVals(hdVals.value, ID);
    var sTxtVals = SetVals(hdTxt.value, sText);

    hdVals.value = sVals;
    hdTxt.value = sTxtVals;

}
function SetVals(sVals, newVal) {
    var aVals, delim;
    var sNewVals = '';
    var bFound = false;
    if (sVals.length > 0) {
        if (sVals.indexOf(",") > -1) {
            aVals = sVals.split(",");
            for (var i = 0; i < aVals.length; i++) {
                if (aVals[i] == newVal) {
                    bFound = true;
                } else {
                    if (sNewVals.length > 0) { sNewVals = sNewVals + ','; }
                    sNewVals = sNewVals + aVals[i];
                }
            }
        } else {
            if (sVals == newVal) {
                bFound = true;
            } else {
                sNewVals = sVals;
            }
        }
        delim = ",";
    } else { delim = ""; }
    if (!bFound) { sNewVals = sNewVals + delim + newVal; }
    return sNewVals;
}
function RemoveVals(sVals, newVal) {
    var aVals, delim;
    var sNewVals = '';
    var bFound = false;
    if (sVals.length > 0) {
        if (sVals.indexOf(",") > -1) {
            aVals = sVals.split(",");
            for (var i = 0; i < aVals.length; i++) {
                if (aVals[i] != newVal) {
                    if (sNewVals.length > 0) { sNewVals = sNewVals + ','; }
                    sNewVals = sNewVals + aVals[i];
                } 
            }
        } else {
            if (sVals != newVal) {
                sNewVals = sVals;
            } else {
                sNewVals = '';
            }
        }
    } 
    return sNewVals;
}
function AddVals(sVals, newVal) {
    var aVals, delim;
    var sNewVals = '';
    var bFound = false;
    if (sVals.length > 0) {
        if (sVals.indexOf(",") > -1) {
            aVals = sVals.split(",");
            for (var i = 0; i < aVals.length; i++) {
                if (sNewVals.length > 0) { sNewVals = sNewVals + ','; }
                sNewVals = sNewVals + aVals[i];
                if (aVals[i] == newVal) {
                    bFound = true;
                } 
            }
        } else {
            if (sVals == newVal) {
                bFound = true;
            } else {
                sNewVals = sVals;
            }
        }
        delim = ",";
    } else { delim = ""; }
    if (!bFound) { sNewVals = sNewVals + delim + newVal; }
    return sNewVals;
}
function addRadVal(sTxtField, sValField, sText, ID) {
    var hdVal = document.getElementById(sValField);
    var hdTxt = document.getElementById(sTxtField);
    hdVal.value = ID;
    hdTxt.value = sText;
}
function toggleButtonDiv(btn,div,relPath) {
    var oBtn = document.getElementById(btn);
    var oDiv = document.getElementById(div);
    var bDivOpen = (oDiv.style.display == '');
    oDiv.style.display = (bDivOpen) ? 'none' : '';
    oBtn.innerHTML = (bDivOpen)
                ? "<img src='" + relPath + "images/btn_catClosed.gif' border='0' />"
                : "<img src='" + relPath + "images/btn_catOpen.gif' border='0' />";
}
function divShowHide(divShow, divHide, Ed) {
    if (divShow != "") {
        document.getElementById(divShow).style.display = "";
    }
    if (divHide != "") {
        document.getElementById(divHide).style.display = "none";
    }
    if (Ed != "") {
        if ((document.getElementById(Ed).style.display == "")
            || (document.getElementById(Ed).style.display == "block")
            || (document.getElementById(Ed).style.display == "inline")) {
            document.getElementById(Ed).style.display = "none";
        } else {
            document.getElementById(Ed).style.display = "";
        } 
    }
}
function divToggleSearch(divShow, divHide, Ed) {
    if (divShow != "") {
        if (document.getElementById(divShow).style.display == "none") {
            document.getElementById(divShow).style.display = "";
        } else {
            document.getElementById(divShow).style.display = "none";
        }
    }
    if (divHide != "") {
        if (document.getElementById(divHide).style.display == "none") {
            document.getElementById(divHide).style.display = "";
        } else {
            document.getElementById(divHide).style.display = "none";
        }
    }
    if (Ed != "") {
        if (document.getElementById(Ed).style.display == "none") {
            document.getElementById(Ed).style.display = "";
        } else {
            document.getElementById(Ed).style.display = "none";
        }
    }
}
function divShow(divShow) {
    document.getElementById(divShow).style.display = "";
}
function divHide(divHide) {
    document.getElementById(divHide).style.display = "none";
}

function showAlert(sMsg, sBtn) {
    if (sBtn != '') { document.getElementById(sBtn).style.display = ''; }
    document.getElementById("sNote").innerHTML = sMsg;
    document.getElementById('nav').style.display = 'none';
    if (document.getElementById) { // DOM3 = IE5, NS6
        document.getElementById('dvAlert').style.visibility = 'visible';
    }
    else {
        if (document.layers) { // Netscape 4
            document.dvAlert.visibility = 'visible';
        }
        else { // IE 4
            document.all.dvAlert.style.visibility = 'visible';
        }
    }
}
function hideAlert() {
    document.getElementById('nav').style.display = '';
    if (document.getElementById) { // DOM3 = IE5, NS6
        document.getElementById('dvAlert').style.visibility = 'hidden';
    }
    else {
        if (document.layers) { // Netscape 4
            document.dvAlert.visibility = 'hidden';
        }
        else { // IE 4
            document.all.dvAlert.style.visibility = 'hidden';
        }
    }
}
function showHideDiv(dvID) {
    if (document.getElementById(dvID).style.display == '') {
        document.getElementById(dvID).style.display = 'none';
    } else {
        document.getElementById(dvID).style.display = '';
    }
} 
function showPopDiv() {
    document.getElementById('nav').style.display = 'none';
    if (document.getElementById) { // DOM3 = IE5, NS6
        document.getElementById('hideshow').style.visibility = 'visible';
    }
    else {
        if (document.layers) { // Netscape 4
            document.hideshow.visibility = 'visible';
        }
        else { // IE 4
            document.all.hideshow.style.visibility = 'visible';
        }
    }
}
function hidePopDiv() {
    document.getElementById('nav').style.display = '';
    if (document.getElementById) { // DOM3 = IE5, NS6
        document.getElementById('hideshow').style.visibility = 'hidden';
    }
    else {
        if (document.layers) { // Netscape 4
            document.hideshow.visibility = 'hidden';
        }
        else { // IE 4
            document.all.hideshow.style.visibility = 'hidden';
        }
    }
}
function showPopDyn(div) {
    document.getElementById('nav').style.display = 'none';
    if (document.getElementById) { // DOM3 = IE5, NS6
        document.getElementById(div).style.visibility = 'visible';
    }
    else {
        if (document.layers) { // Netscape 4
            eval("document." + div + ".visibility") = 'visible';
        }
        else { // IE 4
            eval("document.all." + div + ".style.visibility") = 'visible';
        }
    }
}
function hidePopDyn(div) {
    document.getElementById('nav').style.display = '';
    if (document.getElementById) { // DOM3 = IE5, NS6
        document.getElementById(div).style.visibility = 'hidden';
    }
    else {
        if (document.layers) { // Netscape 4
            eval("document." + div + ".visibility") = 'hidden';
        }
        else { // IE 4
            eval("document.all." + div + ".style.visibility") = 'hidden';
        }
    }
}

// Rollover Functions
if (document.images) {
    function rollOn() {
        this.oButton.src = this.onImg.src;
        return;
    }
    function rollOff() {
        this.oButton.src = this.offImg.src;
        return;
    }
    function rollOver(onImage, oButton) {
        this.oButton = oButton;
        this.onImg = new Image;
        this.onImg.src = onImage;
        this.rollOn = rollOn;

        this.offImg = new Image;
        this.offImg.src = oButton.src;
        this.rollOff = rollOff;
    }
    function panelOff() {
        this.roll.rollOff();
        this.oPanel.src = this.offPanelImg.src;
        return;
    }
    function panelOn() {
        this.roll.rollOn();
        this.oPanel.src = this.onPanelImg.src;
        return;
    }
    function rollOverPanel(imgRollOn, oButtonRoll, imgPanelOn, oPanelRoll) {
        this.roll = new rollOver(imgRollOn, oButtonRoll);
        this.oPanel = oPanelRoll;
        this.onPanelImg = new Image;
        this.onPanelImg.src = imgPanelOn;
        this.panelOn = panelOn;

        this.offPanelImg = new Image;
        this.offPanelImg.src = oPanelRoll.src;
        this.panelOff = panelOff;
    }
}
