var map, layerResultsPin, layerPin, layerPark;
var pinPoints = new Array();
var poiPin = new Array();
var poiPark = new Array();

function mapReady() { 
	var myOptions = {
		zoom: 7,
		key: "8d962196-567e-449c-bdad-6959e57a68d5"
	};
	map = new tomtom.maps.Map(document.getElementById("maparea"), myOptions);
	
	if (typeof(xpos) != "undefined" && xpos != 0 && 
			typeof(ypos) != "undefined" && ypos != 0) {
		map.setCenter(new tomtom.maps.LatLng(ypos, xpos), 17);
	}
	
	layerResultsPin = new tomtom.maps.Layer();
	
   	loadMapContent();
   	loadPoiEvents();
}
function loadPoiEvents() {
	$("#poi_pin, #poi_park").click(function() {
		var lonLatCenter = map.getCenter();

		if ($(this).attr("class") == 'item') {
			if ($(this).attr("id") == "poi_pin") {
				enablePoiPin();
				ilLog('results.pinautomaat', 0, '-1',-1,-1,-1,'');
				jQuery.getScript("/poi?type=ATM&lat="+lonLatCenter.lat+"&long="+lonLatCenter.lng);
			} else {
				enablePoiPark();
				ilLog('results.parkeergarage', 0, '-1',-1,-1,-1,'');
				jQuery.getScript("/poi?type=PARK&lat="+lonLatCenter.lat+"&long="+lonLatCenter.lng);
			}
		} else {
			if ($(this).attr("id") == "poi_pin") {
				disablePoiPin();
			} else {
				disablePoiPark();
			}
		}
		$(this).toggleClass("item_on");
	});
}
function enablePoiPin() {
    layerPin = new tomtom.maps.Layer();
	map.addLayer(layerPin);
}
function enablePoiPark() {
    layerPark = new tomtom.maps.Layer();
	map.addLayer(layerPark);
}
function addPoi(nr, type, desc, lon, lat){
	if (type == 'atm') {
		poiPin[nr-1] = new tomtom.maps.Marker(
				new tomtom.maps.LatLng(lat, lon), 
				"/images/poi_" + type + ".png", 
				new tomtom.maps.Size(30, 24));
		
		layerPin.addMarker(poiPin[nr-1]);
		layerPin.update();
	} else {
		poiPark[nr-1] = new tomtom.maps.Marker(
				new tomtom.maps.LatLng(lat, lon), 
				"/images/poi_" + type + ".png", 
				new tomtom.maps.Size(21, 23),
				tomtom.maps.Marker.ALIGN_CENTER);
		
		layerPark.addMarker(poiPark[nr-1]);
		layerPark.update();
	}
}
function disablePoiPin() {
	map.removeLayer(layerPin);
}
function disablePoiPark() {
	map.removeLayer(layerPark);
}
function getMapImageOffset(url) {
	var loc = new Array(2);
	$("#maparea img").each(function(i) {
		if($(this).attr("src") != null && $(this).attr("src").indexOf(url) > -1) { 
			loc[0] = $(this).offset().top;
			loc[1] = $(this).offset().left; 		
			return loc;
		}
	});
	return loc;
}
function addLocation(myNr, myLong, myLat){
	if (myLong != null && myLat != null) {
		
		var marker = null;

		if (myNr < 1000) {
			marker = new tomtom.maps.Marker(
					new tomtom.maps.LatLng(myLat, myLong), 
					"/images/nrs/nr_" + myNr + ".png", 
					new tomtom.maps.Size(25, 33));
		} else {
			marker = new tomtom.maps.Marker(
					new tomtom.maps.LatLng(myLat, myLong), 
					"/images/nrs/nr_" + myNr + ".png", 
					new tomtom.maps.Size(25, 25), 
					tomtom.maps.Marker.ALIGN_CENTER);
		}
 		pinPoints[myNr] = marker;
	}
}
function addIconsToMap(){
	if(pinPoints.length>0){
		for(var i = pinPoints.length-1; i >= 0; i--) {
			if (pinPoints[i] != null) {
				layerResultsPin.addMarker(pinPoints[i]);
			}
		}
	}
}
function trim(stringToTrim) {
	return stringToTrim.replace(/^\s+|\s+$/g,"");
}