// JavaScript Document

window.onload=kickOffFunction;
function kickOffFunction() {
	
	if(document.getElementById('menu'))
		{
			showThisMenu('id');
		}
	
	//countryPopulate();
	getQueryVariable("isInt");
}


/*================================================
==================================================
============  Pulls Query String =================
==================================================
================================================*/	
function getQueryVariable(variable) {
  var query = window.location.search.substring(1);
  var vars = query.split("&");
  for (var i=0;i<vars.length;i++) {
    var pair = vars[i].split("=");
    if (pair[0] == variable) {
      return pair[1];
    }
  }
  //alert('Query Variable ' + variable + ' not found');
} 





jQuery(document).ready(function(){



/*================================================
==================================================
============  This is a Jquery script to take over all form validation (or most of it at least)
==================================================
================================================*/	
jQuery(".contact_form").validate({
	//set the rules for the field names
rules: {
	firstname: {	
		required: true
		},
	email: {	
		required: true,
		email: true
		}
},
//set messages to appear inline
messages: {
	firstname: {
      required: "<br /> -Please enter a name"
    },
	email: {
		required: "<br /> -Please enter an email",
		email: "<br /> -Please enter a ,br />valid email address"
	}
}
});




/*================================================
==================================================
============  This is a Jquery script to take over all lead request handling
==================================================
================================================*/	
jQuery(".contact_form").submit(function(){
	// this is used to disable the submit button while the form is processing
	var jQuerythat = jQuery(this);
	var submitButton = jQuerythat.find("input[type='submit']");
	jQuery(submitButton).attr("disabled", "disabled"); 

	var str = jQuery(this).serialize();
	//alert(str);
		var response = jQuery.ajax({
			type: "POST",
			url: "http://www.robalo.com/pear/example.php",
			dataType: "xml",
			data: str,
			
			error: function(){ 
				alert('Question has not been submitted, please contact Robalo');
			},
			success: function(xml)
				{ 
				// This sets the uniqueID field so the user can be edited before the form is cleared
				if(xml)
					{	
					//alert(response.text);
					// closes the loading wheel visual
					
					//alert("Successfully Submitted! You should be contacted promptly.");
					
					
					// our response here is XML 
					//alert(response.responseXML);
					//alert(response.responseXML);
					var name;
					var address1;
					var city;
					var state;
					var zip;
					var phone;
					var email;
					var url;

					jQuery(xml).find('dealer').each(function(){
												  
												  // get the dealership name
												  name = jQuery(this).find('name').text();
												  address = jQuery(this).find('address1').text();
												  city = jQuery(this).find('city').text();
												  state = jQuery(this).find('state').text();
												  zip = jQuery(this).find('zip').text();
												  phone = jQuery(this).find('phone').text();
												  email = jQuery(this).find('email').text();
												  url = jQuery(this).find('url').text();
												  //alert(name);
												  });
					
					
					
					
					// do some error checking/handling here
					if(state == "ITA")
						{
						state = "";
						}

					
					//alert(name);
					// here we populate the dealership's info
					//Populates Header and Footer Dealer Data
					jQuery("#dealerInfo").html("<strong>" + name + "</strong><br />" + address + "<br />" + city + ", "+ state + " " + zip + "<br />" + phone);
					
					jQuery("#dealerLinks").html("Email Dealer:  <a href = 'mailto:" + email + "'>Click Here</a>" + "<br /><br />Dealer Website:  <a href = " + url + ">" + url + "</a>");
					
					jQuery("#dealerInfoTop").html("<strong>" + name + "</strong><br />" + address + "<br />" + city + ", "+ state + " " + zip + "<br />" + phone);
					
					jQuery("#dealerLinksTop").html("Email Dealer:  <a href = 'mailto:" + email + "'>Click Here</a>" + "<br />Dealer Website:  <a href = " + url + ">" + url + "</a>");
					
					jQuery("#needInfo").html(" ");
					
					jQuery("#firstName").hide();
					
					jQuery("#commentsTwo").hide();
					
					//Populates Contact Form Data
					jQuery("#needInfo1").html("<strong>Request Submitted. <br /> Your Local Dealer:</strong>");
					
					jQuery("#dealerInfo1").html("<div class=dealerInfo2 style=margin-top:40px;width:432px;><strong>" + name + "</strong><br />" + address + "<br />" + city + ", "+ state + " " + zip + "<br />" + phone + "</div><br /><br /><br /><div class=dealerLinks1>Email Dealer:  <a href = 'mailto:" + email + "'>Click Here</a>" + "<br /><br />Dealer Website:  <a href = " + url + ">" + url + "</a></div>" );
					
					//clear contact form divs
					jQuery("#contact1").hide();
					
					jQuery("#commentsOne").hide();
					
					// enables the submit button once again
					jQuerythat.find("input[type='submit']").removeAttr('disabled');
					}
					
				else
					{
					alert("An error has occurred, please try again or notify Robalo", "");
					// sets buttons back enabled
					//jQuerythat.find("input[type='submit']").attr("value", btnText);
                  	//jQuerythat.find("input[type='submit']").removeAttr('disabled');
					//alertResponse(response);
					}
				}
			
			});
	return false;

});






/*================================================
==================================================
====== Contact DIv visible/invisible==============
==================================================
================================================*/

jQuery(".contact_us_show").click(function(){
		jQuery('#contact').removeClass('hiddenDiv');
		jQuery('#contact').addClass('visibleDiv');
		});

jQuery(".contact_us_hide").click(function(){
		jQuery('#contact').removeClass('visibleDiv');
		jQuery('#contact').addClass('hiddenDiv');
		});



/*================================================
==================================================
====== Credit DIv visible/invisible==============
==================================================
================================================*/


jQuery(".credits_show").click(function(){
		jQuery('#credits').removeClass('hiddenDiv');
		jQuery('#credits').addClass('visibleDiv');
		});

jQuery(".credits_hide").click(function(){
		jQuery('#credits').removeClass('visibleDiv');
		jQuery('#credits').addClass('hiddenDiv');
		});





/*================================================
==================================================
====== Load About Us Html file==============
==================================================
================================================*/
jQuery(".about_us_show").click(function(){
		jQuery("#contact").removeClass="hiddenDiv";
		jQuery("#credits").removeClass="hiddenDiv";
		jQuery("#contact").addClass="visibleDiv";
		jQuery("#credits").addClass="visibleDiv";
	 	jQuery('#about').show();
		});
	

/*================================================
==================================================
====== Clear all divs and show only flash ========
==================================================
================================================*/	
	
	
jQuery(".hide_all").click(function(){
		jQuery('#about').hide();
		jQuery("#contact").removeClass="visibleDiv";
		jQuery("#credits").removeClass="visibleDiv";
		jQuery("#contact").addClass="hiddenDiv";
		jQuery("#credits").addClass="hiddenDiv";
		});






/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
}); // end document ready
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

	
/*================================================
==================================================
============  Zip Dealer Locator Function=========
==================================================
================================================*/

//  Sends zip and returns nearest dealer -- Does NOT insert lead
	
	function dealerLocator()
	{
		var zip1 = document.getElementById('postalcode').value;
		//var country = document.getElementById('country').value;
		
		//checks for 6 digit zip which would suggest canadian.  If length = 6 zip is split into proper format
		if (zip1.length == 7)
			{
			var country = "Canada";
			}
		else if (zip1.length == 6)
			{
			zip1 = zip1.substring(0,3) + " " + zip1.substring(3);
			var country = "Canada";
			}
		//US zip code
		else if(zip1.length == 5)
			{
			var country = "United States";
			}
		
		var req = null;
	
		//document.getElementById("postalcode").value = "Finding...";
 
		if (window.XMLHttpRequest)
		{
 			req = new XMLHttpRequest();
			if (req.overrideMimeType) 
			{
				req.overrideMimeType('text/xml');
			}
		} 
		else if (window.ActiveXObject) 
		{
			try {
				req = new ActiveXObject("Msxml2.XMLHTTP");
			} catch (e)
			{
				try {
					req = new ActiveXObject("Microsoft.XMLHTTP");
				} catch (e) {}
			}
	        	}

req.onreadystatechange = function()
		{ 
		//alert("req.onreadystatechange  function kicked off");
			document.getElementById("postalcode").value = "Finding...";
			if(req.readyState == 4)
			{
				if(req.status == 200)
				{
					var doc = req.responseXML;
					
					var name = doc.getElementsByTagName('name')[0].firstChild.data;
					var address = doc.getElementsByTagName('address1')[0].firstChild.data;
					var city = doc.getElementsByTagName('city')[0].firstChild.data;
					var state = doc.getElementsByTagName('state')[0].firstChild.data;
					//var emailD = doc.getElementsByTagName('email')[0].firstChild.data;
					
					
					// If statements to check for null or undefined elements out of the red oak system
					if(state == "ITA")
						{
						state = "";
						}
						
					if(doc.getElementsByTagName('email')[0].hasChildNodes())
						{
					var emailD = doc.getElementsByTagName('email')[0].firstChild.data;
						}
					else
						{
						var emailD = " ";
						}
						
					if(doc.getElementsByTagName('zip')[0].hasChildNodes())
						{
					var zipD = doc.getElementsByTagName('zip')[0].firstChild.data;
						}
					else
						{
						var zipD = " ";
						}
						
					if(doc.getElementsByTagName('phone')[0].hasChildNodes())
						{
					var phone = doc.getElementsByTagName('phone')[0].firstChild.data;
						}
					else
						{
						var phone = " ";
						}
					
					
					if(doc.getElementsByTagName('url')[0].hasChildNodes())
						{
						var website = doc.getElementsByTagName('url')[0].firstChild.data;	
						}
					else
						{
						var website = " ";
						}
					
					document.getElementById("dealerInfoTop").innerHTML  = "<strong>" + name + "</strong><br />" + address + "<br />" + city + ", "+ state + " " + zipD + "<br />" + phone;
					
					document.getElementById("dealerLinksTop").innerHTML  = "Dealer Email:  <a href = 'mailto:" + emailD + "'>Click Here</a>" + "<br />Dealer Website:  <a href = " + website + ">" + website + "</a>";
					
					document.getElementById("postalcode").value = "Zip Postal Code";
					
					}	
		
				
				else	
				{
					document.getElementById("postalcode1").innerHTML="Error: returned status code " + req.status + " " + req.statusText;
				}	
			} 
		};
		var queryString1 = "http://www.robalo.com/pear/locator.php?postalcode="+zip1+"&prodline=2&country="+country;
		
		req.open("GET", queryString1, true);
		//req.open("GET", "http://www.robalo.com/AJAX/RedOak.xml", true); 
		req.send(null);
	} 
	
	
	
/*================================================
==================================================
====== International Dealer Locator Function=========
==================================================
================================================*/

//  Sends Country and returns nearest dealer -- Does NOT insert lead
	
	function dealerLocatorInt()
	{
		var country = document.getElementById('country').value;
		//var country = document.getElementById('country').value;
		var req = null;

		//document.getElementById("country").value = "Finding...";
 
		if (window.XMLHttpRequest)
		{
 			req = new XMLHttpRequest();
			if (req.overrideMimeType) 
			{
				req.overrideMimeType('text/xml');
			}
		} 
		else if (window.ActiveXObject) 
		{
			try {
				req = new ActiveXObject("Msxml2.XMLHTTP");
			} catch (e)
			{
				try {
					req = new ActiveXObject("Microsoft.XMLHTTP");
				} catch (e) {}
			}
	        	}

req.onreadystatechange = function()
		{ 
			if(req.readyState == 4)
			{
				if(req.status == 200)
				{
					var doc = req.responseXML;
					
					var name = doc.getElementsByTagName('name')[0].firstChild.data;
					var address = doc.getElementsByTagName('address1')[0].firstChild.data;
					var city = doc.getElementsByTagName('city')[0].firstChild.data;
					var state = doc.getElementsByTagName('state')[0].firstChild.data;
					var emailD = doc.getElementsByTagName('email')[0].firstChild.data;
					
					
					// If statements to check for null or undefined elements out of the red oak system
					if(state == "ITA")
						{
						state = "";
						}
					
					if(doc.getElementsByTagName('zip')[0].hasChildNodes())
						{
					var zipD = doc.getElementsByTagName('zip')[0].firstChild.data;
						}
					else
						{
						var zipD = " ";
						}
						
					if(doc.getElementsByTagName('phone')[0].hasChildNodes())
						{
					var phone = doc.getElementsByTagName('phone')[0].firstChild.data;
						}
					else
						{
						var phone = " ";
						}
					
					
					if(doc.getElementsByTagName('url')[0].hasChildNodes())
						{
						var website = doc.getElementsByTagName('url')[0].firstChild.data;	
						}
					else
						{
						var website = " ";
						}
					document.getElementById("dealerInfoTop").innerHTML  = "<strong>" + name + "</strong><br />" + address + "<br />" + city + ", " + zipD + "<br />" + phone;
					
					document.getElementById("dealerLinksTop").innerHTML  = "Dealer Email:  <a href = 'mailto:" + emailD + "'>Click Here</a>" + "<br />Dealer Website:  <a href = " + website + ">" + website + "</a>";
					
				

				}	
		
				
				else	
				{
					document.getElementById("zone").innerHTML="Error: returned status code " + req.status + " " + req.statusText;
				}	
			} 
		};
		var queryString1 = "http://www.robalo.com/pear/locator.php?country="+country+"&prodline=2";
		
		req.open("GET", queryString1, true);
		req.send(null);
	} 
	
	
	
	
	



	

	
		
