//////////////////////////////////////////////////////////////////////////////////////
function validNameFields(fName){
 var pNumRegExp = /[^A-Za-z]/;
 var noSpaces = fName.replace(/ /g,"");
     noSpaces = noSpaces.replace(/-/g,"");  
  if(noSpaces.length==0){
    return false;}
  else if(pNumRegExp.test(noSpaces)==true){
    return false;}
  else{
    return true;} 
}
//////////////////////////////////////////////////////////////////////////////////////
function validAlphaNumeric(fName){
 var RegExp1 = /[^A-Za-z0-9]/;
 var noSpaces = fName.replace(/ /g,"");
  if(noSpaces.length==0){
    return false;}
  else if(RegExp1.test(noSpaces)==true){
    return false;}
  else{
    return true;} 
}
//////////////////////////////////////////////////////////////////////////////////////
function validAddressFields(fName){
 var reg1 = /[^A-Za-z0-9_\/\\&\#]/;
 var noSpaces = fName.replace(/ |\.|-/g,"");
  if(noSpaces.length==0){
   return false;}
  else if(reg1.test(noSpaces)==true){
   return false;}
  else{
   return true;} 
}
//////////////////////////////////////////////////////////////////////////////////////
function validEmail(eValue){
  var emailRegExp1 = /(@.*@)|(@\-)|(\.\-)|(\.\.)|(@\.)|(\.@)|(^\.)|( )/;
  var emailRegExp3 = /[<>\(\)\[\]{}\\\|!,;:'"]/;
  var emailRegExp2 = /^.+\@[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,3})$/;

   if((emailRegExp1.test(eValue)==false) && (emailRegExp3.test(eValue)==false) && (emailRegExp2.test(eValue)==true)){
       return true;}
   else{
       return false;}
}
//////////////////////////////////////////////////////////////////////////////////////
function validCCPatterns(ccString){
 var ccLength = ccString.length;
 var ccSubStr2 = ccString.substr(0,2);
 var ccSubStr3 = ccString.substr(0,3);
 var ccSubStr4 = ccString.substr(0,4);
 
  if(ccLength<13 || ccLength>16){return false;} 
  switch(ccLength){
   case 13:
	if(eval("" + ccSubStr2 + "<40") || eval("" + ccSubStr2 + ">49")){return false;} 
	else{return true;}   
	break;	
   case 14:
        if(eval("" + ccSubStr3 + ">=300") && eval("" + ccSubStr3 + "<=305")){return true;}
        else if(eval("" + ccSubStr3 + ">=381") && eval("" + ccSubStr3 + "<=388")){return true;}  
        else if(eval("" + ccSubStr2 + "==36")){return true;}
        else{return false;}
        break;
   case 15:
        if(eval("" + ccSubStr2 + "==34") || eval("" + ccSubStr2 + "==37")){return true;}
        else{return false;}   
	break;
   case 16:
        if(eval("" + ccSubStr2 + ">=51") && eval("" + ccSubStr2 + "<=55")){return true;}
        else if(eval("" + ccSubStr2 + ">=40") && eval("" + ccSubStr2 + "<=49")){return true;}   
        else if(eval("" + ccSubStr4 + "==6011")){return true;}    
        else{return false;}
	break;	     
  }
 return true; 
}
//////////////////////////////////////////////////////////////////////////////////////
function validPhoneNum(pNum){
 var pNumRegExp = /[^A-Za-z0-9()\-]/;
    if(pNum==""){
        return false;}
    else if(pNumRegExp.test(pNum)==true){
        return false;}
    else{
        return true;}    
}
//////////////////////////////////////////////////////////////////////////////////////
function validCCDate(thisMonth,CCMonth,CCYear){
  var monthIndex = thisMonth - 1;
   if(!CCYear.options[0].selected){
      return true;}
   else{
      for(var x=0;x<monthIndex;x++){
        if(CCMonth.options[x].selected){
          return false;}}
      return true;}
}
//////////////////////////////////////////////////////////////////////////////////////
function composeScreenMsg(alreadyHasError,scrMsg,beginningOfMsg){
 if(alreadyHasError==false){
   return beginningOfMsg + scrMsg;}
 else{
   return scrMsg + ",";}
}
//////////////////////////////////////////////////////////////////////////////////////
function MultiValidEmail(senderEmail, recipientEmail) {
	var currentREmail
	var isCorrect
	var isError 
	var ErrMsg
	var i
		
	isError = false;
	isCorrect = true;
		
	isCorrect = validEmail(senderEmail); 
				
	if(isCorrect==false) {
		ErrMsg = "Sender's email is not valid!";
		isError = true;
	}
	else {
		recipientEmail = recipientEmail + ";";
		if (recipientEmail.indexOf(";",0) > 2) {
			i = 0;
			recipientEmail = recipientEmail.replace(/ /gi, "");
			recipientEmail = recipientEmail.replace(/,/gi, ";");
			recipientEmail = recipientEmail.replace(/;;/gi, ";");
			while (recipientEmail.indexOf(";",i) > 0) {
				currentREmail = recipientEmail.substring(i,recipientEmail.indexOf(";",i));
				isCorrect = validEmail(currentREmail);
				if(isCorrect==false) {
					ErrMsg = "Recipient's email (" + currentREmail +") is not valid!";
					isError = true;
					break;
				}
				i = recipientEmail.indexOf(";",i);
				i++;  
			}
		}
		else {
			ErrMsg = "Recipient's email is not valid!";
			isError = true;
		}
	}
	if(isError==true) {
		alert(ErrMsg);
		return false;
	}
	else {
		return true;
	}
}
//////////////////////////////////////////////////////////////////////////////////////
function ValidPassword(newPassword) {
var noSpaces = newPassword.replace(/ /g,"");
var rightChars = "1234567890";
var strMsg = "Invalid Password!" ;
var maxLength = 4;
var x
var tmpFlag

	if (noSpaces.length != maxLength) {
		return false;
	}
	else {	
		for(var x=0;x<noSpaces.length;x++) {
			if (rightChars.indexOf(noSpaces.charAt(x)) == -1) {
				tmpFlag = false;
				x = maxLength;
		 	}
	 	}
	   	if (tmpFlag == false) {
			//alert(strMsg);
			return false;
	 	}
		else {
			return true;
		}
	}
}