 $(document).ready(function() {
 	 	
   $('.page-item-247').mouseover(function(){
     $('ul.sub_nav').show();
   });
   $('ul.sub_nav').mouseover(function(){
     $('ul.sub_nav').show();
   });
   $('ul.sub_nav').mouseout(function(){
     $('ul.sub_nav').hide();
   });
   $('.page-item-247').mouseout(function(){
     $('ul.sub_nav').hide();
   });
   
 });

/*
jQuery(document).ready(function(){
	$('.global_nav').mouseover(function() {
		$('ul.sub_nav').css("visibility", "visible");
	});

	$('.global_nav').mouseout(function() {
		$('ul.sub_nav').css("visibility", "hidden");
	});
*/

jQuery(document).ready(function(){


	
	// Place ID's of all required fields here.
	required = ["firstname", "lastname", "address", "city", "zip", "phone", "email", "date", "institution", "zip2"];
	// If using an ID other than #email or #error then replace it here
	firstname = jQuery("#firstname");
	lastname = jQuery("#lastname");
	address = jQuery("#address");
	city = jQuery("#city");
	zip = jQuery("#zip");	
	phone = jQuery("#phone");
	email = jQuery("#email");
	date = jQuery("#date");	
	institution = jQuery("#institution");	
	zip2 = jQuery("#zip2");
	errornotice = jQuery("#error");
	// The text to show up within a field when it is incorrect
	emptyerror = "Please fill out this field.";
	emailerror = "Invalid Email";

	jQuery(".form_btn").click(function(){	
											 
		//Validate required fields
		for (i=0;i<required.length;i++) {
			var input = jQuery('#'+required[i]);
			if ((input.val() == "First Name") || (input.val() == "Last Name") || (input.val() == "Street Address") || (input.val() == "City") || (input.val() == "Zip Code") || (input.val() == "Day Phone") || (input.val() == "Email Address") || (input.val() == "MM/DD/YYYY") || (input.val() == "Institution Name") || (input.val() == emptyerror)) {
				input.addClass("error_input_field");
			} else { 				input.removeClass("error_input_field"); 			}
		}


		// Validate the e-mail.

		if (!/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/.test(jQuery("#email").val())) {
			jQuery("#email").addClass("error_input_field");
			jQuery("#email").val(emailerror);
		}

		// validate the date fields
		
	var validformat=/^\d{2}\/\d{2}\/\d{4}$/ //Basic check for format validity
	var returnval=false
	if (!validformat.test(jQuery("#date").val())) {
		alert("Invalid Date Format. Please correct and submit again.")
		jQuery("#date").addClass("error_input_field");
		jQuery("#date").val("MM/DD/YYYY");
	}
	else{ //Detailed check for valid date ranges
		var monthfield=jQuery("#date").val().split("/")[0]
		var dayfield=jQuery("#date").val().split("/")[1]
		var yearfield=jQuery("#date").val().split("/")[2]
		var dayobj = new Date(yearfield, monthfield-1, dayfield)
		if ((dayobj.getMonth()+1!=monthfield)||(dayobj.getDate()!=dayfield)||(dayobj.getFullYear()!=yearfield)) {
			alert("Invalid Day, Month, or Year range detected. Please correct and submit again.")
			jQuery("#date").addClass("error_input_field");		
			jQuery("#date").val("MM/DD/YYYY");		
		}
		else
		returnval=true
	}
/*	if (returnval==false) input.select()
	return returnval */

// validate zip fields

	var zip_val = document.getElementById("zip").value;
	var zip_lt = document.getElementById("zip").value.length;
	if( zip_lt < 5) 
		jQuery("#zip").addClass("error_input_field");
	else {
		if (isNaN(zip_val))
			jQuery("#zip").addClass("error_input_field");		
		else 
			jQuery("#zip").removeClass("error_input_field");	
	}

	var zip2_val = document.getElementById("zip2").value;
	var zip2_lt = document.getElementById("zip2").value.length;
	if( zip2_lt < 5) 
		jQuery("#zip2").addClass("error_input_field");
	else {
		if (isNaN(zip2_val))
			jQuery("#zip2").addClass("error_input_field");		
		else 
			jQuery("#zip2").removeClass("error_input_field");	
	}
	

		if (document.getElementById("state").selectedIndex == 0)  {
			jQuery("#state").addClass("select_error");
		}
		else {
			jQuery("#state").removeClass("select_error");
		}
		
		if (document.getElementById("state2").selectedIndex == 0)  {
			jQuery("#state2").addClass("select_error");
		}
		else {
			jQuery("#state2").removeClass("select_error");
		}
		
		if (jQuery('#nonconfidential').not(':checked')) {
			jQuery('#nonconfidential').next().addClass("error_label");
		}
		if (jQuery('#nonconfidential').is(':checked')) {
			jQuery('#nonconfidential').next().removeClass("error_label");
		}
		
		if (jQuery('#privacypolicy').not(':checked')) {
			jQuery('#privacypolicy').next().addClass("error_label");
		}
		
		if (jQuery('#privacypolicy').is(':checked')) {
			jQuery('#privacypolicy').next().removeClass("error_label");
		}

     
	var firstname = $("#firstname").val();
	var lastname = $("#lastname").val();
	var address = $("#address").val();
	var state = $('#state :selected').text()	
	var city = $("#city").val();
	var zip = $("#zip").val();
	var phone = $("#phone").val();
	var date = $("#date").val();
	var email = $("#email").val();
	var institution = $("#institution").val();
	var zip2 = $("#zip2").val();
	
    var dataString = 'firstname=' + firstname + '&lastname=' + lastname + '&address=' + address + '&city=' + city + '&zip=' + zip + '&phone=' + phone + '&date=' + date + '&email=' + email + '&institution=' + institution + '&zip2=' + zip2 + '&state=' + state;
	
	
		//if any inputs on the page have the class 'needsfilled' the form will not submit
		if (jQuery(":input").hasClass("error_input_field") || jQuery("label").hasClass("error_label") || jQuery("select").hasClass("select_error")) {
			return false;
		} else {
			errornotice.hide();
			 return true;	
		}	

/*				function GetXmlHttpObject()
				{
				if (window.XMLHttpRequest)
				  {
				  return new XMLHttpRequest();
				  }
				if (window.ActiveXObject)
				  {
				  return new ActiveXObject("Microsoft.XMLHTTP");
				  }
				return null;
				}
				var http=GetXmlHttpObject();

				var firstname=document.getElementById('firstname').value;
				var lastname=document.getElementById('lastname').value;
				var date=document.getElementById('date').value;
				var email=document.getElementById('email').value;
			var url="submit.php?firstname="+firstname+"&lastname="+lastname+"&date="+date+"&email="+email;
			http.onreadystatechange=function res(){
			  document.getElementById('pwindow').style.display="block";
			}
			http.open("GET",url,true);
			http.send(null);
			
			 return true;			
		} */
});

	
	jQuery.fn.clearOnFocus = function(){
    return this.focus(function(){
        var v = jQuery(this).val();
        jQuery(this).val( v === this.defaultValue ? '' : v );
    }).blur(function(){
        var v = jQuery(this).val();
        jQuery(this).val( v.match(/^\s+$|^$/) ? this.defaultValue : v );
    });
 
	};
	jQuery('input.input_field').clearOnFocus();
	
	

	$('#top10_list').hide();
	$.fn.pause = function(duration) {
   		 $(this).animate({ dummy: 1 }, duration);
   		 return this;
	};
	
	$('#flash_banner').pause(4000).fadeOut( function () {
        $('#top10_list').fadeIn();
      });


});
