//global variable for error messages
var err_msg = "";
var dis_msg = "";

function validateMiniApp(theForm) 
{
	var reason = "";
	
	reason += validateFirstName(theForm.first_name);	
	reason += validateLastName(theForm.last_name);	
	reason += validatePhone(theForm.phone);	
	reason += validateEmail(theForm.email_address);
	
	if (reason != "")
	{
		if(err_msg=="")
			alert("Please complete all the required fields before login.\n");
		else
		{
			dis_msg = "Please correct the following errors.\n";
			dis_msg += err_msg;
			alert(dis_msg);
			err_msg = "";
		}
		return false;
	}
}


function trim(s)
{
  return s.replace(/^\s+|\s+$/, '');
} 
function validateEmail(fld) 
{
    var tfld = trim(fld.value); // value of field with whitespace trimmed off
    var emailFilter = /^[^@]+@[^@.]+\.[^@]*\w\w$/ ;
    var illegalChars= /[\(\)\<\>\,\;\:\\\"\[\]]/ ;
   
    if (fld.value.length == 0) 
	{
        fld.style.background = "#FFCCCC";
        err_msg += " - Email address is missing.\n";
    } 
	else if (!emailFilter.test(tfld)) //test email for illegal characters
	{              
        fld.style.background = "#FFCCCC";
        err_msg += " - A valid email address is required.\n";
    } 
	else if (fld.value.match(illegalChars)) 
	{
        fld.style.background = "#FFCCCC";
        err_msg += "The email address contains illegal characters.\n";
    } 
	else 
	{
        fld.style.background = 'White';
    }
	return err_msg;
}


function validateFirstName(fld) 
{
	var firstNameFilter = /^[A-Za-z ]+$/;
    if (fld.value.length == 0) 
	{
        fld.style.background = "#FFCCCC";
        err_msg += " - Frist Name is missing.\n";
    } 
	else if (!fld.value.match(firstNameFilter)) 
	{
        fld.style.background = "#FFCCCC";
        err_msg += " - First name contains illegal characters.\n";
    }
    else 
        fld.style.background = 'White';
    
	return err_msg;
}

function validateLastName(fld) 
{
	var lastNameFilter = /^[A-Za-z ]+$/;
    if (fld.value.length == 0) 
	{
        fld.style.background = "#FFCCCC";
        err_msg += " - Last Name is missing.\n";
    } 
	else if (!fld.value.match(lastNameFilter)) 
	{
        fld.style.background = "#FFCCCC";
        err_msg += " - Last name contains illegal characters.\n";
    }
    else 
        fld.style.background = 'White';
    
	return err_msg;
}

function validatePhone(fld) 
{
	var homePhoneFilter = /^[0-9]{10}$/;
	if (fld.value.length != 0 && !fld.value.match(homePhoneFilter)) 
	{
        fld.style.background = "#FFCCCC";
        err_msg += " - Invalid phone number.\n";
    }
    else 
        fld.style.background = 'White';
    
	return err_msg;
}









