/****************************************************/
/*********** EmailSenderInformation.js **************/
/****************************************************/
/* File contains functions used to validate form    */
/****************************************************/
/* Created By: Justin R. Schwimmer                  */
/****************************************************/

//Validating ValidateSenderInfoFrm form
function ValidateSenderInfoFrm() 
{
    var ErrMsg = "";
    var ErrCnt = 0;
    
    if (document.emailSenderInfo.submitBttn.value){
        
        // Check first name
        if (IsEmpty(document.emailSenderInfo.senderFName.value)) 
        {
            ErrMsg += "  => First Name is a required field.\n";
            ErrCnt += 1;            
        } 
        else if (ContainsChars(document.emailSenderInfo.senderFName.value)) 
        {
            ErrMsg += "  => First Name can only contain letters.";
            ErrCnt += 1;
        }
        
        // Check last name
        if (IsEmpty(document.emailSenderInfo.senderLName.value)) 
        {
            ErrMsg += "  => Last Name is a required field.\n";
            ErrCnt += 1;    
        } 
        else if (ContainsChars(document.emailSenderInfo.senderLName.value)) 
        {
            ErrMsg += "  => Last Name can only contain letters.\n";
            ErrCnt += 1;    
        }   
        
        // Check Email
        if (IsEmpty(document.emailSenderInfo.senderEmail.value)) 
        {
            ErrMsg += "  => Email address is a required field.\n";
            ErrCnt += 1;            
        } 
        else if (IsEmail(document.emailSenderInfo.senderEmail.value)) 
            {
            ErrMsg += "  => Email field not valid. (ex. name@domain.com).\n";
            ErrCnt += 1;            
        }
    
        // Check Phone
        if (IsEmpty(document.emailSenderInfo.senderPhone.value)) 
        {
            ErrMsg += "  => Phone is a required field.\n";
            ErrCnt += 1;    
        } 
        else if (IsPhone(document.emailSenderInfo.senderPhone.value)) 
        {
            ErrMsg += "  => Phone field can only contain numbers, parenthesis,and hypens.\n";
            ErrCnt += 1;        
        }         
        
    } else if (document.mailSenderInfo.submitBttn.value) {
        
        // Check first name
        if (IsEmpty(document.mailSenderInfo.senderFName.value)) 
        {
            ErrMsg += "  => First Name is a required field.\n";
            ErrCnt += 1;            
        } 
        else if (ContainsChars(document.mailSenderInfo.senderFName.value)) 
        {
            ErrMsg += "  => First Name can only contain letters.";
            ErrCnt += 1;
        }
        
        // Check last name
        if (IsEmpty(document.mailSenderInfo.senderLName.value)) 
        {
            ErrMsg += "  => Last Name is a required field.\n";
            ErrCnt += 1;    
        } 
        else if (ContainsChars(document.mailSenderInfo.senderLName.value)) 
        {
            ErrMsg += "  => Last Name can only contain letters.\n";
            ErrCnt += 1;    
        }   
        
        // Check Email
        if (IsEmail(document.mailSenderInfo.senderEmail.value)) 
            {
            ErrMsg += "  => Email field not valid. (ex. name@domain.com).\n";
            ErrCnt += 1;            
        }
    
        // Check Phone
        if (IsEmpty(document.mailSenderInfo.senderPhone.value)) 
        {
            ErrMsg += "  => Phone is a required field.\n";
            ErrCnt += 1;    
        } 
        else if (IsPhone(document.mailSenderInfo.senderPhone.value)) 
        {
            ErrMsg += "  => Phone field can only contain numbers, parenthesis,and hypens.\n";
            ErrCnt += 1;        
        }
        
        // Check Street Address
        if (IsEmpty(document.mailSenderInfo.senderStAddress.value)) 
        {
            ErrMsg += "  => Shipping Address is a required field.\n";
            ErrCnt += 1;    
        } 
        else if (IsStreetAddress(document.mailSenderInfo.senderStAddress.value)) 
        {
            ErrMsg += "  => Shipping Address field can only contain numbers, letters, and hypens.\n";
            ErrCnt += 1;        
        }
        
        // Check City
        if (IsEmpty(document.mailSenderInfo.senderCity.value)) 
        {
            ErrMsg += "  => Shipping City is a required field.\n";
            ErrCnt += 1;    
        } 
        else if (ContainsChars(document.mailSenderInfo.senderCity.value)) 
        {
            ErrMsg += "  => Shipping City field can only contain letters, blanks, and hypens.\n"; 
            ErrCnt += 1;        
        }
        
        // Check Zip
        if (IsEmpty(document.mailSenderInfo.senderZip.value)) 
        {
            ErrMsg += "  => Shipping Zip is a required field.\n";
            ErrCnt += 1;    
        } 
        else if (ContainsChars(document.mailSenderInfo.senderZip.value)) 
        {
            ErrMsg += "  => Shipping Zip code field can only contain numbers, and hypens.\n";  
            ErrCnt += 1;        
        }
    }
    
    // If we had any errors we need to alert the user
    if (ErrCnt != 0)
    {
        ErrMsg = ErrCnt + ((ErrCnt == 1)? " Error has" : " Errors have") + " occurred, please see below for details. \n\n" + ErrMsg;
        alert(ErrMsg);
        return false;    
    }
}