function checkForInvalidCharacters(field, validchars)
{
    // takes a data string and a string of valid characters.  returns true if any invalid characters exist
    var invalid = false;
	for (i = 0; i < field.length; i++)
	{
		if (validchars.indexOf(field.charAt(i)) == -1)
		{
			invalid = true;
		}
	}
    return invalid;
}
function checkForInvalidDateComposition(dateStr)
{
    // check date composition (2 slashes, 3 text components)
    var dateElements = dateStr.split("/");
    if (dateElements != null && dateElements.length == 3)
    {
        if (dateElements[0].length > 0 && dateElements[1].length > 0 && dateElements[2].length > 0)
        {
            return false;
        } else
        {
            return true;
        }
    } else
    {
        return true;
    }
}
function correctDateYear(dateStr)
{
    // takes a date string and formats the year to YYYY, if the string is in MM/DD/YYYY format
    var newDateStr = dateStr;

    var dateElements = dateStr.split("/");
    if (dateElements != null && dateElements.length == 3)
    {
        var dateYear = dateElements[2];
        if (dateYear.length == 3)
            dateYear = "2" + dateYear;
        if (dateYear.length == 2)
            dateYear = "20" + dateYear;
        if (dateYear.length == 1)
            dateYear = "200" + dateYear;

        newDateStr = dateElements[0] + "/" + dateElements[1] + "/" + dateYear;
    }

    return newDateStr;
}

