var beachVBDefaultOptions = {
    'element' : 'beachVBMap',
    'centerLat' : 30.0,
    'centerLng' : -50.0,
    'zoom' : 1
}
var beachVBOptions = {}

function incBeachVBScripts(filename){
    document.write('<script src="', filename, '" type="text/javascript"></script>');
}

var prefix = 'http://www.beachvb.net/js/'
incBeachVBScripts(prefix + "markerclusterer_packed.js");
incBeachVBScripts(prefix + "points.js");

function setDefaultOptions(){
    for (var i in beachVBOptions) {
	beachVBDefaultOptions[i] = beachVBOptions[i];
    }
}

function createMarker(point,id){
    var marker = new GMarker(point);
    marker.value = id;
    GEvent.addListener(marker,"click",function (){
    	location.href= 'http://www.beachvb.net/EN/place/' + id;
    });

    return marker;
}

function initializeincBeachVBScripts(){
    setDefaultOptions()
    var map = new GMap2(document.getElementById( beachVBDefaultOptions['element'] ));
    map.setCenter(new GLatLng(beachVBDefaultOptions['centerLat'], beachVBDefaultOptions['centerLng']), beachVBDefaultOptions['zoom']);
    map.addControl(new GMapTypeControl());
    var markers = [];
    for (var i = 0; i < beachVBData.length; i++) {
      var point = new GLatLng(beachVBData[i][0],beachVBData[i][1]);
      markers.push(createMarker(point,beachVBData[i][2]));
    }
    var markerCluster = new MarkerClusterer(map, markers);
}

window.onload = function (){
    initializeincBeachVBScripts();
}
