
// fcn sets the default value of form elements and hides/shows that based on user interaction.
function formEvents(){
	//get all forms on page
	var allforms = document.getElementsByTagName('form');
	
	//loop through forms
	for(i=0;i<allforms.length;i++){
		
		//get all input tags in current form
		var thisform = allforms[i].getElementsByTagName('input');
		
		//loop through those inputs
		for(j=0;j<thisform.length;j++){
			//qualify that the input is a text input, and has a title, and isn't being excluded by using the 'noevents' class
			if(thisform[j].title && thisform[j].title != '' && thisform[j].type != 'image' && thisform[j].type != 'button' && thisform[j].type != 'submit' && thisform[i].className != 'noevents'){
				//assign the title to the value
				thisform[j].value = thisform[j].title;
				//events that will remove/replace default values into fields
				thisform[j].onfocus = function(){if(this.title == this.value){this.value = '';}}
				thisform[j].onblur = function(){if(this.value == ''){this.value = this.title;}}
			}
		}
	}
}

//function to validate mailing list signup
function mailinglist(){
	
	var err_count = 0;
	var err_message = "";
	
	if(isEmpty(document.email_signup.firstname.value) || document.email_signup.firstname.value == document.email_signup.firstname.title){
		err_count++;
		err_message += "Please enter your first name. \n";
		$("#firstname").addClass('error');
	}else{
		$("#firstname").removeClass('error');
	}
	
	if(isEmpty(document.email_signup.lastname.value) || document.email_signup.lastname.value == document.email_signup.lastname.title){
		err_count++;
		err_message += "Please enter your last name. \n";
		$("#lastname").addClass('error');
	}else{
		$("#lastname").removeClass('error');
	}
	
	if(isEmpty(document.email_signup.email.value) || !isEmail(document.email_signup.email.value)){
		err_count++;
		err_message += "Please use a valid email address. \n";
		$("#email").addClass('error');
	}else{
		$("#email").removeClass('error');	
	}
	
	if(err_count == 0){
		sendMailingList();
	}else{
		
	}
	
	return false;
}

// fcn for email signup form
function sendMailingList(){

		var email = document.email_signup.email.value;
		var fn = document.email_signup.firstname.value;
		var ln = document.email_signup.lastname.value;
		
		var pars = 'email='+email+'&firstname='+fn+'&lastname='+ln;
		
		$.ajax({
		   type: "POST",
		   url: "ajax.mailing-list.php",
		   data: pars,
			success: function(msg){
				$('#ml_feedback').show();
				$("#ml_feedback").html('Thank you. Your email has been added.');
				document.email_signup.reset();
			}
		 });
		
		return false;
}

//function to validate newsletter signup
function newslettersignup(){
	
	var err_count = 0;
	var err_message = "";
	
	if(isEmpty(document.newsletter_signup.fullname.value)){
		err_count++;
		err_message += "Please enter your name.<br />";
	}else{
		$('#nl_feedback').hide();	
	}
	
	if(isEmpty(document.newsletter_signup.address1.value)){
		err_count++;
		err_message += "Please enter your address.<br />";
	}else{
		$('#nl_feedback').hide();	
	}
	
	if(isEmpty(document.newsletter_signup.city.value)){
		err_count++;
		err_message += "Please enter your city.<br />";
	}else{
		$('#nl_feedback').hide();	
	}
	
	if(isEmpty(document.newsletter_signup.state.value)){
		err_count++;
		err_message += "Please enter your state.<br />";
	}else{
		$('#nl_feedback').hide();	
	}
	
	if(isEmpty(document.newsletter_signup.zipcode.value) || !isZip(document.newsletter_signup.zipcode.value)){
		err_count++;
		err_message += "Please enter a valid zipcode.<br />";
	}else{
		$('#nl_feedback').hide();	
	}

	if(isEmpty(document.newsletter_signup.email.value) || !isEmail(document.newsletter_signup.email.value)){
		err_count++;
		err_message += "Please use a valid email address.<br />";
	}else{
		$('#nl_feedback').hide();	
	}
	
	if(err_count == 0){
		sendNewsletterSignup();
	}else{
		$('#nl_feedback').show();
		$("#nl_feedback").html('<p>'+err_message+'</p>');
	}
	
	return false;
}

// fcn for newsletter signup form
function sendNewsletterSignup(){

		var fullname = document.newsletter_signup.fullname.value;
		var address1 = document.newsletter_signup.address1.value;
		var address2 = document.newsletter_signup.address2.value;
		var city = document.newsletter_signup.city.value;
		var state = document.newsletter_signup.state.value;
		var zipcode = document.newsletter_signup.zipcode.value;
		var phone = document.newsletter_signup.phone.value;
		var email = document.newsletter_signup.email.value;
		
		var pars = 'fullname='+fullname+'&address1='+address1+'&address2='+address2+'&city='+city+'&state='+state+'&zipcode='+zipcode+'&phone='+phone+'&email='+email;
		
		$.ajax({
		   type: "POST",
		   url: "ajax.newsletter-signup.php",
		   data: pars,
			success: function(msg){
				$('#nl_feedback').show();
				$("#nl_feedback").html('<p>Thank you. Your information has been added to our mailing list.</p>');
				document.newsletter_signup.reset();
			}
		 });
		
		return false;
}


// fcn for career form
function sendCareer(cid){
	
		var fname = document.careerform.fullname.value;
		var email = document.careerform.email.value;
		var msg = document.careerform.message.value;
		
		var err_count = 0;
		var err_message = "";

		if(isEmpty(fname)){
			err_count++;
			err_message += "Please enter your full name. <br />";
		}
		
		if(isEmpty(email) || !isEmail(email)){
			err_count++;
			err_message += "Please use a valid email address. <br />";
		}
		
		if(isEmpty(msg)){
			err_count++;
			err_message += "Please enter a message. ";
		}
		
		if(err_count > 0){
			
			$('#career_feedback').show();
			$("#career_feedback").html(err_message);
			
		}else{
			return true;
			/*
				var pars = 'email='+email+'&fullname='+fname+'&message='+msg+'&cid='+cid;

				$.ajax({
				   type: "POST",
				   url: "ajax.career-opportunities.php",
				   data: pars,
					success: function(msg){
						$('#career_feedback').show();
						$("#career_feedback").html('Thank you for your interest in this position. We will review your message shortly.');
						document.careerform.reset();
					}
				 });
			*/
				
		}
			
		return false;
}

// fcn for contact form
function sendContact(){
	
		var fname = document.contactform.fullname.value;
		var email = document.contactform.email.value;
		var msg = document.contactform.message.value;
		
		var err_count = 0;
		var err_message = "";

		if(isEmpty(fname)){
			err_count++;
			err_message += "Please enter your full name. <br />";
		}
		
		if(isEmpty(email) || !isEmail(email)){
			err_count++;
			err_message += "Please use a valid email address. <br />";
		}
		
		if(isEmpty(msg)){
			err_count++;
			err_message += "Please enter a message. ";
		}
		
		if(err_count > 0){
			
			$('#contact_feedback').show();
			$("#contact_feedback").html(err_message);
			
		}else{
			
				var pars = 'email='+email+'&fullname='+fname+'&message='+msg;

				$.ajax({
				   type: "POST",
				   url: "ajax.contact.php",
				   data: pars,
					success: function(msg){
						$('#contact_feedback').show();
						$("#contact_feedback").html('Thank you for contacting us. We will review your message shortly.');
						document.contactform.reset();
					}
				 });
				
		}
			
		return false;
}

//functions for hiding/showing the main nav and subnav
function initNav(){
	var mainnavs = $("#nav li");

		for(var i = 0; i<mainnavs.length;i++){
			//mainnavs[i].onmouseover=function(){showSub(this.id,this.title); }
			//mainnavs[i].onmouseout=function(){hideSub(this.id,this.title); }
		}
	
		var subnavs = $(".subnav");

			for(var i = 0; i<subnavs.length;i++){
				subnavs[i].onmouseover=function(){showSub(this.title,this.id); }
				subnavs[i].onmouseout=function(){hideSub(this.title,this.id); }
			}
}


timer = null;

function deactivateAll(){
//build an array of navs/subnavs so we can change/hide them all
mainnavids = new Array('nav_about','nav_conservation','nav_education','nav_support','nav_jobs','nav_hire');
subnavids = new Array('subnav_about','subnav_conservation','subnav_education','subnav_support','subnav_jobs','subnav_hire');

	for(var i=0;i<mainnavids.length;i++){
		$("#"+mainnavids[i]).removeClass('act');
		$("#"+subnavids[i]).hide();
	}

}

function showSub(main,sub){
if(timer) clearTimeout(timer);
	deactivateAll();
	
	//prepend one of the values, based on where it came from
	if(sub.indexOf('subnav_') > -1){
		//this came from the subnav
		var main = 'nav_'+main;
	}else{
		var sub = 'subnav_'+sub;
	}
	
	$("#"+main).addClass('act');
	$("#"+sub).show();
}


function hideSub(main,sub){
timer = setTimeout("doSub()",100);
}

function doSub(){
deactivateAll();
if(currentnavitem){showSub(currentnavitem,currentsubnavitem);}
} 


//inits
window.onload = function(){
	formEvents();
	initNav();
	if(currentnavitem){showSub(currentnavitem,currentsubnavitem);}
	$('#sponsor_logos').cycle({ 
    fx:     'fade', 
    speed:   300, 
    timeout: 3000,
    pause:   3 
	});
}