// JavaScript Document


function toggleQuestion(id) {
	if($(id).visible()) {
		new Effect.SlideUp(id, {duration: 0.3});
	} else {
		new Effect.SlideDown(id, {duration: 0.3});
	}
}
var current_cat = 'category1';
function updateCat(cat) {
	if(current_cat != cat) {
		$(current_cat).removeClassName('active');
	}
	$(cat).addClassName('active');
	current_cat = cat
}

var map;
var latlng = new Array();
var latlngbounds;

function initialize(lat,long) {
  if (GBrowserIsCompatible()) {
	map = new GMap2(document.getElementById("map_canvas"));
	map.setCenter(new GLatLng(lat, long), 15);
	map.addOverlay(new GMarker(new GLatLng(lat, long)));
	map.addControl(new GSmallMapControl());
  }
}

function initialize_dynamic(lat, long) {
	if (GBrowserIsCompatible()) {
		var markerOptions = icon('FFE600', 'X');
		map = new GMap2(document.getElementById("map_canvas"));
		map.setCenter(new GLatLng(lat, long), 15);
		map.addOverlay(new GMarker(new GLatLng(lat, long), markerOptions));
		var mapControl = new GMapTypeControl();
		map.addControl(mapControl);
		map.addControl(new GLargeMapControl());
	}
}

function add_point(lat,long,number,you,info) {
	if (you) {
		var markerOptions = icon('FFC125','O');
	} else {
		var markerOptions = icon('F799D1', number);
	}
	latlng[number] = new GLatLng(lat, long);
	var marker = new GMarker(latlng[number],markerOptions);
	map.addOverlay(marker);

	if(!you) {
    	GEvent.addListener(marker, "click", function() {
      	marker.openInfoWindowHtml(info);
    	});
	}
	
}

function zoom_all() {
  // map: an instance of GMap2
  // latlng: an array of instances of GLatLng
  latlngbounds = new GLatLngBounds( );
  for ( var i = 0; i < latlng.length; i++ )
  {
    latlngbounds.extend( latlng[ i ] );
  }
  latlngbounds = extendBoundsByRatio( latlngbounds, 0.1 );
  map.setCenter( latlngbounds.getCenter( ), map.getBoundsZoomLevel( latlngbounds ) );
	
}

function icon(color, text) {
	var icon = new GIcon(G_DEFAULT_ICON);
	icon.image = "http://sculptra.score-advertising.nl/locaties/googlemarker/"+color+"/"+text;	
	return icon;
}

function extendBoundsByRatio( bounds, ratio )
{
var ne = bounds.getNorthEast( );
var sw = bounds.getSouthWest( );
var latsize = ne.lat( ) - sw.lat( );
var lngsize = ne.lng( ) - sw.lng( );
bounds.extend( new GLatLng( ne.lat( ) + latsize * ratio, ne.lng( ) + lngsize * ratio ) );
bounds.extend( new GLatLng( sw.lat( ) - latsize * ratio, sw.lng( ) - lngsize * ratio ) );
return bounds;
}

