function input_focus (ref) {
	if (ref.getAttribute("placeholder") && ref.getAttribute("placeholder") == ref.value) {
		ref.value = "";
		ref.className = "textinput";
	}
}
function input_blur (ref) {
	if (ref.getAttribute("placeholder") && ref.getAttribute("placeholder") == "") {
		ref.value = ref.getAttribute("placeholder");
		ref.className = "textinput_placeholder";
	}
}

var map;
var map_locations;
var map_location_index;
var map_zoom_first;
function toggleZoom(isChecked) {
  if (isChecked) {
    map.enableScrollWheelZoom();
  } else {
    map.disableScrollWheelZoom();
  }
}

function init_map (params, zoom_first) {
	map_zoom_first = zoom_first ? true : false;
	target = $('map_canvas');
	if (!target) { return; }

	if (GBrowserIsCompatible()) {
		map = new GMap2(target);
		map.setCenter(new GLatLng(0, 0), 11);
		map.setUIToDefault();
		
		map_locations = params;
		map_location_index = 0;
		
		map.disableScrollWheelZoom();
		add_next_marker();
	}
	
	if (!params.length || map_zoom_first == false || map_zoom_first == "undefined") {
		var geocoder = new GClientGeocoder();
		geocoder.getLatLng("Netherlands", function(lating) {
			map.setCenter(lating, 7);
		});
	}
}
function createMarker(point, index, data) {
	var baseIcon = new GIcon(G_DEFAULT_ICON);
	baseIcon.shadow = "/images/maps/shadow50.png";
	baseIcon.iconSize = new GSize(20, 34);
	baseIcon.shadowSize = new GSize(37, 34);
	baseIcon.iconAnchor = new GPoint(9, 34);
	baseIcon.infoWindowAnchor = new GPoint(9, 2);

	var letter = String.fromCharCode("A".charCodeAt(0) + index);
	var letteredIcon = new GIcon(baseIcon);
	letteredIcon.image = "/images/maps/marker" + letter + ".png";

	// Set up our GMarkerOptions object
	markerOptions = { icon:letteredIcon };
	var marker = new GMarker(point, markerOptions);

	GEvent.addListener(marker, "click", function() {
		marker.openInfoWindowHtml("<b>" + data.name + "</b><br />" + data.address.replace(/\n/g,"<br />") + "<br /><br />" + (data.link ? "<a href='" + data.link + "'>" + (data.link_label ? data.link_label : "Meer info") + "</a>" : ""));
	});
	return marker;
}

function add_next_marker () {
	if (map_location_index < map_locations.length && map_location_index < 26) {
		var geocoder = new GClientGeocoder();
		geocoder.getLatLng(map_locations[map_location_index].location, function(lating) {
			try {
				if (map_location_index == 0 && map_zoom_first) {
					map.setCenter(lating, 10);
				}
				map.addOverlay(createMarker(lating, map_location_index, map_locations[map_location_index]));
			} catch (e) {
				// alert(map_locations[map_location_index].location);
			}
			map_location_index++;
			add_next_marker();
		});
	}
}

function open_portfolio (url) {
	// wanneer we geen show_options hebben zitten we in de show zelf... geen ajax variant gebruiken
	if (!$('show_options')) return;
	var dialog_width = $("show_options").getAttribute("dialog_width");
	$("show_options").setAttribute("dialog_width","800");
	$("show_options").setAttribute("post_render", "$('show_options').setAttribute('dialog_width',"+dialog_width+")");
	crud_show (null, url);
	return;
}