/*******************************************************************************
 * Javascript für twGmap07Infofenster - Version01
 ******************************************************************************/
	// (nach oben: Lat höhere Zahl - nach rechts: Lon höhere zahl)
var gmapId = "twGmap";  // id des GoogleMap-div's im html-code
var lat    = "35.45660";  // Breitengrad (Latitude) z.B: 51.041
var lon    = "24.16955";  // Längengrad (Longitude) z.B: 13.748
var zoom   = 16;        // Zoom-Wert von 1 bis ca 17 (nicht in "")(1=ganzeWelt)


/**
 * Prüft auf kompatiblen Browser und vorhandene Variablen und ruft die
 * Funktion auf, die die GoogleMap erstellt.
 */
function twGmapLoad() {
	if (GBrowserIsCompatible()) {
		// die Google Map (twGmap)
		if (!document.getElementById(gmapId)) {
			alert("Fehler: die Google Map mit der id "+ gmapId+ " konnte nicht auf dieser Webseite gefunden werden!");
			return false;
		} else {
			if (lat=="" || isNaN(lat)) {
				lat = "35.45666";
				alert("Fehler: Der Breitengrad(lat) wurde im Skript nicht korrekt eingetragen!\nEin Defaultwert wird deshalb benutzt!");
			}
			if (lon=="" || isNaN(lon)) {
				lon = "24.16955";
				alert("Fehler: Der Längengrad(lon) wurde im Skript nicht korrekt eingetragen!\nEin Defaultwert wird deshalb benutzt!");
			}
			if (typeof zoom == "undefined") {
				zoom = 3;
				alert("Fehler: Die Zoomstufe wurde im Skript nicht korrekt eingetragen!\nEin Defaultwert wird deshalb benutzt!");
			}
			machTwGmap(gmapId, lat, lon, zoom);			
		}
	}
}


/**
 * Erstellt die GoogleMap in dem <div>-Bereich mit der übergebenen id
 * @param {Object} id   -im div-Bereich mit dieser id wird die Map dargestellt
 * @param {Object} lat  -Breitengrad 
 * @param {Object} lon  -Längengrad
 * @param {Object} zoom -Zoomstufe 1 bis 17 (ganze Welt bis kleiner Ausschnitt)
 */
function machTwGmap(id, lat, lon, zoom) {
	// die Map (für das div mit der id="...")
	var map = new GMap2(document.getElementById(id));
	// mit Zoom (auch noch: GSmallMapControl, GLargeMapControl, GSmallZoomControl, GScaleControl)
	map.addControl(new GLargeMapControl());
	// mit Typ-Auswahl (auch noch: GMapTypeControl, GHierarchicalMapTypeControl, GOverviewMapControl)
	map.addControl(new GMapTypeControl());
	// ((Breitengrad, Längengrad), Zoomstufe, G_NORMAL_MAP/G_SATELLITE_MAP/G_HYBRID_MAP)
	map.setCenter(new GLatLng(lat, lon), zoom, G_HYBRID_MAP);
	
	// Marker setzen mit eigener Marker-Funktion
	map = setTwMarkers(map);
}


/**
 * Erstellt alle Marker für die übergebene Google Map.
 * (Ruft intern für jeden Marker eine eigene Funktion auf)
 * @param {Object} map
 */
function setTwMarkers(map) {
	var marker01 = machTwMarker01();
	var marker02 = machTwMarker02();
	var marker03 = machTwMarker03();
	map.addOverlay(marker01);
	map.addOverlay(marker02);
	map.addOverlay(marker03);

	// (map, bild, bildgröße, Größe innere Area im Bild, links-oben innere Area, ankerpunkt-marker, [true-nicht wegklickbar])

	twGmapInfofenster01 = new EBubble(map, "images/infofenster01.png", new GSize(240,222), new GSize(210,100), new GPoint(14,14), new GPoint(-20,226));
	twGmapInfofenster02 = new EBubble(map, "images/infofenster02.png", new GSize(190, 184), new GSize(165,80), new GPoint(9,9), new GPoint(195,210));  
	twGmapInfofenster03 = new EBubble(map, "images/infofenster03.png", new GSize(180, 130), new GSize(160,55), new GPoint(9,12), new GPoint(0,128));  
	
	return map;
}


/**
 * --- A C H T U N G : --- Lat und Lon sind hier umgekehrt! ---
 (nach rechts die erste (Lon) höhere Zahl ---  nach oben (Lat) höhere Zahl )
*/
function machTwMarker01() {
	var point = new GPoint(24.17365, 35.45244);
	var marker = new GMarker(point);
	var html = '';
	html += '<div class="twGmapInfo">';
	html += ' <p class="headline">THAMIRIS Apartments</p>';
	html += ' <p class="text">Nr. 468 Kalives / Apokoronas</p>';
	html += ' <p class="text">Kreta / GR 73003</p>';
	html += '</div>';
	
	// hier das eigene Infofenster öffnen (anstatt das 'normale' von google)
	GEvent.addListener(marker, "click", function() {twGmapInfofenster01.openOnMarker(marker, html);});
	
	return marker;
}

function machTwMarker02() {
	var point = new GPoint(24.17317, 35.45326);
	var marker = new GMarker(point);var html = '';
	html += '<div class="twGmapInfo02">';
	html += ' <p class="headline">THAMIRAKIS Studios</p>';
	html += ' <p class="text"> Kalives / Apokoronas</p>';
	html += '</div>';
	
	GEvent.addListener(marker, "click", function() {twGmapInfofenster02.openOnMarker(marker, html);});
	
	return marker;
}

function machTwMarker03() {
	var point = new GPoint(24.16370, 35.45937);
	var marker = new GMarker(point);var html = '';
	html += '<div class="twGmapInfo03">';
	html += ' <p class="headline">Villa PETROS</p>';
	html += ' <p class="text">  Kalives / Apokoronas</p>';
	html += '</div>';
	
	GEvent.addListener(marker, "click", function() {twGmapInfofenster03.openOnMarker(marker, html);});
	
	return marker;
}


