$(document).ready ( function() {
  $(".footer_top .set_middle").click ( function() {
    $('.footer_overlay').slideToggle();
  });
	$("#firstpane p.menu_head").click(function() {
		$(this).next("div.menu_body").slideToggle(300).siblings("div.menu_body").slideUp("slow");
    $(this).siblings();
	});  
});

/*#############################################################################
# Contact form
#############################################################################*/

function showhide(sDivId)
{
	bAlreadyShown = WHITE_GetElementFlex(sDivId+'_checkbox').checked;

	if (!bAlreadyShown)
	{
		WHITE_GetElementFlex(sDivId).style.display = 'none';
		resetMerken(sDivId);
		resetModellen(sDivId);
	}
	else
	{
		WHITE_GetElementFlex(sDivId).style.display = 'block';
	}
}

//Merken
function fillDropDownMerk(sDivId)
{
	aMerken = new Array("Suzuki"
										 ,"Mitsubishi"
										 ,"Kia");

	oMerk = WHITE_GetElementFlex(sDivId+'_merk');
	if ('object'  == typeof oMerk)
	{
		resetMerken(sDivId);
		addMerkOptions(oMerk,aMerken);
	}
}
function addMerkOptions(oMerk,aMerken)
{
	for(var i = 0; i < aMerken.length; i++)
	{
		oMerk.options[oMerk.options.length] = new Option(aMerken[i],aMerken[i], false,false);
	}
}
function resetMerken(sDivId)
{
	var oMerk = WHITE_GetElementFlex(sDivId+'_merk');
	if ('object' == typeof oMerk)
	{
		oMerk.options.length = 0;
		oMerk.options[oMerk.options.length] = new Option('-- kies een merk --','', false,false);
	}
}

//modellen
function fillDropDownModel(sDivId, sMerk)
{
	aSuzuki = new Array("Alto"
										 ,"Splash"
										 ,"Swift"
										 ,"SX4"
										 ,"Jimny"
										 ,"Grand Vitara");

	aMitsubishi = new Array("Colt"
										 		 ,"Lancer Sportsedan"
										 		 ,"Lancer Sportback"
										 		 ,"Outlander"
										 		 ,"Grandis"
										 		 ,"L200"
										 		 ,"Pajero");

	aKia = new Array("Picanto"
						 		  ,"Venga"
						 		  ,"Soul"
						 		  ,"Pro Cee'd Coupe"
						 		  ,"Cee'd 5 deurs Hatchback"
						 		  ,"Cee'd SportyWagon"
						 		  ,"Carens"
						 		  ,"Sportage"
						 		  ,"Sorento");

	oModel = WHITE_GetElementFlex(sDivId+'_model');
	if ('object' == typeof oModel)
	{
		resetModellen(sDivId);

		if ('Suzuki' == sMerk)
		{
			addModelOptions(oModel,aSuzuki);
		}
		else if ('Mitsubishi' == sMerk)
		{
			addModelOptions(oModel,aMitsubishi);
		}
		else if ('Kia' == sMerk)
		{
			addModelOptions(oModel,aKia);
		}
	}
}
function addModelOptions(oModel,aModellen)
{
	for(var i = 0; i < aModellen.length; i++)
	{
		oModel.options[oModel.options.length] = new Option(aModellen[i],aModellen[i], false,false);
	}
}
function resetModellen(sDivId)
{
	var oModel = WHITE_GetElementFlex(sDivId+'_model');
	if ('object' == typeof oModel)
	{
		oModel.options.length = 0;
		oModel.options[oModel.options.length] = new Option('-- kies een model --','', false,false);
	}
}

function resetContactForm(sDivId)
{
	resetMerken(sDivId);
	resetModellen(sDivId);

	var oDiv = WHITE_GetElementFlex(sDivId);
	if ('object' == typeof oDiv)
	{
		WHITE_GetElementFlex(sDivId).style.display = 'none';
		WHITE_GetElementFlex(sDivId+'_checkbox').checked = false;
	}
}

function initContactForm(sDivId)
{
	var oDiv = WHITE_GetElementFlex(sDivId);
	if ('object' == typeof oDiv)
	{
		bAlreadyShown = WHITE_GetElementFlex(sDivId+'_checkbox').checked;
		if (bAlreadyShown)
		{
			WHITE_GetElementFlex(sDivId).style.display = 'block';
			fillDropDownMerk(sDivId);
		}
		else
		{
			WHITE_GetElementFlex(sDivId).style.display = 'none';
		}
	}
}

/*############################################################################*/
//# initialize Google map

if ('function' == typeof GoogleLoadMap)
{
  WHITE_AddLoadEvent(GoogleLoadMap);
}

/*#############################################################################
# Google maps function
#############################################################################*/
function GoogleLoadMap()
{
  var oGoogleMapDiv = WHITE_GetElementFlex('map_valkenswaard');
  if ('object' != typeof oGoogleMapDiv)
  {
  	var oGoogleMapDiv = WHITE_GetElementFlex('map_weert');
  }

  if ('object' == typeof oGoogleMapDiv)
  {
    if (GBrowserIsCompatible())
		{
		  if ('object' == typeof WHITE_GetElementFlex("map_valkenswaard"))
		  {
		  	var map = new GMap2(WHITE_GetElementFlex("map_valkenswaard"));
		  	var point = new GLatLng(51.3397, 5.4647);
		  	var html = "<b>Autobedrijf Winters</b><br>Dragonder 18<br>5554 GM Valkenswaard<br><br>Tel: 040 - 204 56 78";
		  }
		  else if ('object' == typeof WHITE_GetElementFlex("map_weert"))
		  {
		  	var map = new GMap2(WHITE_GetElementFlex("map_weert"));
		  	var point = new GLatLng(51.2685781177475, 5.72153506205108);
		  	var html = "<b>Autobedrijf Winters</b><br>Kelvinstraat 4<br>6003 DH Weert<br><br>Tel: 0495 - 526 455";
		  }

		  map.setCenter(point, 14);
		  map.addControl(new GSmallMapControl());
		  map.addControl(new GMapTypeControl());
		  map.setMapType(G_NORMAL_MAP);

		  /* Part for the directions */
      gdir = new GDirections(map, document.getElementById("googleMapsDirections"));
      GEvent.addListener(gdir, "error", handleErrors);
      /* End directions */

		  var marker = new GMarker(point);
		  GEvent.addListener(marker, 'click', function() { marker.openInfoWindowHtml(html); });

		  map.addOverlay(marker);
		  marker.openInfoWindowHtml(html);
  	}
  }
}

function handleErrors(){
  if (gdir.getStatus().code == G_GEO_UNKNOWN_ADDRESS)
		alert("Google heeft uw locatie niet kunnen vaststellen. De beste manier om de route te zoeken, is door het volgende formaat aan te houden: straatnaam nummer, plaats.");

		else if (gdir.getStatus().code == G_GEO_SERVER_ERROR)
		alert("Er heeft zich een fout voor gedaan op de server van Google. Probeert u het nog een keer.\n Fout code code: " + gdir.getStatus().code);

	else if (gdir.getStatus().code == G_GEO_MISSING_QUERY)
		alert("De HTTP q parameter mist of heeft geen waarde.\n Fout code: " + gdir.getStatus().code);

	else if (gdir.getStatus().code == G_GEO_BAD_KEY)
		alert("De opgegeven sleutel is niet geldig. \n Fout code: " + gdir.getStatus().code);

	else if (gdir.getStatus().code == G_GEO_BAD_REQUEST)
		alert("A directions request could not be successfully parsed.\n Error code: " + gdir.getStatus().code);

	else alert("U heeft het veld 'Vertrekpunt' leeg gelaten. Deze is vereist om een route te plannen");
}

function setDirections(sFromAddress, locale, sCity)
{
	// Put here the finish location for the Google Directions part
	if ('weert' == sCity)
	{
		var sToLocation = "Kelvinstraat 4, 6003 DH Weert";
	}
	else
	{
		var sToLocation = "Dragonder 18, 5554GM Valkenswaard";
	}

	gdir.load("from: " + sFromAddress +" to: "+sToLocation,{ "locale": locale });
}

/*######################################################*/
/*# RESIZE IFRAME TO CONTENT                           #*/
/*######################################################*/
function autofitIframe(div_id,iframe_id)
{
  document.getElementById(iframe_id).style.height = (document.getElementById(div_id).offsetHeight-25)+"px";
}

/*############################################################################*/
/*# CAPTCHA */

function CAPTCHA_Refresh_Initialize()
{
  WHITE_AddEventToClass(document,'captcharefresh','click',CAPTCHA_RefreshClick,'a');
}

function CAPTCHA_RefreshClick(oEvent)
{
  var oCaptchaImg = WHITE_GetElementFlex('captcha_img');
  if (oCaptchaImg)
  {
    oCaptchaImg.src = '?show=captcha&t='+(new Date().getTime());
  }
  var oCaptchaInput = WHITE_GetElementFlex('captcha_input');
  if (oCaptchaInput)
  {
    oCaptchaInput.value = '';
  }
  return WHITE_CancelEvent(oEvent);
}

if ('function' == typeof WHITE_AddBodyLoadFunction)
{
  WHITE_AddBodyLoadFunction(CAPTCHA_Refresh_Initialize);
}

/*# /CAPTCHA */
