// JavaScript Document
$(document).ready(function(){
	$('#status').hide();
	/*submit handler for contact form*/
	$("#contact-form").submit(function(e) {	
			
			//prevents form action
		 	e.preventDefault();
			
			//set variables for all the form data;
			var name = $("#name").val();
			var email = $("#email").val();
			var subject = $("#subject").val();
			var message = $("#message").val();
			var spam = $("#spam").val();
			
			//clear all error focus borders
			$("#contact-form input:text, #contact-form textarea").removeClass("error-focus");
			
			//check required fields are not empty and that the email address is valid
			if(name==""){
				
				errorMessage("Please Enter Your Name");
				$("#name").focus().addClass("error-focus");
				
			}else if(email==""){
				
				errorMessage("Please Enter Your Email Address");
				$("#email").focus().addClass("error-focus");
				
			}else if(!isValidEmail(email)){
				
				errorMessage("Please Enter a Valid Email Address");
				$("#email").focus().addClass("error-focus");
				
			}else if(subject==""){
				
				errorMessage("Please Enter a Subject");
				$("#subject").focus().addClass("error-focus");
				
			}else if(message==""){
				
				errorMessage("Please Enter Your Message");
				$("#message").focus().addClass("error-focus");
				
			}else if(!spam==""){
				
				errorMessage("Spam Attack!!");

			}else{
				
				//if all fields are valid then send data to the server for processing
				successMessage("Email being sent... please wait");
				
				//serialize all the form field values as a string
				var formData = $(this).serialize();
				
				//send serialized data string to the send mail php via POST method
				$.ajax({
					 
					 type: "POST",
					 url: "send-mail.php",
					 data: formData,
					 
					 success: function(rtnMsg){
						 
						 if(rtnMsg=="error"){ 
						 
							 	errorMessage("Opps, something went wrong - message not sent");
							 
							} else if(rtnMsg=="success"){
								
								successMessage("Thanks "+name+", your message has been successfully sent");
								
								//clear all form input values
								$("#contact-form input:text, #contact-form textarea").val("")
								
							}//end if else
							
					 }//end success function
					 
				});//end ajax function
				
			}//end else

   });//end submit
	
	//click handler for reset button - hides the status message
	$("#contact-form #reset").click(function(){
			$("#status").slideUp("fast");
			$("#contact-form input:text, #contact-form textarea").removeClass("error-focus");
	});
													 
});

//functions

function errorMessage(message){
	$("#status").removeClass("success").addClass("error");
	statusMessage(message);
}

function successMessage(message){
	$("#status").removeClass("error").addClass("success");
	statusMessage(message);
}

function statusMessage(message){
	$("#status").html(message).slideDown("fast");
}

function isValidEmail(email) {
	var emailRx = /^[\w\.-]+@[\w\.-]+\.\w+$/;
	return  emailRx.test(email);
}
