google.load("maps", "2",{"other_params":"sensor=false"});		

/*--- VARIABLES ---*/
var mpvMap;
var apartment = [];

/*--- CREATE APARTMENTS POINT ---*/
function createMarkerApart(point, link, thumb, name, info, i) {	
	var marker = new google.maps.Marker(point);
	apartment[i] = marker;		
	google.maps.Event.addListener(marker, "click", function(){
		marker.openInfoWindowHtml("<div class='infobox'><a href='http://www.myparisvisit.com/" + link + "'><img src='http://www.myparisvisit.com/repository/img/thumb/menu/" + thumb + "' /></a><p><b><a href='http://www.myparisvisit.com/" + link + "'>" + name + "</a></b><br/>" + info + "</p></div>");
	});
	return marker;
}

/*--- LOAD APARTMENTS ---*/
function loadApartment(full, id){
	mpvMap.closeInfoWindow();
	var apartmentsLength = apartmentMarker.length;		
	if(full){
		for (var i = 0; i < apartmentsLength; i++) {
			var point = new google.maps.LatLng(apartmentMarker[i][0], apartmentMarker[i][1]);
			var marker = createMarkerApart(point, apartmentMarker[i][4], apartmentMarker[i][5], apartmentMarker[i][6], apartmentMarker[i][7], i);
			mpvMap.addOverlay(marker);
		}
	}else{
		if(id){
			for (var i = 0; i < apartmentsLength; i++) {
				if(id==apartmentMarker[i][3]){
					apartment[i].show();
				}else{
					apartment[i].hide();
				}
			}
		}else{
			for (var i = 0; i < apartmentsLength; i++) {
				apartment[i].show();
			}			
		}
	}		
}

/*--- INITIALIZE GOOGLE MAP ---*/
function initialize() {

	if (google.maps.BrowserIsCompatible()) {

		mpvMap = new google.maps.Map2(document.getElementById("mpvMap"));
		mpvMap.addControl(new google.maps.SmallZoomControl3D());
		//mpvMap.addControl(new google.maps.MenuMapTypeControl());
		mpvMap.enableContinuousZoom();
		mpvMap.enableScrollWheelZoom();

		mpvMap.setCenter(new google.maps.LatLng(48.8580, 2.3450), 14);
		
		loadApartment(true,false);
		
		var apartmentSelect = document.getElementById("selectoptmap");
		if(apartmentSelect != null){
			apartmentSelect.options[0].selected = true;
		}
	}else{
		alert('Google Maps Error');
	}
}

google.setOnLoadCallback(initialize);