// Returns true if 

function isBlank(s) {
    for (var i = 0; i < s.length; i++) {
        var c = s.charAt(i);

        if ((c != ' ') && (c != '\t') && (c != '\n')) return false;
    }

    return true;
}

function getLabel(element) {
    var label = element.label;

    if (label == null || isBlank(label)) {
        label = element.name;
    }

    return label;
}

function checkRange(element, min, max, nullable) {
    var label = getLabel(element);

    if (isBlank(element.value)) {
        if (nullable) {
            return true;
        } else {
            alert(label + "cannot be left blank");
            return false;
        }
    }

    var value = parseInt(element.value);

    if (isNaN(value)) {
        alert(label + ": '" + element.value + "' is not a number");

        return false;
    }

    if (value < min || value > max) {
        alert(label + " must be between " + min + " and " + max);

        return false;
    }

    return true;
}

function checkNonNull(element) {
    var label = getLabel(element);

    if (isBlank(element.value)) {
        alert(label + " can't be blank");

        return false;
    }

    return true;
}
