var map;
var toggle_status = 0;
var bounds = new GLatLngBounds(0,0);
var vanuit_detailview_kaart = 0;

var container_kaart_hoogte;
var container_kaart_breedte;
var grootte_map;
var grootte_map_expanded;
var tussenruimte;
var positie_toggle_uitgeklapt;
var positie_toggle_ingeklapt;
var grootte_map_uitgeklapt;
var grootte_map_ingeklapt;	
var bestemming_route;

var ar_alle_markers = [];
var ar_alle_marker_ids = [];

$(document).ready(function(){						   						   
 positionContainer();
 eventsBinden();
 cookiesLezen();
 
 if (kaart_overlay_tonen == 1) {
	kaartOverlay(); 
 }

});

$(window).unload( function () { 
  GUnload();
});

$(window).resize(function(){
 positionContainer();
});


function positionContainer() {
  var container = document.getElementById("container");
  var min_breedte = container.clientWidth;
  var links;
  var breedte = document.body.clientWidth;
  if (breedte > min_breedte) {
	links = (breedte - min_breedte) / 2;
  }	
  else {
	links = 0;  
  }
  document.getElementById("container").style.left = links + "px"; 
  
  if (typeof sIFR == "function") {
	sIFR.replaceElement(named({sSelector:".ohp-hdr", sFlashSrc:"http://www.ophetprogramma.nl/media/ohp.swf", sColor:"cc0000", nPaddingTop:0, nPaddingBottom:0, sFlashVars:"textalign=left&offsetTop=0"}));
	//sIFR.replaceElement(named({sSelector:".item-sidebar-hdr", sFlashSrc:"http://www.ophetprogramma.nl/media/ohp.swf", sColor:"#4b78af", sBgColor:"#95c2ff", nPaddingTop:0, nPaddingBottom:0, nPaddingRight:0, nPaddingLeft:5, sFlashVars:"textalign=left&offsetTop=0"}));
  };  
  
}

function kaartOverlay(gx,gy,url,titel,afbeelding,beschrijving,straat,huisnummer,postcode,plaats,telefoon,categorie,verbergen) {
	
  var items_verbergen;
  items_verbergen = verbergen;
  
  if (items_verbergen == 1) {
	$(".lijstview-item-even").css( { display: "none" } );
    $(".lijstview-item-oneven").css( { display: "none" } );
  }
  
  var gx = gx;
  var gy = gy;
  var titel = titel;
  var afbeelding = afbeelding;
  var beschrijving = beschrijving;
  var straat = straat;
  var huisnummer = huisnummer;
  var postcode = postcode;
  var plaats = plaats;
  var telefoon = telefoon;
  var categorie = categorie;

  var ch = document.body.clientHeight;
  var sh = document.documentElement.scrollHeight;  
  var oh = document.documentElement.offsetHeight; 
  var vangnet = document.getElementById("container").clientHeight;  
  var ph;

    if (ch > oh) {
	  ph = ch;  
    }
    else {	
	  if (sh > oh) {
		ph = sh;  
	  }
	  else {
		
		if (ch == 0 && sh == 0 && oh == 0) {
		  ph = vangnet;
		}
		else {
	      ph = oh;
		}
		
	  }
    }
  
  if (gx) {
	//ph = 800;
  }
  
  var min_hoogte = 768;
  var container_kaart = document.createElement("div");
  container_kaart.id = "kaart";
  container_kaart.style.position = "absolute";
  var ruimte = 20;
  tussenruimte = 10;
  container_kaart_breedte = document.body.clientWidth;  
  container_kaart.style.width = container_kaart_breedte + "px";

  if (ph < min_hoogte) {
    container_kaart_hoogte = min_hoogte;
  }
  else {
    container_kaart_hoogte = ph;	
  }
  
  container_kaart.style.height = container_kaart_hoogte + "px"; 
  container_kaart.style.left = "0";
  container_kaart.style.top = "0";
  container_kaart.style.background = "#000";
  container_kaart.style.opacity = ".75";
  container_kaart.style.filter = "Alpha(Opacity='75')";
  container_kaart.style.zIndex = "1001";
  container_kaart.style.display = "none";
  var bdy = document.getElementById("bdy-ohp");
  bdy.appendChild(container_kaart);
  $("#kaart").fadeIn("slow");

  var container_gmap = document.createElement("div");
  container_gmap.id = "map";
  container_gmap.style.position = "absolute";
  container_gmap.style.left = container_kaart.offsetLeft + tussenruimte + "px";
  container_gmap.style.top = container_kaart.offsetTop + tussenruimte + "px";
  container_gmap.style.width = (container_kaart_breedte / 100 * 60) + "px";
  container_gmap.style.height = container_kaart_hoogte - (2 * tussenruimte) + "px";
  container_gmap.style.border = "1px solid #fff";
  container_gmap.style.zIndex = "1002";
  bdy.appendChild(container_gmap);

  var kaart_wordt_geladen = document.createElement("div"); 
  kaart_wordt_geladen.id = "kaart-wordt-geladen";
  kaart_wordt_geladen.style.display = "none";
  container_gmap.appendChild(kaart_wordt_geladen);
  kaart_wordt_geladen.innerHTML = "De op het programma kaart wordt gevuld ...";
  $(kaart_wordt_geladen).fadeIn("slow");

  var container_info = document.createElement("div");
  container_info.id = "info";
  container_info.style.position = "absolute";
  container_info.style.left = container_gmap.offsetLeft + container_gmap.clientWidth + tussenruimte + "px";
  container_info.style.top = container_kaart.offsetTop + tussenruimte + "px";
  container_info.style.width = (container_kaart_breedte - container_gmap.clientWidth - 60) + "px";
  container_info.style.height = container_gmap.clientHeight + "px";
  container_info.style.border = "1px solid #fff";
  container_info.style.background = "#fff";
  container_info.style.zIndex = "1002";
  container_info.style.overflow = "auto";  
  bdy.appendChild(container_info);  
  
  var content_info = document.createElement("div");
  content_info.id = "content-info";
  container_info.appendChild(content_info);
  $('#content-info').load('http://www.ophetprogramma.nl/intro.php');

  var container_provincies = document.createElement("div");
  container_provincies.id = "container-provincies";
  container_info.appendChild(container_provincies);  

  var container_toggle = document.createElement("div");
  container_toggle.id = "togglebar";
  container_toggle.style.position = "absolute";
  container_toggle.style.left = container_info.offsetLeft + 2 + "px";
  container_toggle.style.top = container_info.offsetTop + 2 + "px";
  container_toggle.style.width = "20px";
  container_toggle.style.height = (container_gmap.clientHeight - 2) + "px";
  container_toggle.style.borderRight = "1px solid #999";
  container_toggle.className = "uitgeklapt";
  container_toggle.style.zIndex = "1003";
  container_toggle.style.cursor = "pointer";

  bdy.appendChild(container_toggle); 

  grootte_map = container_gmap.clientWidth;
  grootte_map_expanded = grootte_map + container_info.clientWidth;
  positie_toggle_uitgeklapt = (container_info.clientWidth - container_toggle.clientWidth - 3);
  grootte_map_uitgeklapt = (container_info.clientWidth - 20);
  positie_toggle_ingeklapt = (container_info.clientWidth - container_toggle.clientWidth + tussenruimte);
  grootte_map_ingeklapt = container_info.clientWidth + tussenruimte;

  container_toggle.onclick = function() {
	  
    toggleInfo(container_kaart_breedte,grootte_map,grootte_map_expanded,tussenruimte,positie_toggle_uitgeklapt,positie_toggle_ingeklapt,grootte_map_uitgeklapt,grootte_map_ingeklapt);

  }
  
  if (GBrowserIsCompatible()) {
	  
	var begin_x = 52.157506;
    var begin_y = 5.388107;  
	
	var linksboven = new GControlPosition(G_ANCHOR_TOP_LEFT, new GSize(10,10));
    var rechtsboven = new GControlPosition(G_ANCHOR_TOP_RIGHT, new GSize(10,10));
	var positie_lmc = new GControlPosition(G_ANCHOR_TOP_LEFT, new GSize(160,40));	
	var positie_mtc = new GControlPosition(G_ANCHOR_TOP_LEFT, new GSize(140,10));
	var positie_adsense = new GControlPosition(G_ANCHOR_TOP_LEFT, new GSize(10,10));	
	
	map = new GMap2(document.getElementById("map"),{mapTypes: [G_SATELLITE_MAP,G_PHYSICAL_MAP,G_NORMAL_MAP] });	

//    var ui = new GMapUIOptions();
//    ui.maptypes = { satellite: true, normal: true, physical: true }
//    ui.zoom = {};
//    ui.controls = { scalecontrol: false, overviewmapcontrol: false, largemapcontrol3d: false, largezoomcontrol3d: false, smallzoomcontrol3d: true, menumaptypecontrol: true, maptypecontrol: false };
//    ui.keyboard = false;
//    map.setUI(ui);
//	map.setUIToDefault();

	map.setCenter(new GLatLng(begin_x,begin_y),9);
	map.addControl(new GSmallMapControl(),positie_lmc);
	map.removeMapType(G_HYBRID_MAP);
	
	G_NORMAL_MAP.getMinimumResolution = function() { return 9 }; 
	G_SATELLITE_MAP.getMinimumResolution = function() { return 9 };
	
	var mtc = map.addControl(new GMenuMapTypeControl(),positie_mtc);
    var adsManager = new GAdsManager(map, "ca-pub-6613989379018574", { maxAdsOnMap:2, style: "adunit", channel:"4973175600", position: positie_adsense } );
	//var adsManager = new GAdsManager(map, "ca-pub-6613989379018574");
    adsManager.enable();

    //polyLaden();
	tooltippie = document.createElement("div");
    map.getPane(G_MAP_FLOAT_PANE).appendChild(tooltippie);
	tooltippie.id = "tt";
    tooltippie.style.visibility="hidden";
	
	if (gx) {	
	  zoomInMarkertje(gx,gy,url,titel,afbeelding,beschrijving,straat,huisnummer,postcode,plaats,telefoon,categorie);
	}
	else {
      markertjesLaden();
	}
 }

  var ico_sluit = document.createElement("img");
  ico_sluit.src = "/img/ico-sluit.gif";
  ico_sluit.alt = "Klik om de kaart te sluiten";
  ico_sluit.style.position = "absolute";
  ico_sluit.style.left = ((container_kaart.clientWidth) - 25) + "px";
  ico_sluit.style.top = (container_kaart.offsetTop + 10) + "px";  
  ico_sluit.style.zIndex = "1004";
  ico_sluit.style.cursor = "pointer";
  bdy.appendChild(ico_sluit);
  sIFRVerbergen();

  ico_sluit.onclick = function() {

    $("#kaart").fadeOut(500, function () {

      container_gmap.parentNode.removeChild(container_gmap);
	  container_info.parentNode.removeChild(container_info);	
	  container_toggle.parentNode.removeChild(container_toggle);
	  ico_sluit.parentNode.removeChild(ico_sluit);
	  container_kaart.parentNode.removeChild(container_kaart);  
	  toggle_status = 0;

	  $(".lijstview-item-even").css( { display: "block" } );
      $(".lijstview-item-oneven").css( { display: "block" } );
 
	  sIFRTonen();
    });

      sluitRoute();	

  }

$(kaart_wordt_geladen).fadeOut("slow");
$(kaart_wordt_geladen).remove;

toggleInfo(container_kaart_breedte,grootte_map,grootte_map_expanded,tussenruimte,positie_toggle_uitgeklapt,positie_toggle_ingeklapt,grootte_map_uitgeklapt,grootte_map_ingeklapt);

}

function sIFRVerbergen() {
  var hdrs = document.getElementsByTagName("h1");
  for (i=0;i<hdrs.length;i++) {
	var klasse = hdrs[i].className;
    if (klasse.indexOf("sIFR-replaced") > 0) {
      hdrs[i].style.display = "none";
    }
  }	

  var hdrs = document.getElementsByTagName("h2");
  for (i=0;i<hdrs.length;i++) {
	var klasse = hdrs[i].className;
    if (klasse.indexOf("sIFR-replaced") > 0) {
      hdrs[i].style.display = "none";
    }
  }	

}


function sIFRTonen() {
  var hdrs = document.getElementsByTagName("h1");
  for (i=0;i<hdrs.length;i++) {
	var klasse = hdrs[i].className;
    if (klasse.indexOf("sIFR-replaced") > 0) {
      hdrs[i].style.display = "block";
    }
  }	
  var hdrs = document.getElementsByTagName("h2");
  for (i=0;i<hdrs.length;i++) {
	var klasse = hdrs[i].className;
    if (klasse.indexOf("sIFR-replaced") > 0) {
      hdrs[i].style.display = "block";
    }
  }	  
}

function createMarker(point,info,label,subcategorie,straat,huisnr,postcode,plaats,telefoon,url,afbeelding,lat,lng,marker_id) {
	
  var icon = new GIcon();
  icon.image = "/img/kaart/prikkertje-" + subcategorie + ".png";
		
  icon.iconSize = new GSize(20,27);	
  icon.iconAnchor = new GPoint(10,27);
  icon.infoWindowAnchor = new GPoint(10,13);
  var infovenster = new GMarker(point, {icon: icon, draggable: false, id: marker_id } );
  var info = info;
  
  
  GEvent.addListener(infovenster, "click", function() {
	
	var naar = straat + " " + huisnr + " " + plaats + " Nederland";
    var van = "Gelrelaan 34 Emmeloord Nederland";  
  
    var tbl_route = "<div id='container-route-van' class='container-route-van-verborgen'><table><tr><td class='route-label'>straat</td><td class='route-label'>nr</td><td class='route-label'>plaats</td></tr>";
    tbl_route += "<tr><td><input type='text' id='route-straat' name='route-straat' /></td><td><input type='text' id='route-nr' name='route-nr' /></td><td><input type='text' id='route-plaats' name='route-plaats' /></td><td><input id='toon-route' name='toon-route' type='button' value='Route' onclick='routeLaden(\""+naar+"\","+lat+","+lng+");' /></td></tr>";
    tbl_route += "</table>";
	tbl_route += "<div id='melding-route'></div>";	
	tbl_route += "</div>";

    if (telefoon.length > 0) {
      var str_telefoon = "Bel " + telefoon + " voor info";
	}
	else {
	  var str_telefoon = "niet bekend";	
	}
	
    var gads = "<div id=\"container-gads\"><iframe id=\"gads\" src=\"http://www.ophetprogramma.nl/goog/gads.php\" frameborder=\"0\" scrolling=\"no\"></iframe></div>";	
    var html_max = "<h2 class=\"ohp-iw-hdr-max\">" + label + "</h2><p id=\"iw-info-max\"><img class=\"img-uitje\" alt=\"\" src=\"/img/kaart/uitjes/" + afbeelding + "\" />" + info + "</p><h3>Contactgegevens</h3><p>" + straat.replace(/\+/gi," ") + "&nbsp;"  + huisnr + "<br />" + postcode + "&nbsp;" + plaats.replace(/\+/gi," ") + "<br /><br /><br /><img alt=\"telefoonnummer\" src=\"/img/kaart/ico-telefoon.gif\" />&nbsp;" + str_telefoon + "<br /><img alt=\"website bezoeken\" src=\"/img/kaart/ico-website.gif\" />&nbsp;<a title='" + label + "' href='http://" + url + "'>" + label + " op het web</a><br /><img alt=\"website bezoeken\" src=\"/img/kaart/ico-route.gif\" />&nbsp;<a title=\"\" href=\"#\" onclick=\"toggleContainerRoute(); return false;\">route naar " + label + "</a></p>" + tbl_route + gads;

    iw_zichtbaar = 1;													
													
    infovenster.openExtInfoWindow(
    map, 
    "ohp_info_window",
	"<div><div id='iw_container'>" + html_max + "</div></div>",
    { /* ajaxUrl: "kaart-idb-details.asp?id="+idb_id, */ beakOffset: 3 }
    ); 

    });

  GEvent.addListener(infovenster,"mouseover", function() {
    tooltippieTonen(infovenster,label);
	infovenster.setImage("/img/kaart/prikkertje-" + subcategorie + "-focus.png");
  });
  
  GEvent.addListener(infovenster,"mouseout", function() {
	tooltippie.style.visibility = "hidden";
	infovenster.setImage("/img/kaart/prikkertje-" + subcategorie + ".png");
  }); 

  return infovenster;
  
}

function markertjesLaden(regio) {
	
  if (xmlhttp) {
	  
	if (!regio) {  
	  var url="/xml/uitjes.xml";
	}
	else {
	  var url="/xml/uitjes-" + regio + ".xml";	
	}
    
    xmlhttp.open("GET",url,true);

      xmlhttp.onreadystatechange = function() {
      if (xmlhttp.readyState == 4) {
        if (xmlhttp.status == 200) {
			
		  var xmldata = GXml.parse(xmlhttp.responseText);
		  
          var centrum = xmldata.documentElement.getElementsByTagName("centrum");
		  
		  for (var h = 0; h < centrum.length; h++) {
            var center_x = parseFloat(centrum[h].getAttribute("lat"));
            var center_y = parseFloat(centrum[h].getAttribute("lng"));	
		  }
		  
          var markers = xmldata.documentElement.getElementsByTagName("marker");
          for (var i = 0; i < markers.length; i++) {
            var lat = parseFloat(markers[i].getAttribute("lat"));
            var lng = parseFloat(markers[i].getAttribute("lng"));
            var point = new GLatLng(lat,lng);
			var subcatid = markers[i].getAttribute("subcat");
			if (subcatid.length < 2) {
			  subcatid = "0" + subcatid;
			}
            var subcategorie = markers[i].getAttribute("subcategorie");			
            var info = markers[i].getAttribute("info");
			info = info.replace(/(&lt;)/gi,"<",info);
			info = info.replace(/&gt;/gi,">",info);
            var label = markers[i].getAttribute("label");
			var straat = markers[i].getAttribute("straat");
			var huisnr = markers[i].getAttribute("huisnr");	
			var postcode = markers[i].getAttribute("postcode");				
			var plaats = markers[i].getAttribute("plaats");
			var telefoon = markers[i].getAttribute("telefoon");				
			var url = markers[i].getAttribute("url");	
			var afbeelding = markers[i].getAttribute("afbeelding");	
			var regio = markers[i].getAttribute("regio");
			if (regio.length < 2) {
			  regio = "0" + regio;
			}			
			var marker_id = regio + "-" + subcatid + "-" + huisnr;
			
            var marker = createMarker(point,info,label,subcategorie,straat,huisnr,postcode,plaats,telefoon,url,afbeelding,lat,lng,marker_id);
			
			ar_alle_markers.push(marker);
		    ar_alle_marker_ids.push(marker_id);
			
            map.addOverlay(marker);
			bounds.extend(point);
          }
		  
		  //if (regio) {
		    //map.setCenter(new GLatLng(center_x,center_y),10);
			map.setCenter(new GLatLng(center_x,center_y),9);
			var centrum = new GLatLng(center_x,center_y);
            window.setTimeout(function() { map.panTo(centrum); }, 500); 			
		  //}	  
		  
        }
        else {
	      alert("Er was een probleem met het ophalen van de xml data voor de kaart.");  
        }
      }
    }
  
    xmlhttp.setRequestHeader('Accept','message/x-formresult');
    xmlhttp.send(null);
    return false;
  }
  else {
	alert("Het ophalen van kaartinformatie wordt door jouw browser niet ondersteund.");  
  }
}

function tooltippieTonen(infovenster,label) {
  var links_boven = map.getCurrentMapType().getProjection().fromLatLngToPixel(map.fromDivPixelToLatLng(new GPoint(0,0),true),map.getZoom());
  var offset = map.getCurrentMapType().getProjection().fromLatLngToPixel(infovenster.getPoint(),map.getZoom());
  var anker_ico = infovenster.getIcon().iconAnchor;
  var breedte_ico = infovenster.getIcon().iconSize.width;
  var hoogte_label = 0;
  var positie = new GControlPosition(G_ANCHOR_TOP_LEFT, new GSize(offset.x - links_boven.x - anker_ico.x + breedte_ico + 2, offset.y - links_boven.y -anker_ico.y -hoogte_label)); 
  positie.apply(tooltippie);
  tooltippie.innerHTML = label;
  tooltippie.style.visibility = "visible";
}


function polyLaden() {
	
  var poly_provincies = [];
  var labels_provincies = [];	
	
  if (xmlhttp) {
    var url="/xml/provincies.xml";
    xmlhttp.open("GET",url,false);

    xmlhttp.onreadystatechange = function() {
    if (xmlhttp.readyState == 4) {
      if (xmlhttp.status == 200) {
	    var xmldata = GXml.parse(xmlhttp.responseText); 

          var provincies = xmldata.documentElement.getElementsByTagName("provincie");

          for (var a = 0; a < provincies.length; a++) {
			  
            var provincienaam = provincies[a].getAttribute("naam");
            var poly_kleur = provincies[a].getAttribute("kleur");
            var punt = provincies[a].getElementsByTagName("punt");
            var punten = [];
			
            for (var i = 0; i < punt.length; i++) {
               punten[i] = new GLatLng(parseFloat(punt[i].getAttribute("lng")), parseFloat(punt[i].getAttribute("lat")));
            }
			
			vlakTekenen(punten,provincienaam,poly_kleur);
				
          }	
      }
      else {
	    alert("Er was een probleem met het ophalen van xml data voor de kaart.");  
      }
    }
  }
  xmlhttp.setRequestHeader('Accept','message/x-formresult');
  xmlhttp.send(null);
  return false;
  }
  else {
	alert("Het ophalen van kaartinformatie wordt door uw browser niet ondersteund.");  
  }
}

function vlakTekenen(punten,provincienaam,poly_kleur) {
  var poly_provincie = new BDCCPolygon(punten,"transparent",0,0.3,poly_kleur,0.0,provincienaam,"solid");

  map.addOverlay(poly_provincie);
  poly_provincie.id = provincienaam;
  
  if (document.getElementById("container-provincies")) {
	var link_provincie = document.createElement("a");
	var br = document.createElement("br");
	var container_provincies = document.getElementById("container-provincies");
	if (!document.getElementById("lijst-provincies")) {
	  var lijst_provincies = document.createElement("ul");
	  lijst_provincies.id = "lijst-provincies";
	  container_provincies.appendChild(lijst_provincies); 
	}
	else {
	  var lijst_provincies = document.getElementById("lijst-provincies");	
	}
	link_provincie.title = "klik om alleen de uitjes in de provincie "  + provincienaam + " te zien";
	link_provincie.href = "#";
	link_provincie.onclick = function() { map.clearOverlays(); markertjesLaden(provincienaam); }
	var lijstitem_provincie = document.createElement("li");
	lijst_provincies.appendChild(lijstitem_provincie);
	lijstitem_provincie.appendChild(link_provincie);
    link_provincie.appendChild(document.createTextNode(provincienaam));
  }
  else {
	alert("geen dom element om aan te binden");  
  }

  GEvent.addListener(poly_provincie,"click", function() { 

    if (poly_provincie.isHidden()) {
      poly_provincie.show();
    }
    else {
      poly_provincie.hide();  
    }
	
  });	  
}

function toggleProvincie() {


}

function routeLaden(naar,x,y) {

  var container_route = document.getElementById("container-routebeschrijving");
  container_route.style.height = (container_kaart_hoogte - 24) + "px";
  var route = document.getElementById("routebeschrijving");
  hoogte_container_route = container_route.style.height; 
  route.style.height =  (container_kaart_hoogte - 54) + "px";
  route.style.overflow = "auto";
  var sluit = document.getElementById("sluit-routebeschrijving");  
  sluit.id = "sluit-routebeschrijving";
  sluit.style.cursor = "pointer";
  sluit.title = "Klik om de routebeschrijving te sluiten";
 
  var route_van_straat = document.getElementById("route-straat").value;
  var route_van_nr = document.getElementById("route-nr").value;
  var route_van_plaats = document.getElementById("route-plaats").value;  
  var van = route_van_straat + " " + route_van_nr + " " + route_van_plaats + " Nederland";

  var melding_route = document.getElementById("melding-route");
  melding_route.innerHTML = "";
  $(melding_route).fadeIn("slow");

  if (route_van_straat == "") {
	melding_route.innerHTML = "Vul aub de straat in waar vandaan je vertrekt";
	document.getElementById("route-straat").focus();
  }
  else if (route_van_plaats == "") {
	melding_route.innerHTML = "Vul aub de plaats in waar vandaan je vertrekt";	
	document.getElementById("route-plaats").focus();
  }  
  else {
	  
	melding_route.innerHTML = "Route wordt geladen ...";
	
    //gdir = new GDirections(map, route); 
	gdir = new GDirections(map);
    GEvent.addListener(gdir, "load", onGDirectionsLoad); 
    GEvent.addListener(gdir, "error", handleErrors); 
    var taal = "nl_nl";
	//var taal = "us_en";
	bestemming_route = naar;
	gdir.load("from: " + van + " to: " + naar, { "locale": taal, getSteps: true } );	
    //gdir.load("from: " + van + " to: " + naar, { "locale": taal } );	
	
    sluit.onclick = function() { 
      var melding_route = document.getElementById("melding-route");
      var container_route = document.getElementById("container-routebeschrijving");
	  $(melding_route).fadeOut("slow");	 	  
	  $(container_route).fadeOut("slow");	 
      //container_route.style.display = "none";
      //container_route.style.visibility = "hidden";  
      gdir.clear(); 
  }	
  }
  
} 

function handleErrors(){
	
  var melding_route = document.getElementById("melding-route");

  if (gdir.getStatus().code == G_GEO_UNKNOWN_ADDRESS) {
	melding_route.innerHTML = "De locatie van het opgegeven vertrekadres kon niet worden bepaald.\nFoutcode: " + gdir.getStatus().code;		
  }
  else if (gdir.getStatus().code == G_GEO_SERVER_ERROR) {
	melding_route.innerHTML = "Er is iets misgegaan. Maar het is onduidelijk WAT!\n Foutcode: " + gdir.getStatus().code;		
  }
  else if (gdir.getStatus().code == G_GEO_MISSING_QUERY) {
	melding_route.innerHTML = "Een parameter ontbreekt. Misschien was er geen vertrekpunt ingevoerd.\n Foutcode: " + gdir.getStatus().code;		
  }
  else if (gdir.getStatus().code == G_GEO_BAD_KEY) {
	melding_route.innerHTML = "De Google Maps sleutel is ongeldig of de gebruikte sleutel is niet geldig voor dit domein. \n Foutcode: " + gdir.getStatus().code;		
  }
  else if (gdir.getStatus().code == G_GEO_BAD_REQUEST) {
	melding_route.innerHTML = "De aanvraag voor het plannen van een route is mislukt.\n Foutcode: " + gdir.getStatus().code;		
  }
  else {
	melding_route.innerHTML = "Er is iets misgegaan. Maar het is volstrekt onduidelijk WAT de oorzaak is!";		
  }
}

function onGDirectionsLoad(x,y) {	
  var container_route = document.getElementById("container-routebeschrijving");
  var melding_route = document.getElementById("melding-route");
  
  map.savePosition();
  
  container_route.style.display = "block";
  container_route.style.left = (tussenruimte + 2) + "px";
  container_route.style.top = (tussenruimte + 2) + "px";  
  container_route.style.visibility = "visible";
  var sluit = document.getElementById("sluit-routebeschrijving");  
  var iw = map.getInfoWindow();
  iw.hide(); 
  $(melding_route).fadeOut("slow");
  if (toggle_status == 0) {
    toggleInfo(container_kaart_breedte,grootte_map,grootte_map_expanded,tussenruimte,positie_toggle_uitgeklapt,positie_toggle_ingeklapt,grootte_map_uitgeklapt,grootte_map_ingeklapt,x,y);
  }
  
  var route = gdir.getRoute(0);
  var route_cont = document.getElementById("routebeschrijving");
  var route_ul_open = "<ul id='ul-route'>";
  var route_ul_sluit = "</ul>";
  var route_li = "";
  var route_titel = "<h2>Route naar " + bestemming_route + "</h2>";
  var print_route = "<p class='print-route'><a title='E-mail de routebeschrijving naar dit uitje' href='#' onclick='mailRoute(bestemming_route);'>mail route</a> / <a title='print de routebeschrijving naar dit uitje' href='#' onclick='printRoute();'>print route</a></p>";
  
  var samenvatting_route = "<p id='route-samenvatting'><strong>Afstand en reistijd:</strong>&nbsp;" + gdir.getSummaryHtml() + "</p>";
  
  for (var i=0;i<route.getNumSteps();i++) {
    var stap = route.getStep(i).getDescriptionHtml();
	route_li += "<li class='li-route'>" + stap + "</li>";
  }
  
  route_cont.innerHTML = print_route + samenvatting_route + route_ul_open + route_li + route_ul_sluit + print_route;
  
  map.closeExtInfoWindow();
  
}

function sluitRoute() {
  var container_route = document.getElementById("container-routebeschrijving");
  container_route.style.display = "none";
  container_route.style.visibility = "hidden";  
  $(container_route).fadeOut("slow"); 
  map.returnToSavedPosition();
}

function printRoute() {
  var d = new Date();
  var jaar = d.getFullYear();
  var inhoud = document.getElementById("routebeschrijving").innerHTML;
  var print_venster = window.open("","","width=700,height=500,scrollbars=1,toolbar=0,statusbar=0");
  print_venster.document.write("<style> body { font-family: verdana; font-size: .8em; } h1 { font-size: 1.1em; margin-top: 30px; padding: 20px 0; border-top: 2px solid #000; border-bottom: 2px solid #000; } li { list-style: outside square; } a { display: none; } #branding-ohp { text-align: center; margin-top: 30px; padding: 20px 0; border-top: 2px solid #000; } #mail-container { display: none; } #acties-mail-route { display: none; } .print-route { display: none; } </style>");
  print_venster.document.write("<h1>Op het programma routebeschrijving</h1>");  
  print_venster.document.write(inhoud);
  print_venster.document.write("<p id='branding-ohp'>&raquo; www.ophetprogramma.nl " + jaar + " &raquo; tips voor uitjes voor het hele gezin &raquo;</p>");
  print_venster.focus();
  print_venster.print();
}

function mailRoute(naar) {
	
  if (!document.getElementById("mail-container")) {  
    var anker = document.getElementById("route-samenvatting");
  
    var mail_container = document.createElement("div");
    mail_container.id = "mail-container";

    anker.appendChild(mail_container);

    var emailadres = document.createElement("input");
    emailadres.type = "text";
    emailadres.id = "email";
    emailadres.maxlength = "150";	
    emailadres.value = "Vul je e-mailadres in ...";
  
    emailadres.onfocus = function() {	
      if (emailadres.value == "Vul je e-mailadres in ...") {
	    emailadres.value = "";
	  }
    };

    var container_resultaat_mail = document.createElement("div");
    container_resultaat_mail.id = "resultaat-mail-route";
  
    var container_acties_mail = document.createElement("div");
    container_acties_mail.id = "acties-mail-route";

    var versturen = document.createElement("a");
    versturen.title = "verstuur email";
    versturen.href = "#";
    var tekst_versturen = document.createTextNode("verstuur");

//    var annuleren = document.createElement("a");
//    annuleren.title = "terug";
//    annuleren.href = "#";
//    var tekst_annuleren = document.createTextNode("terug");
  
//    annuleren.onclick = function() {
//      anker.removeChild(mail_container);  
//    }
  
    mail_container.appendChild(emailadres);
    mail_container.appendChild(container_acties_mail);

//    container_acties_mail.appendChild(annuleren);
//    annuleren.appendChild(tekst_annuleren);
    
    container_acties_mail.appendChild(versturen);
    versturen.appendChild(tekst_versturen);
  
    mail_container.appendChild(container_resultaat_mail);

    versturen.onclick = function() {
      var emailReg = "^[\\w-_\.]*[\\w-_\.]\@[\\w]\.+[\\w]+([\.a-z]){3,5}$";
      var regexEmail = new RegExp(emailReg); 
	  if (!regexEmail.test(emailadres.value)) {
	    if (document.getElementById("resultaat-mail-route")) {
		  document.getElementById("resultaat-mail-route").innerHTML = "";
		  var tekst_email = document.createTextNode("Het ingevoerde e-mailadres is ongeldig.");
		  document.getElementById("resultaat-mail-route").appendChild(tekst_email);
	    }
	  }
	  else {
        var inhoud = escape(document.getElementById("ul-route").innerHTML);
        document.getElementById("resultaat-mail-route").innerHTML = "";
	  
        $.ajax({
          type: "POST",
          url: "/mail-route.php",
          cache: false,
          dataType: "text",
          data: "naar="+escape(naar)+"&email="+emailadres.value + "&route="+inhoud,
          success: function(text) {
		    var tekst_email = document.createTextNode("De routebeschrijving is verstuurd naar " + emailadres.value + " ...");
		    document.getElementById("resultaat-mail-route").appendChild(tekst_email);		  
		    window.setTimeout(function() { 
              anker.removeChild(mail_container); },
		    1500); 
          }
        });
	  }
    }
  }
}

function toggleContainerRoute() {
  var toon_route = document.getElementById("container-route-van");
  var melding_route = document.getElementById("melding-route");
  
  if (toon_route.className == "container-route-van-verborgen") {
    toon_route.className = "container-route-van-zichtbaar";	
  }
  else if (toon_route.className == "container-route-van-zichtbaar") {
    toon_route.className = "container-route-van-verborgen"; 
	melding_route.innerHTML = "";
	$(melding_route).fadeOut("slow");		
  }
}

function vanAdresOphalen() {
  var route_van_straat = document.getElementById("route-straat").value;
  var route_van_nr = document.getElementById("route-nr").value;
  var route_van_plaats = document.getElementById("route-plaats").value;   
}

function toggleInfo(container_kaart_breedte,grootte_map,grootte_map_expanded,tussenruimte,positie_toggle_uitgeklapt,positie_toggle_ingeklapt,grootte_map_uitgeklapt,grootte_map_ingeklapt,x,y,zoomniveau) {

  var zoomniveau = zoomniveau;	
  var container_gmap = document.getElementById("map");
  var container_toggle = document.getElementById("togglebar");
  var container_info = document.getElementById("info");
  var x = x;
  var y = y;

    if (toggle_status == 0) {	  
					   
	  $("#info").hide();
	  container_gmap.style.width = grootte_map_expanded + tussenruimte + "px";
      $("#togglebar").animate({"left": "+=" + positie_toggle_uitgeklapt + "px"}, "fast");
	  container_toggle.style.borderRight = "1px solid #fff";
      container_toggle.style.borderLeft = "1px solid #999";
	  $("#togglebar").attr( { title: "Legenda weergeven" } );
      container_toggle.className = "ingeklapt";	  
	  toggle_status = 1;
	  
	  if (zoomniveau) {
	    map.setZoom(zoomniveau);
	  }
	  	  
    }
	else if (toggle_status == 1) {
      var eind_positie = (container_info.offsetLeft + 2);
      var eind_grootte = (container_kaart_breedte / 100 * 60);					   
	  $("#info").show();
	  container_gmap.style.width = grootte_map + "px";	  
      $("#togglebar").animate({"left": "-=" + positie_toggle_uitgeklapt + "px"}, "fast");
	  $("#togglebar").attr( { title: "Legenda verbergen" } );	  
      container_toggle.style.borderRight = "1px solid #999";
      container_toggle.style.borderLeft = "none";	  
	  container_toggle.className = "uitgeklapt";
	  toggle_status = 0;

	  var n_lat = map.getCenter().lat();
	  var n_lng = map.getCenter().lng();
	  	  
	}

	map.checkResize();
	
}

function eventsBinden() {

  $("#email-details-uitje").click(function() {
    $("#container-email-uitje").toggle();
	
    if (document.getElementById("resultaat-email-uitje")) {
	  document.getElementById("resultaat-email-uitje").innerHTML = "";
	}
	
	return false;
  });										   

  $("#verstuur-email-details-uitje").click(function() {
	var slug = $(this).attr("slug");
	mailUitje(slug);
	return false;
  });	


  $("#btn-commentaar-opslaan").click(function() {
	commentaarInvoegen();
	return false;
  });

  $("#btn-registreren").click(function() {
	registreerOHP();
	return false;
  });

  $("#btn-registreren").mouseover(function() {
	$(this).css( { cursor: "pointer" } );
  });

  $(".waardering").mouseover(function() {
	$(this).css( { cursor: "pointer" } );								  
    var cijfer = parseInt($(this).attr("waardering"));
	//var start = document.getElementById("uitje-waardering").value;
	var grijze_blokjes = cijfer + 1;
	
	for (i=0;i<=cijfer;i++) {
	  $("#w"+i).css( { background: "#6c0" } );	
	}
	
	for (j=grijze_blokjes;j<=10;j++) {
	  $("#w"+j).css( { background: "#ccc" } );		  	
	}
	
  });  

  $(".waardering").click(function(cijfer) {
    var cijfer = parseInt($(this).attr("waardering"));
	document.getElementById("uitje-waardering").value = cijfer;	
  });  

  $(".waardering").mouseout(function(cijfer) {
	var cijfer = parseInt(document.getElementById("uitje-waardering").value);
	
	for (i=0;i<=cijfer;i++) {
	  $("#w"+i).css( { background: "#6c0" } );		  	
	}
	
	for (j=cijfer+1;j<=10;j++) {
	  $("#w"+j).css( { background: "#ccc" } );		  	
	}	
	
  });  

  $(".sorteeropveld").click(function() {
    var sorteren = parseInt($(this).attr("sorteerop"));
	sessieSorteren(sorteren);
	return false;
  });

  $(".sorteeropaf").click(function() {
    var opaf = parseInt($(this).attr("opaf"));
	sessieSorteerVolgorde(opaf);
	return false;
  });

  $(".sb-tab").mouseover(function() {
  });

  $(".verfijn").click(function() {
    checkStatus();
  });

  $("#chk-alles").click(function() {					 
    allesAan();
  });

  $(".minimize").mouseover(function () { 
    $(this).css( { "cursor":"pointer" } );  
  });  

  $(".maximize").mouseover(function () { 
    $(this).css( { "cursor":"pointer" } );  
  });  

  $(".minimize").click(function () {
      $(this).css( { "cursor":"pointer" } ); 								 
	  var ouder = $(this).parents().get(2);
	  var blok = $(ouder).children().get(1);
	  var cn = blok.id;	  
	  schrijfCookie(String(cn),0,30)
	  $(blok).slideUp();
    });
  
    $(".maximize").click(function () { 
	  var ouder = $(this).parents().get(2);
	  var blok = $(ouder).children().get(1);
	  var cn = blok.id;	  
	  schrijfCookie(String(cn),1,30)	  
	  $(blok).slideDown();
    });

    $("#bekijk-instructie, #verberg-instructie").mouseover(function() {
	  $(this).css( { cursor: "pointer" } );															   
	});

    $("#bekijk-instructie").click(function () {
	  $("#flv").fadeIn("fast");
	  $("#bekijk-instructie").hide();
	  $("#verberg-instructie").show();
	  flvLaden();	  
    });

    $("#verberg-instructie").click(function () {							 
	  $("#flv").fadeOut("fast");
	  $("#bekijk-instructie").show();
	  $("#verberg-instructie").hide();	  
    });

	$("#zoek-uitje-sleutelwoord").click(function() {
	  if (document.getElementById("zoek-uitje-sleutelwoord").value == "zoekwoord ...") {
	    document.getElementById("zoek-uitje-sleutelwoord").value = "";
	  }
	});

	$("#zoek-uitje-start").mouseover(function() {
	  $(this).css( { cursor: "pointer" } );										  
	});

	$("#filter-uitje-start").mouseover(function() {
	  $(this).css( { cursor: "pointer" } );										  
	});

	$("#a-meer-hotels").click(function() {
	  $("#lijst-meer-hotels").toggle();	
	  
	  if ( $("#a-meer-hotels").text() == "Bekijk meer hotels in de buurt") {
		 $("#a-meer-hotels").text("Verberg meer hotels in de buurt"); 
		 $("#a-meer-hotels").attr( { title: "Verberg meer hotels in de buurt" } ); 
	  }
	  else {
		 $("#a-meer-hotels").text("Bekijk meer hotels in de buurt");
		 $("#a-meer-hotels").attr( { title: "Bekijk meer hotels in de buurt" } ); 		 
	  }
	  	  
	  return false;
	});


}

function schrijfCookie(cookie_naam,cookie_waarde,verloopt) {

  var verloopdatum = new Date();
  verloopdatum.setDate(verloopdatum.getDate() + verloopt);	

  if (document.cookie.length>0) {
    start_cookie=document.cookie.indexOf(cookie_naam + "=");
    if (start_cookie!=-1) {
      document.cookie = cookie_naam + "=;expires=-1;path=/";		  
	}	
  }

  document.cookie = cookie_naam + "=" +escape(cookie_waarde) + ((verloopt==null) ? "" : ";expires="+verloopdatum.toGMTString())+";path=/"; 

}


function leesCookie(naam) {

    var cookie_naam = naam + "=";
	var ca = document.cookie.split(';');
	for (var i=0;i<ca.length;i++) {
	  var c = ca[i];
	  while (c.charAt(0) == ' ') {
		c = c.substring(1,c.length);
		if (c.indexOf(cookie_naam) == 0) {
		  return c.substring(cookie_naam.length,c.length);
		}
	  }
	}
	return null;
}

function wisCookie(cookie_naam) {
	schrijfCookie(cookie_naam,"",-1);
}

function cookiesLezen() {

  var ar_cookies = [ { "lbl":"sbi_","aantal":6 } ];
	
  var cn;
  
  for (a=0;a<ar_cookies.length;a++) {
    for (i=1;i<=ar_cookies[a].aantal;i++) {
	  cn = ar_cookies[a].lbl + i;
	  var x = leesCookie(cn);
	
	  if (x==0) {
	    $(document.getElementById(cn)).slideUp();	
	  }
	  else {
	    $(document.getElementById(cn)).slideDown();			
	  }
    }
  }
  
}

function zoomInMarkertje(gx,gy,url,titel,afbeelding,beschrijving,straat,huisnummer,postcode,plaats,telefoon,categorie) {
  vanuit_detailview_kaart = 1;
  var point = new GLatLng(gx,gy);
  var info = beschrijving;
  var label = titel;
  var categorie = categorie;
  var straat = straat;
  var huisnr = huisnummer;
  var postcode = postcode;
  var plaats = plaats;
  var telefoon = telefoon;
  if (telefoon.length > 0) {
    var str_telefoon = "Bel " + telefoon + " voor info";
  }
  else {
	var str_telefoon = "niet bekend";	
  }  
  var url = url;
  var afbeelding = afbeelding;
  var lat = gx;
  var lng = gy;

  //map.setCenter(point,15);    
  //window.setTimeout(function() { map.panTo(point); }, 500);
  //window.setTimeout(function() { var miw = map.getInfoWindow(); miw.maximize(); }, 1000);
  
  var icon = new GIcon();
  icon.image = "/img/kaart/prikkertje-" + categorie + ".png";
		
  icon.iconSize = new GSize(20,27);	
  icon.iconAnchor = new GPoint(10,27);
  icon.infoWindowAnchor = new GPoint(10,13);
  var infovenster = new GMarker(point, {icon: icon, draggable: false } );
  var info = info;

  var gads = "<div id=\"container-gads\"><iframe id=\"gads-iw\" src=\"http://www.ophetprogramma.nl/goog/gads.php\" frameborder=\"0\" scrolling=\"no\"></iframe></div>";	
  var naar = straat + " " + huisnr + " " + plaats + " Nederland";
  var van = "Gelrelaan 34 Emmeloord Nederland";  
  
  var tbl_route = "<div id='container-route-van' class='container-route-van-verborgen'><table><tr><td class='route-label'>straat</td><td class='route-label'>nr</td><td class='route-label'>plaats</td></tr>";
  tbl_route += "<tr><td><input type='text' id='route-straat' name='route-straat' /></td><td><input type='text' id='route-nr' name='route-nr' /></td><td><input type='text' id='route-plaats' name='route-plaats' /></td><td><input id='toon-route' name='toon-route' type='button' value='Route' onclick='routeLaden(\""+naar+"\","+lat+","+lng+");' /></td></tr>";
  tbl_route += "</table>";
  tbl_route += "<div id='melding-route'></div>";	
  tbl_route += "</div>";
  var html_max = "<h2 class=\"ohp-iw-hdr-max\">" + label + "</h2><p id=\"iw-info-max\"><img class=\"img-uitje\" alt=\"\" src=\"/img/kaart/uitjes/" + afbeelding + "\" />" + info + "</p><h3>Contactgegevens</h3><p>" + straat.replace(/\+/gi," ") + "&nbsp;"  + huisnr + "<br />" + postcode + "&nbsp;" + plaats.replace(/\+/gi," ") + "<br /><br /><br /><img alt=\"telefoonnummer\" src=\"/img/kaart/ico-telefoon.gif\" />&nbsp;" + str_telefoon + "<br /><img alt=\"website bezoeken\" src=\"/img/kaart/ico-website.gif\" />&nbsp;<a title='" + label + "' href='http://" + url + "'>" + label + " op het web</a><br /><img alt=\"website bezoeken\" src=\"/img/kaart/ico-route.gif\" />&nbsp;<a title=\"\" href=\"#\" onclick=\"toggleContainerRoute(); return false;\">route naar " + label + "</a></p>" + tbl_route + gads;

  infovenster.openExtInfoWindow(
    map, 
    "ohp_info_window",
	"<div><div id='iw_container'>" + html_max + "</div></div>",
    { /* ajaxUrl: "kaart-idb-details.asp?id="+idb_id, */ beakOffset: 3 }
  ); 

  GEvent.addListener(infovenster, "click", function() {

    infovenster.openExtInfoWindow(
    map, 
    "ohp_info_window",
	"<div><div id='iw_container'>" + html_max + "</div></div>",
    { /* ajaxUrl: "kaart-idb-details.asp?id="+idb_id, */ beakOffset: 3 }
    ); 

  });

  GEvent.addListener(infovenster,"mouseover", function() {
	infovenster.setImage("/img/kaart/prikkertje-" + categorie + "-focus.png");
  });
  
  GEvent.addListener(infovenster,"mouseout", function() {
	infovenster.setImage("/img/kaart/prikkertje-" + categorie + ".png");
  }); 

  map.addOverlay(infovenster);
  //window.setTimeout(function() { map.panTo(point); }, 500);
  //window.setTimeout(function() { map.panDirection(0,-1); }, 500);
  map.setCenter(point,14);  

}

function checkStatus() {

  var chk_friesland = document.getElementById("chk-friesland").checked;
  var chk_groningen = document.getElementById("chk-groningen").checked;
  var chk_drenthe = document.getElementById("chk-drenthe").checked;
  var chk_overijssel = document.getElementById("chk-overijssel").checked;
  var chk_noord_holland = document.getElementById("chk-noord-holland").checked;
  var chk_zuid_holland = document.getElementById("chk-zuid-holland").checked;  
  var chk_noord_brabant = document.getElementById("chk-noord-brabant").checked;
  var chk_zeeland = document.getElementById("chk-zeeland").checked;  
  var chk_limburg = document.getElementById("chk-limburg").checked;
  var chk_utrecht = document.getElementById("chk-utrecht").checked;
  var chk_flevoland = document.getElementById("chk-flevoland").checked;
  var chk_gelderland = document.getElementById("chk-gelderland").checked;  

  var chk_museum = document.getElementById("chk-museum").checked;
  var chk_dierentuin = document.getElementById("chk-dierentuin").checked;
  var chk_natuur = document.getElementById("chk-natuur").checked;
  var chk_attractiepark = document.getElementById("chk-attractiepark").checked;  
  var chk_speeltuin = document.getElementById("chk-speeltuin").checked;
  var chk_eten_en_drinken = document.getElementById("chk-eten-en-drinken").checked;  
  var chk_theater = document.getElementById("chk-theater").checked;
  var chk_recreatie = document.getElementById("chk-recreatie-en-sportief").checked;

  m_regio = [];
  m_cat = [];
  masker = [];
  

  if (chk_noord_holland == true) { 
    m_regio.push("01");
  }

  if (chk_zuid_holland == true) { 
    m_regio.push("02");
  }  

  if (chk_flevoland == true) { 
    m_regio.push("03");
  }

  if (chk_friesland == true) { 
    m_regio.push("04");
  }

  if (chk_groningen == true) { 
    m_regio.push("05");
  }

  if (chk_drenthe == true) { 
    m_regio.push("06");
  }

  if (chk_overijssel == true) { 
    m_regio.push("07");
  }

  if (chk_zeeland == true) { 
    m_regio.push("08");
  }

  if (chk_noord_brabant == true) { 
    m_regio.push("09");
  }

  if (chk_limburg == true) { 
    m_regio.push("10");
  }

  if (chk_utrecht == true) { 
    m_regio.push("11");
  }
  
  if (chk_gelderland == true) { 
    m_regio.push("12");
  }

  if (chk_museum == true) { 
    m_cat.push("01");
  }

  if (chk_dierentuin == true) { 
    m_cat.push("02");
  }  

  if (chk_natuur == true) { 
    m_cat.push("03");
  }

  if (chk_attractiepark == true) { 
    m_cat.push("04");
  }

  if (chk_speeltuin == true) { 
    m_cat.push("05");
  }

  if (chk_eten_en_drinken == true) { 
    m_cat.push("06");
  }

  if (chk_theater == true) { 
    m_cat.push("07");
  }

  if (chk_recreatie == true) { 
    m_cat.push("08");
  }

  for (i=0; i < m_regio.length; i++) {
    for (f=0; f < m_cat.length; f++) {
    //masker.push(m_regio[i] + "-" + m_cat[j]);
	  masker.push(m_regio[i] + "-" + m_cat[f]);
	  //masker.push(m_regio[i]);
	}
  }

  allesUit();

  for (l=0; l < ar_alle_marker_ids.length; l++) {
	var huidig_id = ar_alle_marker_ids[l];
	huidig_masker = huidig_id.substr(0,5);
	
    for (k=0; k < masker.length; k++) {
	  if (masker[k] == huidig_masker) {
		ar_alle_markers[l].show();
	  }
    }

  }
 
}

function allesUit() {

    for (i=0;i<ar_alle_markers.length;i++) {
      var marker = ar_alle_markers[i]; 
	  marker.hide();
	}

}

function allesAan() {
    var chk_alles = document.getElementById("chk-alles").checked;
	if (chk_alles == true) {
		
      document.getElementById("chk-friesland").checked = true;
      document.getElementById("chk-groningen").checked = true;
      document.getElementById("chk-drenthe").checked = true;
      document.getElementById("chk-overijssel").checked = true;
      document.getElementById("chk-noord-holland").checked = true;
      document.getElementById("chk-zuid-holland").checked = true;  
      document.getElementById("chk-noord-brabant").checked = true;
      document.getElementById("chk-zeeland").checked = true;  
      document.getElementById("chk-limburg").checked = true;
      document.getElementById("chk-utrecht").checked = true;
      document.getElementById("chk-flevoland").checked = true;
      document.getElementById("chk-gelderland").checked = true;  
		
      for (i=0;i<ar_alle_markers.length;i++) {
        var marker = ar_alle_markers[i]; 
	    marker.show();
	  }
	}
	
	checkStatus();
}

function zoomProvincie(regioid) {
	
if (vanuit_detailview_kaart == 1) {
  markertjesLaden();  
}

$.ajax({
   type: "GET",
   url: "/get_center.php",
   cache: false,
   dataType: "text",
   data: "regioid="+regioid,
   success: function(text){
	var coords = text;
	var x_en_y = coords.split(":");
	var center_x =parseFloat(x_en_y[0]);
	var center_y = parseFloat(x_en_y[1]);
	map.setCenter(new GLatLng(center_x,center_y),10);
    return false;	
  }
 });
  
}

function toggleSBTabs(tab) { 
  var el = document.getElementById(tab);
  if (el.id == "menu-sidebar-inzoomen") {
	  
	$("#inzoomen-uitjes").fadeIn("slow");
	document.getElementById("opties-regio").style.display = "block";
	document.getElementById("opties-regio").style.display = "block";	
	document.getElementById("zelf-meedoen").style.display = "none";

    document.getElementById("menu-sidebar-inzoomen").className = "mnu-sb-actief";
    document.getElementById("menu-sidebar-meedoen").className = "mnu-sb-inactief";
   
  }
  else if (el.id == "menu-sidebar-meedoen") {
	  
	document.getElementById("inzoomen-uitjes").style.display = "none";
	document.getElementById("opties-regio").style.display = "none";
	document.getElementById("opties-regio").style.display = "none";	
	$("#zelf-meedoen").fadeIn("slow");	

    document.getElementById("menu-sidebar-inzoomen").className = "mnu-sb-inactief";
    document.getElementById("menu-sidebar-meedoen").className = "mnu-sb-actief";

  }  
}

function flvLaden() {

  var s1 = new SWFObject("http://www.ophetprogramma.nl/media/flvplayer.swf","blah","400","396","8");
  s1.addParam("allowfullscreen","false");
  s1.addVariable("height","396");
  s1.addVariable("width","400"); 
  s1.addVariable("displayheight","396");
  s1.addVariable("file","/media/howto-uitje-invoegen.flv");
  s1.addVariable("image","/media/howto-uitje-invoegen.jpg");
  s1.write("flv");
  
  $("#flv").css( { display: "block" } );

}

function setFav(url) {
  var url = unescape(url);	
  if ((navigator.appName == "Microsoft Internet Explorer") && (parseInt(navigator.appVersion) >= 4)) {
	  window.external.AddFavorite(url,'Op het programma! - gewoon geen tijd om jezelf te vervelen');
	}
	else {
	  if (window.sidebar&&window.sidebar.addPanel) {
		window.sidebar.addPanel("Op het programma!",url,""); 
	  }
	  else { 
		alert("Om Op het Programma in oudere Netscape versies\nte bookmarken dien je de toestcombinatie CTRL+D te gebruiken");
     }
  }
}

function mailUitje(slug) {

  var slug = slug;
  var email = document.getElementById("input-email-uitje").value;

  var emailReg = "^[\\w-_\.]*[\\w-_\.]\@[\\w]\.+[\\w]+([\.a-z]){3,5}$";
  var regexEmail = new RegExp(emailReg); 
  if (!regexEmail.test(email)) {
	if (document.getElementById("resultaat-email-uitje")) {
	  document.getElementById("resultaat-email-uitje").innerHTML = "";
	  var tekst_email = document.createTextNode("Het ingevoerde e-mailadres is ongeldig.");
	  document.getElementById("resultaat-email-uitje").appendChild(tekst_email);
	}
  }

  else {
    $.ajax({
      type: "POST",
      url: "/mail-uitje.php",
      cache: false,
      dataType: "text",
      data: "slug="+slug+"&email="+email,
      success: function(text){
	    if (document.getElementById("resultaat-email-uitje")) {
	      document.getElementById("resultaat-email-uitje").innerHTML = "";			
	      var tekst_email = document.createTextNode("De e-mail met de details van dit uitje zijn verstuurd aan " + email + ".");
	      document.getElementById("resultaat-email-uitje").appendChild(tekst_email);
		  window.setTimeout(function() { $("#container-email-uitje").hide(); }, 2000);
		}
      }
    });
  }

}

function commentaarInvoegen() {

  var nick = document.getElementById("nick").value;
  var waardering = document.getElementById("uitje-waardering").value;
  var commentaar = document.getElementById("commentaar").value;
  var id = document.getElementById("id").value;

  if (parseInt(waardering) > 0) {
    $.ajax({
      type: "POST",
      url: "/commentaar-invoegen.php",
      cache: false,
      dataType: "text",
      data: "id="+id+"&nick="+nick+"&waardering="+waardering+"&commentaar="+commentaar,
      success: function(text){
        location.reload(); 
      }
    });
  }
  else {
	alert("Je hebt dit uitje nog niet voorzien van een waardering");  
  }
}

function registreerOHP() {

  var gebruikersnaam = $("#gebruikersnaam").val();
  var email = $("#email").val();
  var bevestig_email = $("#bevestig_email").val();
  var wachtwoord = $("#wachtwoord").val();
  var bevestig_wachtwoord = $("#bevestig_wachtwoord").val();
  
  var bevestig_registratie = document.getElementById("bevestig_registratie").checked;

  if (bevestig_registratie == true) {
	  
	var waarde_bevestig_registratie = 1;  
	var melding;
	
    $.ajax({
      type: "POST",
      url: "/registratie-invoegen.php",
      cache: false,
      dataType: "text",
      data: "gebruikersnaam="+gebruikersnaam+"&wachtwoord="+wachtwoord+"&bevestig_wachtwoord="+bevestig_wachtwoord+"&email="+email+"&bevestig_email="+bevestig_email+"&bevestig_registratie="+waarde_bevestig_registratie,
      success: function(text){
        //location.reload(); 
		melding = text;
		$("#melding-registreren").css( { color:"#f00" } );
		$("#melding-registreren").html(melding);
		
		var gelukt = melding.indexOf("Bedankt");
		
		alert(gelukt);
		
		if (gelukt > -1) {
		  $("#melding-registreren").css( { color:"#039" } );	
		  location.href="/";	
		}
      }
	  
    });
	
  }
  
  else {
	
	melding = "De registratie kon niet worden voltooid. Vink aub aan dat je de Op Het Programma nieuwsbrief wilt ontvangen.";
	$("#melding-registreren").css( { color:"#f00" } );
	$("#melding-registreren").html(melding);	
	
  }

}

function updateWaardering() {

}

function sessieSorteren(sorteren) {

    $.ajax({
      type: "GET",
      url: "/sorterenop.php",
      cache: false,
      dataType: "text",
      data: "s="+sorteren,
      success: function(text){	
	    location.reload();
      }
    });

}

function sessieSorteerVolgorde(opaf) {

    $.ajax({
      type: "GET",
      url: "/sorterenop.php",
      cache: false,
      dataType: "text",
      data: "ad="+opaf,
      success: function(text){	
	    location.reload();
      }
    });

}
