/*
	Javascript functies  Wittewoningmakelaar

	donderdag 29 mei 2008
*/

// Menu
function init_menu()
{
	var menu = document.getElementById('menu');
	var lis  = menu.getElementsByTagName('LI');

	for (var i=0;i<lis.length;i++)
	{
		lis[i].onmouseover = function ()
		{
			if(this.className != '') return;
			this.style.backgroundImage = 'url(/images/menu_hover.gif)';
		}
		lis[i].onmouseout = function () {
			if(this.className != '') return;
			this.style.backgroundImage = '';
		}
	}
}

// Kaart
if (document.images)
{
	nl = new Image();
	nl.src  = "/images/kaart/nederland.gif";
	utrecht = new Image();
	utrecht.src  = "/images/kaart/nlutrecht.gif";
	nh = new Image();
	nh.src  = "/images/kaart/nlnoordholland.gif";
	zh = new Image();
	zh.src  = "/images/kaart/nlzuidholland.gif";
	zeeland = new Image();
	zeeland.src  = "/images/kaart/nlzeeland.gif";
	nb = new Image();
	nb.src  = "/images/kaart/nlnoordbrabant.gif";
	limburg = new Image();
	limburg.src  = "/images/kaart/nllimburg.gif";
	gelderland = new Image();
	gelderland.src  = "/images/kaart/nlgelderland.gif";
	flevoland = new Image();
	flevoland.src  = "/images/kaart/nlflevoland.gif";
	overijssel = new Image();
	overijssel.src  = "/images/kaart/nloverijssel.gif";
	friesland = new Image();
	friesland.src  = "/images/kaart/nlfriesland.gif";
	drenthe = new Image();
	drenthe.src  = "/images/kaart/nldrenthe.gif";
	groningen = new Image();
	groningen.src  = "/images/kaart/nlgroningen.gif";

	name1on  = new Image();name1on.src  = '/images/kaart/europa_on.gif';
	name1off  = new Image();name1off.src  = '/images/kaart/europa.gif';
}

function changeImagemap(newImage)
{
	document['kaartnl'].src = eval(newImage + ".src");
}

function imageOn(obj)
{
	obj.src = obj.src.replace(/_off.gif/, "_on.gif");
}

function imageOff(obj)
{
	obj.src = obj.src.replace(/_on.gif/, "_off.gif");
}

function tabover(obj)
{
	if (obj.src.indexOf('_on.gif') == -1)
		obj.src = obj.src.replace(/_off.gif/, "_over.gif");
}

function tabout(obj)
{
	if (obj.src.indexOf('_on.gif') == -1)
		obj.src = obj.src.replace(/_over.gif/, "_off.gif");
}

function tabselect(obj)
{
	if (obj.id == 'tab_0')
	{
		history.back()
	}
	if (obj.id == 'tab_1')
	{
		document.getElementById('vtab_1').style.display = 'block';
		document.getElementById('vtab_2').style.display = 'none';
		document.getElementById('tab_1').src = '/images/button_details_on.gif';
		document.getElementById('tab_2').src = '/images/button_googlemaps_off.gif';
	}
	if (obj.id == 'tab_2')
	{
		document.getElementById('vtab_1').style.display = 'none';
		document.getElementById('vtab_2').style.display = 'block';
		document.getElementById('tab_1').src = '/images/button_details_off.gif';
		document.getElementById('tab_2').src = '/images/button_googlemaps_on.gif';
	}
}

function initgmaps()
{
	if (GBrowserIsCompatible())
	{

		if (wLat == '' || wLng == '')
		{
			return alert('Geen Map aanwezig')
		}

		map = new GMap2(document.getElementById(mapid));
		if (wZoom != '')
		{
			map.setCenter(new GLatLng(wLat,wLng),wZoom);
		}
		else
		{
			map.setCenter(new GLatLng(wLat,wLng),15);
		}
		map.addControl(new GLargeMapControl());
		map.addControl(new GMapTypeControl());
		map.enableDoubleClickZoom();

		wIcon = new GIcon(G_DEFAULT_ICON);
		wIcon.image = "/images/gmaps_pointer.png";
		wIcon.iconSize = new GSize(14, 18);
		wIcon.printShadow = "/images/gmaps_pointer_shadow.gif";
		wIcon.shadowSize = new GSize(7,7);
		wIcon.iconAnchor = new GPoint(5, 5);

		markerOptions = { icon:wIcon };

		latlng = new GLatLng(wLat, wLng);
		map.addOverlay(new GMarker(latlng, markerOptions));
		if (text != '') {
			map.openInfoWindow(map.getCenter(), text);
		}
		
		mgr = new MarkerManager(map, {trackMarkers:true});
		window.setTimeout(setupOfficeMarkers, 100);

	}
}

function setupOfficeMarkers()
{
	allmarkers.length = 0;
	for (var i in officeLayer)
	{
		var layer = officeLayer[i];
		var markers = [];
		for (var j in layer["places"])
		{
			var place = layer["places"][j];
			var title = place["name"];
			var txt   = place["text"];
			var posn = new GLatLng(place["posn"][0], place["posn"][1]);
			var marker = createMarker(posn,title,wIcon,txt); 
			markers.push(marker);
			allmarkers.push(marker);
		}
		mgr.addMarkers(markers, layer["zoom"][0], layer["zoom"][17]);
	}
	mgr.refresh();
}

function createMarker(posn, title, icon, text)
{
	var marker = new GMarker(posn, {title: title, icon: icon, draggable:true });
	GEvent.addListener(marker, 'click', function() { map.openInfoWindow(posn, text) } );
	return marker;
}

function search_prov(obj,sloc)
{
	if (obj.value > 0)
		location='/'+sloc+'/' + obj.value + '/' + obj.options[obj.selectedIndex].text+'/';
	else
		location='/'+sloc+'/';
}

function search_pl(obj,sloc)
{
	var prov = document.getElementById('provincie');
	
	if (prov.value != 0){
		if (obj.value != ''){
			location='/'+sloc+'/' + prov.value + '/' + prov.options[prov.selectedIndex].text+'/'+obj.value+'/';
		} else {
			location='/'+sloc+'/' + prov.value + '/' + prov.options[prov.selectedIndex].text+'/';
		}
	} else {
		if (obj.value != ''){
			location='/'+sloc+'/0/alle_provincies/'+obj.value+'/';
		} else {
			location='/'+sloc+'/0/alle_provincies/';
		}
	}
}

function search_order(obj,sloc)
{
	var prov = document.getElementById('provincie');
	var pl   = document.getElementById('plaats');
	location='/'+sloc+'.asp?provincie=' + prov.value + '&plaats=' + pl.value+'&sort='+obj.value;
}

function zoekopdracht()
{
	var sError = "";
	var bReturn = true;

	if (document.frmZoekopdracht.Emailadres.value == "")
	{
		sError = sError + "- E-mail adres\n";
		bReturn = false;
	}
	if (sError != "")
	{
		alert ("Gelieve de volgende velden in te vullen:\n\n" + sError);
		bReturn = false;
	}
	else if ((document.frmZoekopdracht.Provincie.value == '') && (document.frmZoekopdracht.Plaats.value == '')) {
		alert ("U dient minimaal een provincie of een plaats te selecteren voor uw zoekopdracht");
		bReturn = false;
	}
	else {
		document.frmZoekopdracht.submit();
	}
}

function afspraak()
{
	var oForm = document.getElementById('afspraak');
	var eStr  = '';

	with (oForm)
	{
		if (achternaam.value == '') eStr += '- Achternaam;\n';
		if (email.value == '') eStr += '- Email;\n';
	}

	if (eStr == '')
		oForm.submit();
	else
		alert('De volgende velden zijn verplicht in te vullen:\n\n'+eStr);
}

function flutzooi(id)
{
	var spanid = document.getElementById('flutzooi');

	advAJAX.get(
	{
		url: "/__ajax_plaats.asp?pid="+id.value,

		onSuccess : function(obj)
		{
			spanid.innerHTML = obj.responseText;
		},
		onError : function(obj)
		{
			//document.getElementById('id').innerHTML = "Er is iets mis gegaan:"+obj.status;
			alert(obj.responseText)
		},
		onFinalization : function()
		{
			//
		},
		onLoading : function()
		{
			//streek.innerHTML = "Loading..."
		}
	});
}

function formulier_verhuren()
{
	var form   = document.getElementById('formulier_verhuren');
	var err = false;

	for(var i=0; i<form.elements.length; i++)
	{
		if ( (form.elements[i].name != 'mobiel' &&  form.elements[i].name != 'fax' &&  form.elements[i].name != "kalehuurprijs" &&  form.elements[i].name != "voorschotenergie" &&  form.elements[i].name != "servicekosten_stof" &&  form.elements[i].name != "servicekosten_verzekering") && form.elements[i].value == '')
		{
			err = true;
			break;
		}
		
	}

	if (err)
	{
		alert('U heeft niet alle velden ingevuld');
		return false;
	}
	else
		return true;
}

// Onload event koppelen
if (window.attachEvent)
	window.attachEvent("onload", init_menu);
else
	window.addEventListener("load", init_menu, false);

// EOF

function openAdviesWindow(sUrl, iWidth, iHeight)
	{
		stringie="height="+ iHeight +",width="+ iWidth +",toolbar=0,scrollbars=1,directories=no,menubar=no,location=no,resizable=0,personalbar=no,statusbar=0,left=50,top=50";
		newWindow = window.open(sUrl,"sWindowAdvies", stringie);
		newWindow.focus();
		return;
	}

function initgmapsTotal()
{
	if (GBrowserIsCompatible())
	{

		if (wLat == '' || wLng == '')
		{
			return alert('Geen Map aanwezig')
		}

		map = new GMap2(document.getElementById(mapid));
		if (wZoom != '')
		{
			map.setCenter(new GLatLng(wLat,wLng),wZoom);
		}
		else
		{
			map.setCenter(new GLatLng(wLat,wLng),15);
		}
		map.addControl(new GLargeMapControl());
		map.addControl(new GMapTypeControl());
		map.enableDoubleClickZoom();

		wIcon = new GIcon(G_DEFAULT_ICON);
		wIcon.image = "/images/gmaps_pointer.png";
		wIcon.iconSize = new GSize(14, 18);
		wIcon.printShadow = "/images/gmaps_pointer_shadow.gif";
		wIcon.shadowSize = new GSize(7,7);
		wIcon.iconAnchor = new GPoint(5, 5);

		markerOptions = { icon:wIcon };

		latlng = new GLatLng(wLat, wLng);
		//map.addOverlay(new GMarker(latlng, markerOptions));
		if (text != '') {
			map.openInfoWindow(map.getCenter(), text);
		}
		
		mgr = new MarkerManager(map, {trackMarkers:true});
		window.setTimeout(setupTotalMarkers, 100);

		GEvent.addListener(map, "moveend", function() { 
			var zoom = map.getZoom(); 
		  	var b = map.getBounds(); 
		  	var north = b.getNorthEast().lat(); 
		  	var south = b.getSouthWest().lat(); 
		  	var east = b.getNorthEast().lng(); 
		  	var west = b.getSouthWest().lng(); 
		  
		  	var url = "/js/totaalwoonaanbod.asp?z=" +zoom+ "&n=" +north+ "&s=" +south+ "&e=" +east + "&w="+west;
			GDownloadUrl(url, function(data, status) {
				if (status == 200) {
					displayProperty(data);
				}
			});
		}); 
		
		
	}
}

function setupTotalMarkers()
{
	allmarkers.length = 0;
	for (var i in officeLayer)
	{
		var layer = officeLayer[i];
		var markers = [];
		for (var j in layer["places"])
		{
			var place = layer["places"][j];
			var title = place["name"].replace("&euro;", "€");
			var txt   = place["text"];
			var posn = new GLatLng(place["posn"][0], place["posn"][1]);
			var marker = createMarker(posn,title,wIcon,txt); 
			markers.push(marker);
			allmarkers.push(marker);
		}
		mgr.addMarkers(markers, layer["zoom"][0], layer["zoom"][1]);
	}
	mgr.refresh();
}



function displayProperty(data) {
	mgr.clearMarkers();
	
	var officeLayer = eval(data);
	allmarkers.length = 0;
	for (var i in officeLayer)
	{
		var layer = officeLayer[i];
		var markers = [];
		for (var j in layer["places"])
		{
			var place = layer["places"][j];
			var title = place["name"].replace("&euro;", "€");
			var txt   = place["text"];
			var posn = new GLatLng(place["posn"][0], place["posn"][1]);
			var marker = createMarker(posn,title,wIcon,txt); 
			markers.push(marker);
			allmarkers.push(marker);
		}
		mgr.addMarkers(markers, layer["zoom"][0], layer["zoom"][1]);
	}
	mgr.refresh();
}