//THIS JS FILE CONTAINS FORM VALIDATION FUNCTIONS FOR THE EMAIL REFERENCE FORM ON THE SCC LIBRARY WEBSITE

function checkRequiredFields(form)
{
    var form = document.forms["aspnetForm"];
    var name = form.ctl00$contentArea$txtBoxName;
    var email = form.ctl00$contentArea$txtBoxEmail;
    var phone = form.ctl00$contentArea$txtBoxPhone;
    var ques = form.ctl00$contentArea$txtBoxQuestion;
    if(!checkName(name))
    {
        return false;
    }
    
    if(!checkContact(email, phone))
    {
        return false;
    }   
    
    if(!checkQuestion(ques))
        {
            return false;
        }
        else
        {
            return true;
        }
    
    
}

function checkName(nameElem)
{
    var str = nameElem.value;
    if(str == null || str.length == 0)
    {
        alert("Please provide your name");
        setTimeout("focusField('" + nameElem.form.name + "', '" + nameElem.name + "')", 0);
        return false;
    }
    else
    {
        return true;
    }
}

function checkContact(email, phone)
{
    var strEmail = email.value;
    var strPhone = phone.value;
    
    if(strEmail == null || strEmail.length == 0)
    {
        if(strPhone == null || strPhone.length == 0)
        {
            alert("You must provide either a phone number or an email address so that we can respond to your request.");
            setTimeout("focusField('" + phone.form.name + "', '" + email.name + "')", 0);
            return false;
        }
        else
        {
            return true;
        }
        
    }
    else
    {
        
        var emailpat = /^([a-zA-Z0-9])+([\.a-zA-Z0-9_-])*@([a-zA-Z0-9])+(\.[a-zA-Z0-9_-]{2,4})+$/;
        if( !emailpat.test( strEmail ) ) 
        {
          alert("The information you provided for an email address does not appear to be a valid address.  Please recheck.");
          setTimeout("focusField('" + email.form.name + "', '" + email.name + "')", 0);
          return false;
        }
        else
        {
            return true;
        }
    
    }
    
}

function checkQuestion(quest)
{
    
    var strQuest = quest.value;
    if(strQuest == null || strQuest.length == 0)
    {
        alert("Please enter a question.");
        setTimeout("focusField('" + quest.form.name + "', '" + quest.name + "')", 0);
        return false;
    }
    else
    {
        return true;
    }    
}

function focusField(formName, elemName)
{
    var elem = document.forms[formName].elements[elemName];
    elem.focus();
    elem.select();
}