/*
  Some js routines for client-side form field validation
*/

function isNotEmail(elem) {
  elem = getNode(elem);
  return !/^[-\w.]+@[-\w.]+\.[a-z]{2,6}$/i.test(elem.value);
}

function isEmpty(elem) {
    elem = getNode(elem);
    return /^\s*$/.test(elem.value);
}

function isDigits(elem) {
    elem = getNode(elem);
    return /^\d+$/.test(elem.value);
}

function selectIsEmpty(elem) {
    elem = getNode(elem);
    return(elem.selectedIndex == -1
        || elem.options[elem.selectedIndex].value == "");
}

function checkboxIsEmpty(form, name) {

    // find a checkbox in that form, with that name, that's checked
    for (var i = 0; i < form.elements.length; i++)
        if (form.elements[i].type == "checkbox"
         && form.elements[i].name == name
         && form.elements[i].checked == true)
            return false;

    return true;
}

function getNode(elem) {
    if (typeof(elem) != 'object') {
        elem = document.getElementById(elem);
        if(!elem) {
            alert('No element found with id "' + arguments[0] + '"');
            return false;
        }
    }
    return elem;
}


