$jq(document).ready(function(){

	$jq("#zip_var").val("");
	
	var zipVal = $jq("#zip_var").val();
	

	
	$jq("#senior_older_than_65_yes").addClass("clickedRadio");
	
		$jq("#senior_older_than_65_yes, #senior_older_than_65_no").bind('click', function(e){
			e.preventDefault();		
			
			if($jq("#senior_older_than_65_yes, #senior_older_than_65_no").hasClass("clickedRadio")){
				$jq("#senior_older_than_65_yes, #senior_older_than_65_no").removeClass("clickedRadio");
				
			}
			
			$jq(this).addClass("clickedRadio");
			
			var clickedId = $jq(this).attr('id');
			
			switch(clickedId) {
				case 'senior_older_than_65_yes':
					$jq("#older_than_65").attr('value','yes');
				break;
				case 'senior_older_than_65_no':
					$jq("#older_than_65").attr('value','no');
				break;
				default:
				break;
			}
			

		
	});
	
	
	//handle the select menu in the sidebar
	$jq('#select_state').change(function(){
		
		var selectedOptVal = $jq(this).children().filter('option:selected').attr('value');
		
		document.location.href= selectedOptVal;			  
	
	});
	
	var contentHeight = $jq('#container').height();
	var sidebarHeight = $jq('#sidebar').height();
	if(contentHeight > sidebarHeight){
		$jq('#sidebar').height(contentHeight);
	}
	
	// NAVIGATION - handle drop downs since li:hover doesnt work on IE
	$jq('.menu li').has('ul').each(function(){ 
		$jq(this).hover(
			function(){
				$jq(this).children('ul:first').stop(true,true).addClass('hovering').fadeIn('250');
			},
			function(){
				$jq(this).children('ul:first').stop(true,true).fadeOut('250',function(){
					$jq(this).removeClass('hovering');
				});
			});
	});
	
	$jq('#state_dropdown').hover(
		function(){
			$jq(this).children('div').stop(true,true).fadeIn('250');
		},
		function(){
			$jq(this).children('div').stop(true,true).fadeOut('250');
		}
	);
	
	
	//-------------------------------------------------------------------------------------------------- FORM STEP 1
	
	if($jq('#label_first_name').length == 0) {
	// check for the existence of a first name input, if it doesn't exist then we know we are on a page with a zip-code form.
		$jq("#GetInsForm").validate({
				rules: {
					older_than_65: { 
						required: {
							depends: function(){
								if($jq("#older_than_65").length != 0) return true;
								else return false;
							}
						}
					},
					zip: { required: true, minlength: 5, maxlength: 5, number: true, remote: "/ajax.php?action=checkZip"}
				},
				messages: {
					zip: 	{ 	
								required: "This field is required.",
								number: "Please Enter 5 Numbers.",
								minlength: "Please Enter 5 Digits.",
								maxlength: "Please Enter 5 Digits.",
								remote: "Invalid Zip Code."
							}
				},
				errorPlacement: function(error, element) {
					error.appendTo( element.parents('p:first'));
				},
				highlight: function(element){
					if($jq(element).parents('p:first').hasClass('errorFixed')){
						$jq(element).parents('p:first').removeClass('errorFixed');
					}
					
					$jq(element).parents('p:first').addClass('errorField');
				},
				unhighlight: function(element){
					if($jq(element).parents('p:first').hasClass('errorField')){
						$jq(element).parents('p:first').removeClass('errorField');
					
					}
					$jq(element).parents('p:first').addClass('errorFixed');
				},
				submitHandler: function(form){
					$jq(form).fadeOut('fast', function() {$jq("#wait").fadeIn("fast");});
					setTimeout("document.getElementById('GetInsForm').submit()",3000);
				}
		
			});
	}
	else {
	/*----------------------------------------------------------------------------------------------------------------- FORM STEP 2 */
		$jq("#GetInsForm").validate({
			rules: {
				FirstName: { required: true },
				LastName: { required: true },
				Address: { required: true },
				City: { required: true },
				Telephone_ac: { required: {
									depends: function(element){
										return isFinite($jq("#phone3").val());
									}
								}, 
								number: true, minlength:3, maxlength:3},
				Telephone_pf: { required: {
									depends: function(element){
										return isFinite($jq("#phone3").val());
									}
								}, number: true, minlength:3, maxlength:3},
				Telephone_sf: { required: true,  number: true, minlength:4, maxlength:4},
				
				birthMonth: { 
					required: {
						depends: function(){
							if($jq("#birthYear").length != 0 && $jq("#birthYear").val() != ""){
								return true;	
							}
							else return false;
						}
					}
				, number:true},
				birthDay: { 
					required: {
						depends: function(){
							if($jq("#birthYear").length != 0 && $jq("#birthYear").val() != ""){
								return true;	
							}
							else return false;
						}
					}
				,number:true},
				birthYear: { required: true, number:true},
				Gender: { 
					required: {
						depends: function(){
							if($jq("#gender_male").length != 0) return true;
							else return false;
						}
					}
				},
				Email: { required: true, email: true }
			},
			groups: {
				birthDate: "birthMonth birthDay birthYear",
				phoneNum: "Telephone_ac Telephone_pf Telephone_sf"
			},
			errorPlacement: function(error, element) {
				error.appendTo( element.parent());
			},
			messages: {
				Email: { 	required: "An Email required.",
							email: "You must enter a valid email address."
						 }
			},
			highlight: function(element){
					if($jq(element).parent().hasClass('errorFixed')){
						$jq(element).parent().removeClass('errorFixed');
					}
					
					$jq(element).parent().addClass('errorField');
			},
			unhighlight: function(element){
				
							var elmID = $jq(element).attr('id');
							
							if( elmID == "phone1" || elmID == "phone2"|| elmID == "phone3"){
								var phoneSum = ($jq("#phone1").val()+$jq("#phone2").val()+$jq("#phone3").val());
								if(isFinite(phoneSum) && phoneSum.length == 10){
									if($jq(element).parent().hasClass('errorField')){
										$jq(element).parent().removeClass('errorField');
									
									}
									$jq(element).parent().addClass('errorFixed');
								}
							}
							else if( elmID == "birthMonth" || elmID == "birthDay"|| elmID == "birthYear") {
								if($jq("#birthMonth").val() != "" && $jq("#birthDay").val() != "" && $jq("#birthYear").val() != ""){
									if($jq(element).parent().hasClass('errorField')){
										$jq(element).parent().removeClass('errorField');
									
									}
									$jq(element).parent().addClass('errorFixed');
								}
							}
							else {
								
								if($jq(element).parent().hasClass('errorField')){
									$jq(element).parent().removeClass('errorField');
								
								}
								$jq(element).parent().addClass('errorFixed');
							}
			},
			submitHandler: function(form){
				$jq(form).fadeOut('fast', function() {$jq("#wait").fadeIn("fast"); $jq('#form-arrow').hide();});
				setTimeout("document.getElementById('GetInsForm').submit()",3000);
			}

		});

		
	}

	
});

function GetInsurance()
{
}
 	
 	function callError(type, errorZip, errorSnr)
 	{
 		
		if(type == 'zip'){
	 		$jq("#zip_var").css({ "border-color": "#FF0000","background-color":"#ffdfdf"});
	 		$jq("#error_zip").fadeIn(200);
 		} else if(type == 'senior'){
	 		$jq("#error_snr").fadeIn(200);
 		}
		
		if(!errorSnr){
	 		$jq("#error_snr").fadeOut(200);
		}
		if(!errorZip){
	 		$jq("#zip_var").css({ "border-color": "#000000","background-color":"#ffffff"});
	 		$jq("#error_zip").fadeOut(200);
		}
		
 		$jq("#error-icon").show();
 		return;
 	}

	function isANumber(toCheck){
		var isNumber = /^\d+$jq/.test(toCheck);
		return isNumber;
	}

