// Frontline front page form functions and validation
//
// Wirtten by Erik Teichmann
// www.erikteichmann.com
//
// Copyright 2012 Netwirks LLC.
// www.netwirks.com
//

$(document).ready(function() {
	// Field Values
	$('#contactForm #name').val('Full Name');
	$('#contactForm #email').val('Email');
	$('#contactForm #phone').val('Phone Number');
	$('#contactForm #zip').val('Zip Code');
	// Click to clear Values
	$('#contactForm #name').focus(function() {
		if($('#contactForm #name').val() === 'Full Name') {
		$('#contactForm #name').val('');
		}
	})
	$('#contactForm #email').focus(function() {
		if($('#contactForm #email').val() === 'Email') {
		  $('#contactForm #email').val('');
		}
	})
	$('#contactForm #phone').focus(function() {
		if($('#contactForm #phone').val() === 'Phone Number') {
		  $('#contactForm #phone').val('');
		}
	})
	$('#contactForm #zip').focus(function() {
		if($('#contactForm #zip').val() === 'Zip Code') {
		$('#contactForm #zip').val('');
	}
	})
	// On focus out
	$('#contactForm #name').focusout(function() {
		if($('#contactForm #name').val() === '') {
		$('#contactForm #name').val('Full Name');
		}
	})
	$('#contactForm #email').focusout(function() {
		if($('#contactForm #email').val() === '') {
		  $('#contactForm #email').val('Email');
		}
	})
	$('#contactForm #phone').focusout(function() {
		if($('#contactForm #phone').val() === '') {
		  $('#contactForm #phone').val('Phone Number');
		}
	})
	$('#contactForm #zip').focusout(function() {
		if($('#contactForm #zip').val() === '') {
		$('#contactForm #zip').val('Zip Code');
	}
	})
	// Form Functions
	$('#contactForm #submit').click(function() {
		// Fade in the progress bar
		$('#contactForm #formProgress').hide();
		$('#contactForm #formProgress').html('Sending&hellip;');
		$('#contactForm #formProgress').fadeIn();
		// Disable the submit button
		$('#contactForm #submit').attr("disabled", "disabled");
		
		// Clear and hide any error messages
		$('#contactForm .formError').html('');
		
		// Set temaprary variables for the script
		var isFocus=0;
		var isError=0;
		
		// Get the data from the form
		var name=$('#contactForm #name').val();
		var email=$('#contactForm #email').val();
		var phone=$('#contactForm #phone').val();
		var zip=$('#contactForm #zip').val();
		if ($('#contactForm #pestcontrol').is(':checked')) {
		var pestcontrol='Checked' }
		else {
		var pestcontrol='Not Checked' }
		if ($('#contactForm #termite').is(':checked')) {
		var termite='Checked' }
		else {
		var termite='Not Checked' }
		
		// Validate the data
		if(name=='') {
			$('#contactForm #errorName').css({visibility: "visible"})
			$('#contactForm #errorName').html('This is a required field.');
			isFocus=1;
			isError=1;
		}
		if(email=='') {
		$('#contactForm #errorEmail').css({visibility: "visible"})
		$('#contactForm #errorEmail').html('This is a required field.');
			if(isFocus==0) {
				isFocus=1;
			}
			isError=1;
		} else {
			var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
			if(reg.test(email)==false) {
			$('#contactForm #errorEmail').css({visibility: "visible"})
			$('#contactForm #errorEmail').html('Invalid email address.');
				if(isFocus==0) {
					isFocus=1;
				}
				isError=1;
			}
		}
		if(phone=='') {
		$('#contactForm #errorPhone').css({visibility: "visible"})
		$('#contactForm #errorPhone').html('This is a required field.');
			if(isFocus==0) {
				isFocus=1;
			}
			isError=1;
		} else {
			var reg = /^\+?(?=(\D*\d){9})[0-9\/.()-]*$/;
			if(reg.test(phone)==false) {
			$('#contactForm #errorPhone').css({visibility: "visible"})
			$('#contactForm #errorPhone').html('Invalid phone number.');
				if(isFocus==0) {
					isFocus=1;
				}
				isError=1;
			}
		}
		if(zip=='') {
		$('#contactForm #errorZip').css({visibility: "visible"})
		$('#contactForm #errorZip').html('This is a required field.');
			if(isFocus==0) {
				isFocus=1;
			}
			isError=1;
		} else {
			var reg = /^(?!0{5})(\d{5})(?!-?0{4})(-?\d{4})?$/;
			if(reg.test(zip)==false) {
			$('#contactForm #errorZip').css({visibility: "visible"})
			$('#contactForm #errorZip').html('Invalid Zip code.');
				if(isFocus==0) {
					isFocus=1;
				}
				isError=1;
			}
		}
		
		// Terminate the script if an error is found
		if(isError==1) {
			$('#contactForm #formProgress').html('');
			$('#contactForm #formProgress').hide();
			
			// Activate the submit button
			$('#contactForm #submit').attr("disabled", "");
			
			return false;
		}
		
		$.ajaxSetup ({
			cache: false
		});
		
		var dataString = 'name='+ name + '&email=' + email +  '&phone=' + phone + '&zip=' + zip +  '&pestcontrol=' + pestcontrol + '&termite=' + termite;  
		$.ajax({
			type: "POST",
			url: "http://www.frontlinepest.com/submit-form-ajax.php",
			data: dataString,
			success: function(msg) {
				
				//alert(msg);
				
				// Check to see if the mail was successfully sent
				if(msg=='Mail sent') {
					// Update the progress bar
					$('#contactForm #formProgress').html('Message sent.').delay(2000).fadeOut(400);
					
					// Hide Error Tabs
					$('#contactForm #errorNamel').css({visibility: "hidden"})
					$('#contactForm #errorEmail').css({visibility: "hidden"})
					$('#contactForm #errorPhone').css({visibility: "hidden"})
					$('#contactForm #errorZip').css({visibility: "hidden"})

					// Clear the subject field and message textbox
					$('#contactForm #name').val('Full Name');
					$('#contactForm #email').val('Email');
					$('#contactForm #phone').val('Phone Number');
					$('#contactForm #zip').val('Zip Code');
					$('#contactForm #pestcontrol').removeAttr('checked');
					$('#contactForm #termite').removeAttr('checked');
	$('#contactForm #name').one('focus',function() {
		$('#contactForm #name').val('');
	})
	$('#contactForm #email').one('focus',function() {
		$('#contactForm #email').val('');
	})
	$('#contactForm #phone').one('focus',function() {
		$('#contactForm #phone').val('');
	})
	$('#contactForm #zip').one('focus',function() {
		$('#contactForm #zip').val('');
	})

				} else {
					$('#contactForm #formProgress').html('');
					alert('There was an error sending your email. Please try again.');
				}
				
				// Activate the submit button
				$('#contactForm #submit').attr("disabled", "");
			},
			error: function(ob,errStr) {
				$('#contactForm #formProgress').html('');
				alert('There was an error sending your email. Please try again.');
				
				// Activate the submit button
				$('#contactForm #submit').attr("disabled", "");
			}
		});
		
		return false;
	});
});
$(document).ready(function() {
			$('#contactForm #name').focus(function() {
					$('#contactForm #errorName').css({visibility: "hidden"})
			});
			$('#contactForm #email').focus(function() {
					$('#contactForm #errorEmail').css({visibility: "hidden"})
				});
			$('#contactForm #phone').focus(function() {
					$('#contactForm #errorPhone').css({visibility: "hidden"})
				});
			$('#contactForm #zip').focus(function() {
					$('#contactForm #errorZip').css({visibility: "hidden"})
			});

			});
	$(document).ready(function() {

		$(".FL-login-un").one('focus', (function() {
		if ($(".FL-login-un").val() === 'username') {
			$(".FL-login-un").val('');
			$(".FL-login-pw").val('');
		}
		})
	)
	});
	
