// application_form_validation.js


		function nav(page){
        
			if(page=='page1'){
			       if (validate('page1')){
			           showhide('partOne'); 
			           showhide('partTwo'); 
 			           showhide('parta'); 
			           showhide('partb');
			        }
			}else if(page == 'page2'){
			       if (validate('page2')){
			           showhide('partTwo'); 
			           showhide('partThree'); 
			           showhide('partb'); 
			           showhide('partc');
			       }
			}else if(page == 'page3'){
			       if (validate('page3')){
			           showhide('partThree'); 
			           showhide('partFour'); 
			           showhide('partc'); 
			           showhide('partd');
			        }
			}
        }		


function validateAmount(amount){
//var filter = /^\$?[1-9][0-9]{0,2}(,[0-9]{3})*(\.[0-9]{2})?$/
var filter = /^-?[0-9\.\,]+$/
if(filter.test(amount)){
return true;
}else{
return false;
}
}


function validateEmail(email){
var filter=/^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i
if (filter.test(email)){
return true;
}else{
return false;
}
}

function validatePhone(phone){
var filter = /^((\+\d{1,3}(-| )?\(?\d\)?(-| )?\d{1,5})|(\(?\d{2,6}\)?))(-| )?(\d{3,4})(-| )?(\d{4})(( x| ext)\d{1,5}){0,1}$/
if (filter.test(phone)){
return true;
}else{
return false;
}
} 	
		
		
function validate(page){

var isValid =  true;
var formFields = document.getElementsByTagName('input');
var totalFields     = 0;
var uncheckedFields = 0;
var noFields = 0;
var radioFields = 0;
var textFields  = document.getElementsByTagName('input');
var textAreas   = document.getElementsByTagName('textarea');
var blankFields = 0;
var blankTextAreas = 0;
if(page=='page1'){
for (var i=0;i<formFields.length;i++) {

if(formFields[i].type == 'radio'  || formFields[i].type == 'checkbox'){
totalFields +=1;
if(formFields[i].type == 'radio'){
radioFields+=1;
}
	if(formFields[i].checked == false){
uncheckedFields+=1;
}else if(formFields[i].id=='no'){
noFields+=1;   
}
}
}
if(uncheckedFields > 4){
alert('Please answer all questions to proceed');
isValid = false;
}else if(noFields>1){
alert("You may not qualify if you are not a 501(c)(3) non-profit organization, you have not been in operation for more than 3 years, you have not completed a Letter of Inquiry and you don't agree and understand the Application Guidelines.");
isValid = false;
}else{
for (var i=0;i<formFields.length;i++) {

if(formFields[i].type == 'radio'  || formFields[i].type == 'checkbox'){
if(formFields[i].checked == false){
   if(formFields[i].id == 'yes' || formFields[i].type == 'checkbox'){
		   if(formFields[i].name == 'nonProfit'){
			   alert('You may not qualify if you are not a 501(c)(3) non-profit organization');
		   }else if(formFields[i].name == 'years'){
			   alert('You may not qualify if you have not been in operation for more than 3 years');
		   }else if(formFields[i].name == 'letterInquiry'){
			   alert('You may not qualify if you have not completed a letter of Inquiry');
		   }else if(formFields[i].name == 'readGuideline'){
			   alert('You must agree and understand the Application Guidelines to continue with the application.');
		   }
	  isValid = false;
	  break;
   }
}else if(formFields[i].id == 'no'){

   if(formFields[i].name == 'nonProfit'){
			   alert('You may not qualify if you are not a 501(c)(3) non-profit organization');
		   }else if(formFields[i].name == 'years'){
			   alert('You may not qualify if you have no been in operation for more than 3 years');
		   }else if(formFields[i].name == 'letterInquiry'){
			   alert('You may not qualify if you have not completed a letter of Inquiry');
		   }else if(formFields[i].name == 'readGuideline'){
			   alert('You must agree and understand the Application Guidelines to continue with the application.');
		   }

isValid = false;
break;
}
}
}
}

}else if(page== 'page2'){
 for (var i=0;i<textFields.length;i++) {
	            if(textFields[i].type == 'text'){
                      if(textFields[i].value == ''){
	                                  if(textFields[i].name == 'organizationname'){
	                                  blankFields+=1;
	                                  }else if(textFields[i].name == 'firstName'){
	                                  blankFields+=1;
	                                  }else if(textFields[i].name == 'lastName'){
	                                  blankFields+=1;
	                                  }else if(textFields[i].name == 'phone'){
	                                  blankFields+=1;
	                                  }else if(textFields[i].name == 'email'){
	                                  blankFields+=1;
	                                  }
                           }
                     }
             }

             for (var i=0;i<textAreas.length;i++) {
        
                               if(textAreas[i].value == ''){
                                        
                                              if(textAreas[i].name == 'mission'){
                                                 blankTextAreas+=1;
                                              }else if(textAreas[i].name == 'briefHistory'){
                                                  blankTextAreas+=1;
                                              }

                                           
                                   }
                    }
            if((blankFields + blankTextAreas) > 1){
               alert("You must complete all fields in order to proceed.")
               isValid=false;
               }else if(blankFields + blankTextAreas  <= 1){

                     for (var i=0;i<textFields.length;i++) {
                             if(textFields[i].type == 'text'){
                                 if(textFields[i].value == ''){
                                              if(textFields[i].name == 'organizationname'){
                                                    alert("Please provide an organization name to proceed");
                                                     isValid = false;
                                                      break;
                                                }else if(textFields[i].name == 'firstName'){
                                                      alert("Please provide a first name to proceed");
                                                      isValid = false;
                                                       break;
                                                }else if(textFields[i].name == 'lastName'){
                                                      alert("Please provide a last name to proceed");
                                                      isValid = false;
                                                       break;
                                                }else if(textFields[i].name == 'phone'){
                                                      alert("Please provide a phone number to proceed");
                                                      isValid = false;
                                                       break;
                                                }else if(textFields[i].name == 'email'){
                                                       alert("Please provide an email address to proceed");
                                                       isValid = false;
                                                        break;
                                                 }
                                   }else{
                                              if(textFields[i].name == 'phone'){
                                                    
                                                     
                                                       if(!validatePhone(textFields[i].value)){
                                                        alert("Please provide a valid phone number to proceed");
                                                        isValid = false;
                                                        break;
                                                       }

                                                      
                                                }else if(textFields[i].name == 'email'){
                                                     
                                                        if(!validateEmail(textFields[i].value)){
                                                        alert("Please provide a valid email address to proceed");
                                                        isValid = false;
                                                        break;
                                                       }
                                                    
                                                 }

                                 }
                              }
                        }

                     for (var i=0;i<textAreas.length;i++) {
                    
                                     if(textAreas[i].value == ''){
                                                 if(textAreas[i].name == 'mission'){
                                                    alert("Please provide a mission statement to proceed");
                                                    isValid = false;
                                                    break;
                                                 }else if(textAreas[i].name == 'briefHistory'){
                                                     alert("Please provide a brief history to proceed");
                                                    isValid = false;
                                                    break;
                                                 }
                                       }
                               }
                

                  }

}else if(page == 'page3'){
var blankFields = 0;
var blankTextAreas = 0;
 for (var i=0;i<textFields.length;i++) {
	            if(textFields[i].type == 'text'){
                      if(textFields[i].value == ''){
	                                  if(textFields[i].name == 'projectInfo1'){
	                                  blankFields+=1;
	                                  }else if(textFields[i].name == 'projectInfo2'){
	                                  blankFields+=1;
	                                  }else if(textFields[i].name == 'projectInfo3'){
	                                  blankFields+=1;
	                                  }
                                         
                           }
                     }
             }

             for (var i=0;i<textAreas.length;i++) {
        
                               if(textAreas[i].value == ''){
                                        
                                              if(textAreas[i].name == 'projectInfo5'){
                                                 blankTextAreas+=1;
                                              }else if(textAreas[i].name == 'timeframe'){
                                                  blankTextAreas+=1;
                                              }

                                           
                                   }
                    }
            if((blankFields + blankTextAreas) >1){
               alert("You must complete all fields in order to proceed.")
               isValid=false;
               }else if(blankFields + blankTextAreas  <= 1){

                     for (var i=0;i<textFields.length;i++) {
                             if(textFields[i].type == 'text'){
                                 if(textFields[i].value == ''){
                                              if(textFields[i].name == 'projectInfo1'){
                                                    alert("Please state the name of the project to proceed");
                                                     isValid = false;
                                                      break;
                                                }else if(textFields[i].name == 'projectInfo2'){
                                                      alert("Please state the dollar amount request to proceed");
                                                      isValid = false;
                                                       break;
                                                }else if(textFields[i].name == 'projectInfo3'){
                                                      alert("Please state the overall budget of the project to proceed");
                                                      isValid = false;
                                                       break;
                                                }
                                   }else{ 
                                          if(textFields[i].name == 'projectInfo2'){
	                                       if(!validateAmount(textFields[i].value)){
                                                        alert("Please provide a valid dollar amount request to proceed");
                                                        isValid = false;
                                                        break;
                                                       }

	                                  }else if(textFields[i].name == 'projectInfo3'){
	                                        if(!validateAmount(textFields[i].value)){
                                                        alert("Please provide a valid overall budget to proceed");
                                                        isValid = false;
                                                        break;
                                                       }
	                                  }else if(textFields[i].name == 'amountRequested1'){
	                                        if(!validateAmount(textFields[i].value)){
                                                        alert("Please provide a valid amount requested for the first foundation or organization contacted for funding");
                                                        isValid = false;
                                                        break;
                                                       }
	                                  }else if(textFields[i].name == 'amountRequested2'){
	                                        if(!validateAmount(textFields[i].value)){
                                                        alert("Please provide a valid amount requested for the second foundation or organization contacted for funding");
                                                        isValid = false;
                                                        break;
                                                       }
	                                  }else if(textFields[i].name == 'amountRequested3'){
                                                 if(!validateAmount(textFields[i].value)){
                                                        alert("Please provide a valid amount requested for the third foundation or organization contacted for funding");
                                                        isValid = false;
                                                        break;
                                                       }
                                          }else if(textFields[i].name == 'amountRequested4'){
	                                         if(!validateAmount(textFields[i].value)){
                                                        alert("Please provide a valid amount requested for the fourth foundation or organization contacted for funding");
                                                        isValid = false;
                                                        break;
                                                       }
	                                  }else if(textFields[i].name == 'amountRequested5'){
                                                 if(!validateAmount(textFields[i].value)){
                                                        alert("Please provide a valid amount requested for the fifth foundation or organization contacted for funding");
                                                        isValid = false;
                                                        break;
                                                       }
                                          }
                                     }
                              }
                        }

                     for (var i=0;i<textAreas.length;i++) {
                    
                                     if(textAreas[i].value == ''){
                                                 if(textAreas[i].name == 'projectInfo5'){
                                                    alert("Please state how the project will be implemented and evaluated to proceed");
                                                    isValid = false;
                                                    break;
                                                 }else if(textAreas[i].name == 'timeframe'){
                                                     alert("Please state the time frame to proceed");
                                                    isValid = false;
                                                    break;
                                                 }
                                       }
                               }
                

                  }






}

return isValid;

}


