//Image Rollover
function rollOver(name, newSrc) {
    if (document.images) {
        document.images[name].src = newSrc;
    }
}

//Popup Layers
var hide;
var delay = 0;
function showLayer(layer) {
    clearTimeout(hide);
    if (layer != null && document.getElementById) {
        document.getElementById(layer).style.visibility = 'visible';
    }  else if (layer != null && document.all) {
        document.all[layer].style.visibility = 'visible';
    } else {
        openPopWin();
    }
}
//Hide a layer by name
function hideLayer(layer) {
    if (layer != null && document.getElementById) {
        document.getElementById(layer).style.visibility = 'hidden';
    }  else if (layer != null && document.all) {
        document.all[layer].style.visibility = 'hidden';
    } else {
        closePopWin();
    }
}
//Hide a layer by name after a specified delay
function hideLayerDelay(layer, time) {
    if (time != null && time > 1) {
        delay = time;
    }
    hide = setTimeout("hideLayer('"+layer+"')", delay);
}

//Popup Windows
var popwin;
//Close a popup window
function closePopWin() {
    if (popwin && popwin.open && !popwin.closed) popwin.close();
}
//Open a popup window with a specified URL; Set scrolling, resizing, width and height
function openPopWin(winURL, scrollBar, resizable, winWidth, winHeight) {
    closePopWin();
    var winOptions = 'menubar=no,toolbar=no,location=no,directories=no,status=no,scrollbars=' + scrollBar + ',resizable=' + resizable + ',width=' + winWidth + ',height=' + winHeight;
    popwin = window.open(winURL, 'popwin', winOptions);
    if (popwin) {
        popwin.focus();
    }
}

function showElement(element) {
    if (document.getElementById) {
        document.getElementById(element).style.display="block";
    } else if (document.all) {
        document.all[element].style.display="block";
    } else {
        openPopWin();
    }
}

function hideElement(element) {
    if (document.getElementById) {
        document.getElementById(element).style.display="none";
    } else if (document.all) {
        document.all[element].style.display="none";
    } else {
        closePopWin();
    }
}

function hideElementDelay(layer, time) {
    if (time != null && time > 1) {
        delay = time;
    }
    hide = setTimeout("hideElement('"+layer+"')", delay);
}

//toggle the contents of a layer (older version which may be used by other pages)
function toggle(height, visibility, whichone, whichtwo) {
    if (document.getElementById) {
        document.getElementById(whichone).style.height = height;
        document.getElementById(whichtwo).style.visibility = visibility;

    }  else {
        if (document.all) {
            document.all[whichone].style.height = height;
            document.all[whichtwo].style.visibility = visibility;
        }
    }
}
//toggle the contents of a label layer (older version which may be used by other pages)
function toggleLabel(width, visibility, whichone, whichtwo) {
    if (document.getElementById) {
        document.getElementById(whichone).style.width = width;
        document.getElementById(whichtwo).style.visibility = visibility;

    }  else {
        if (document.all) {
            document.all[whichone].style.width = width;
            document.all[whichtwo].style.visibility = visibility;
        }
    }
}

var enterZip = "Please enter a ZIP Code.";
var enterValidZip = "Please enter a valid 5-digit US ZIP Code.";
var enterNoZeros = "ZIP Code must not be all Zeroes (00000).";
function validateFields(fieldObj,msg)
{
    var valid = true;
    var pattern = /[a-zA-z0-9]/;
    var numPattern = /(^-?\d\d*$)/;
    var objVal = fieldObj.value;
    if(fieldObj.name.indexOf("address") != -1){
        if (!objVal){ alert (enterZip); return false; }
        if (!numPattern.test(objVal) || objVal.length < 5){ alert (enterValidZip); return false; }
        if (objVal.indexOf("00000") != -1){ alert (enterNoZeros); return false; }
    }
    if(!pattern.test(objVal)){
        valid = false;
    }
    if (!valid) {
        alert(msg);
        return false;
    }else{
        return true;
    }
}
