var ie = (typeof window.ActiveXObject != 'undefined');

if (ie) http = new ActiveXObject("Microsoft.XMLHTTP");
else http = new XMLHttpRequest();
 	
	function get_google_statiuni_and_load_map(statiune) {
		div_harta = document.getElementById('img_zoom');
		div_harta.style.backgroundColor = "#ffffff";
		div_harta.innerHTML = '<img src="loadingAnimation.gif"/>';
		
		var url_script = "google_statiuni_regiune_from_statiune.php";

		http.open("GET", url_script + "?statiune_id=" + escape(statiune), true);
		http.onreadystatechange = google_statiuni_result_and_load_map;
		http.send("");
	}
	
	function google_statiuni_result_and_load_map() {
		if (http.readyState == 4) {
			var textout = http.responseText;
			var statiuni = new Array();

			try { //Internet Explorer
				xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
				xmlDoc.async="false";
				xmlDoc.loadXML(textout);
			} catch(e) {
				try { //Firefox, Mozilla, Opera, etc.
					parser=new DOMParser();
					xmlDoc=parser.parseFromString(textout,"text/xml");
				} catch(e) {
					alert(e.message);
				}
			}
			var markers = xmlDoc.getElementsByTagName("marker_statiune");
			for (i=0; i<markers.length; i++) {
				statiuni[i] = new Array();
				statiuni[i]["id"] = parseFloat(markers[i].getAttribute("statiune_id"));
				statiuni[i]["nume"] = markers[i].getAttribute("nume");
				statiuni[i]["regiune"] = markers[i].getAttribute("regiune");
				if (statiuni[i]["regiune"] == null) statiuni[i]["regiune"] = "";
				statiuni[i]["latitude"] = parseFloat(markers[i].getAttribute("latitude"));
				statiuni[i]["longitude"] = parseFloat(markers[i].getAttribute("longitude"));
				statiuni[i]["active"] = parseFloat(markers[i].getAttribute("active"));
				statiuni[i]["zoom"] = parseFloat(markers[i].getAttribute("zoom"));
				var info_windows = markers[i].getElementsByTagName("info_window");
				if (ie) statiuni[i]["info_window"] = info_windows[0].childNodes[0].nodeValue;
				else statiuni[i]["info_window"] = info_windows[0].childNodes[1].nodeValue;
			}
			load_google_map_statiuni(statiuni, 'img_zoom', 'img_zoom_legend', 'img_zoom_title');
		}
	}
	
	function load_google_map_statiuni(statiuni, div_map, div_legend, div_title) {
		function createMarker(point, marker_type, windowHtml) {
			var markerIcon = new GIcon();
			if (marker_type == "active") {
				markerIcon.image = "http://www.google.com/intl/en_us/mapfiles/ms/micons/green-dot.png";
				markerIcon.iconAnchor = new GPoint(16, 16);
				markerIcon.iconSize = new GSize(32, 32);
			} else {
				markerIcon.image = "http://www.google.com/intl/en_us/mapfiles/ms/micons/blue-dot.png";
				markerIcon.iconAnchor = new GPoint(16, 16);
				markerIcon.iconSize = new GSize(32, 32);
			}
			var marker = new GMarker(point, { icon:markerIcon });
			GEvent.addListener(marker, "click", function() {
				map.openInfoWindowHtml(point, windowHtml, {maxWidth:"350"});
			});
			return marker;
		}
	
		var zoom_center = 1;
		
		if (GBrowserIsCompatible()) {
			var map = new GMap2(document.getElementById(div_map));
			var markers = Array ();
			map.addControl(new GSmallMapControl());
			map.addControl(new GMapTypeControl());
			map.addMapType(G_PHYSICAL_MAP);
			for (i=0; i<statiuni.length; i++) {
				var point = new GLatLng(statiuni[i]["latitude"], statiuni[i]["longitude"]);
				if (statiuni[i]["active"]) {
					zoom_i = statiuni[i]["zoom"];
					// statiune selectata
					var point_center = point;
					zoom_center = zoom_i;
					markers[i] = createMarker(point, "active", statiuni[i]["info_window"]);
					statiune_center_nume = statiuni[i]["nume"];
					statiune_center_regiune_nume = statiuni[i]["regiune"];
				} else {
					markers[i] = createMarker(point, "inactive", statiuni[i]["info_window"]);
				}
			}
			map.setCenter(point_center, zoom_center);
			for (i=0; i<markers.length; i++) {
				map.addOverlay(markers[i]);
			}
			document.getElementById(div_legend).innerHTML = "<table class=\'nt\'><tr><td colspan=\'2\' class=\'subtitlu\'>Legenda</td></tr><tr><td><img src=\'imgs/google_green_dot.png\' class=\'ntW\'/>"+statiune_center_nume+"</td></tr><tr><td><img src=\'imgs/google_blue_dot.png\' class=\'ntW\'/> Alte statiuni din regiunea "+statiune_center_regiune_nume+"</td></tr><tr><td colspan=\'2\'><b>Clic pentru a vedea informatii legate de statiuni</b></td></tr></table>";
			document.getElementById(div_title).innerHTML = "<b>Harta Google "+statiune_center_nume+"</b>";

		}
	}

    function get_google_regiuni_and_load_map(regiune) {
        div_harta = document.getElementById('img_zoom');
        div_harta.style.backgroundColor = "#ffffff";
        div_harta.innerHTML = '<img src="loadingAnimation.gif"/>';
        
        var url_script = "google_regiuni_from_regiune.php";

        http.open("GET", url_script + "?regiune_id=" + escape(regiune), true);
        http.onreadystatechange = google_regiuni_result_and_load_map;
        http.send("");
    }
    
    function google_regiuni_result_and_load_map() {
        if (http.readyState == 4) {
            var textout = http.responseText;
            var regiuni = new Array();

            try { //Internet Explorer
                xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
                xmlDoc.async="false";
                xmlDoc.loadXML(textout);
            } catch(e) {
                try { //Firefox, Mozilla, Opera, etc.
                    parser=new DOMParser();
                    xmlDoc=parser.parseFromString(textout,"text/xml");
                } catch(e) {
                    alert(e.message);
                }
            }
            var markers = xmlDoc.getElementsByTagName("marker_regiune");
            for (i=0; i<markers.length; i++) {
                regiuni[i] = new Array();
                regiuni[i]["id"] = parseFloat(markers[i].getAttribute("statiune_id"));
                regiuni[i]["nume"] = markers[i].getAttribute("nume");
                regiuni[i]["tara"] = markers[i].getAttribute("tara");
                if (regiuni[i]["tara"] == null) regiuni[i]["tara"] = "";
                regiuni[i]["latitude"] = parseFloat(markers[i].getAttribute("latitude"));
                regiuni[i]["longitude"] = parseFloat(markers[i].getAttribute("longitude"));
                regiuni[i]["active"] = parseFloat(markers[i].getAttribute("active"));
                regiuni[i]["zoom"] = parseFloat(markers[i].getAttribute("zoom"));
                var info_windows = markers[i].getElementsByTagName("info_window");
                if (ie) regiuni[i]["info_window"] = info_windows[0].childNodes[0].nodeValue;
                else regiuni[i]["info_window"] = info_windows[0].childNodes[1].nodeValue;
            }
            load_google_map_regiuni(regiuni, 'img_zoom', 'img_zoom_legend', 'img_zoom_title');
        }
    }
    
    function load_google_map_regiuni(regiuni, div_map, div_legend, div_title) {
        function createMarker(point, marker_type, windowHtml) {
            var markerIcon = new GIcon();
            if (marker_type == "active") {
                markerIcon.image = "http://www.google.com/intl/en_us/mapfiles/ms/micons/green-dot.png";
                markerIcon.iconAnchor = new GPoint(16, 16);
                markerIcon.iconSize = new GSize(32, 32);
            } else {
                markerIcon.image = "http://www.google.com/intl/en_us/mapfiles/ms/micons/blue-dot.png";
                markerIcon.iconAnchor = new GPoint(16, 16);
                markerIcon.iconSize = new GSize(32, 32);
            }
            var marker = new GMarker(point, { icon:markerIcon });
            GEvent.addListener(marker, "click", function() {
                map.openInfoWindowHtml(point, windowHtml, {maxWidth:"350"});
            });
            return marker;
        }
    
        var zoom_center = 1;
        
        if (GBrowserIsCompatible()) {
            var map = new GMap2(document.getElementById(div_map));
            var markers = Array ();
            map.addControl(new GSmallMapControl());
            map.addControl(new GMapTypeControl());
            map.addMapType(G_PHYSICAL_MAP);
            for (i=0; i<regiuni.length; i++) {
                var point = new GLatLng(regiuni[i]["latitude"], regiuni[i]["longitude"]);
                if (regiuni[i]["active"]) {
                    zoom_i = regiuni[i]["zoom"];
                    // statiune selectata
                    var point_center = point;
                    zoom_center = zoom_i;
                    markers[i] = createMarker(point, "active", regiuni[i]["info_window"]);
                    regiune_center_nume = regiuni[i]["nume"];
                    regiune_center_tara_nume = regiuni[i]["tara"];
                } else {
                    markers[i] = createMarker(point, "inactive", regiuni[i]["info_window"]);
                }
            }
            map.setCenter(point_center, zoom_center);
            for (i=0; i<markers.length; i++) {
                map.addOverlay(markers[i]);
            }
            document.getElementById(div_legend).innerHTML = "<table class=\'nt\'><tr><td colspan=\'2\' class=\'subtitlu\'>Legenda</td></tr><tr><td><img src=\'imgs/google_green_dot.png\' class=\'ntW\'/>"+regiune_center_nume+"</td></tr><tr><td><img src=\'imgs/google_blue_dot.png\' class=\'ntW\'/> Alte regiuni din tara "+regiune_center_tara_nume+"</td></tr><tr><td colspan=\'2\'><b>Clic pentru a vedea informatii legate de regiune</b></td></tr></table>";
            document.getElementById(div_title).innerHTML = "<b>Harta Google "+regiune_center_nume+"</b>";

        }
    }

    function get_google_tari_and_load_map(tara) {
        div_harta = document.getElementById('img_zoom');
        div_harta.style.backgroundColor = "#ffffff";
        div_harta.innerHTML = '<img src="loadingAnimation.gif"/>';
        
        var url_script = "google_tara_from_tara.php";

        http.open("GET", url_script + "?tara_id=" + escape(tara), true);
        http.onreadystatechange = google_tari_result_and_load_map;
        http.send("");
    }

    function google_tari_result_and_load_map() {
        if (http.readyState == 4) {
            var textout = http.responseText;
            var tari = new Array();

            try { //Internet Explorer
                xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
                xmlDoc.async="false";
                xmlDoc.loadXML(textout);
            } catch(e) {
                try { //Firefox, Mozilla, Opera, etc.
                    parser=new DOMParser();
                    xmlDoc=parser.parseFromString(textout,"text/xml");
                } catch(e) {
                    alert(e.message);
                }
            }
            var markers = xmlDoc.getElementsByTagName("marker_tara");
            for (i=0; i<markers.length; i++) {
                tari[i] = new Array();
                tari[i]["id"] = parseFloat(markers[i].getAttribute("tara_id"));
                tari[i]["nume"] = markers[i].getAttribute("nume");
                tari[i]["latitude"] = parseFloat(markers[i].getAttribute("latitude"));
                tari[i]["longitude"] = parseFloat(markers[i].getAttribute("longitude"));
                tari[i]["active"] = parseFloat(markers[i].getAttribute("active"));
                tari[i]["zoom"] = parseFloat(markers[i].getAttribute("zoom"));
                var info_windows = markers[i].getElementsByTagName("info_window");
                if (ie) tari[i]["info_window"] = info_windows[0].childNodes[0].nodeValue;
                else tari[i]["info_window"] = info_windows[0].childNodes[1].nodeValue;
            }
            load_google_map_tari(tari, 'img_zoom', 'img_zoom_legend', 'img_zoom_title');
        }
    }
    
    function load_google_map_tari(tari, div_map, div_legend, div_title) {
        function createMarker(point, marker_type, windowHtml) {
            var markerIcon = new GIcon();
            if (marker_type == "active") {
                markerIcon.image = "http://www.google.com/intl/en_us/mapfiles/ms/micons/green-dot.png";
                markerIcon.iconAnchor = new GPoint(16, 16);
                markerIcon.iconSize = new GSize(32, 32);
            } else {
                markerIcon.image = "http://www.google.com/intl/en_us/mapfiles/ms/micons/blue-dot.png";
                markerIcon.iconAnchor = new GPoint(16, 16);
                markerIcon.iconSize = new GSize(32, 32);
            }
            var marker = new GMarker(point, { icon:markerIcon });
            GEvent.addListener(marker, "click", function() {
                map.openInfoWindowHtml(point, windowHtml, {maxWidth:"350"});
            });
            return marker;
        }
    
        var zoom_center = 1;
        
        if (GBrowserIsCompatible()) {
            var map = new GMap2(document.getElementById(div_map));
            var markers = Array ();
            map.addControl(new GSmallMapControl());
            map.addControl(new GMapTypeControl());
            map.addMapType(G_PHYSICAL_MAP);
            for (i=0; i<tari.length; i++) {
                var point = new GLatLng(tari[i]["latitude"], tari[i]["longitude"]);
                if (tari[i]["active"]) {
                    zoom_i = tari[i]["zoom"];
                    // statiune selectata
                    var point_center = point;
                    zoom_center = zoom_i;
                    markers[i] = createMarker(point, "active", tari[i]["info_window"]);
                    tara_nume = tari[i]["nume"];
                } else {
                    markers[i] = createMarker(point, "inactive", tari[i]["info_window"]);
                }
            }
            map.setCenter(point_center, zoom_center);
            for (i=0; i<markers.length; i++) {
                map.addOverlay(markers[i]);
            }
            document.getElementById(div_legend).innerHTML = "<table class=\'nt\'><tr><td colspan=\'2\' class=\'subtitlu\'>Legenda</td></tr><tr><td><img src=\'imgs/google_green_dot.png\' class=\'ntW\'/>"+tara_nume+"</td></tr><tr><td colspan=\'2\'><b>Clic pentru a vedea informatii legate de tari</b></td></tr></table>";
            document.getElementById(div_title).innerHTML = "<b>Harta Google "+tara_nume+"</b>";

        }
    }

	function get_google_cazari_and_load_map(cazare) {
		div_harta = document.getElementById('img_zoom');
		div_harta.style.backgroundColor = "#ffffff";
		div_harta.innerHTML = '<img src="loadingAnimation.gif"/>';

		var url_script = "google_cazari_statiune_from_cazare.php";

		http.open("GET", url_script + "?cazare_id=" + escape(cazare), true);
		http.onreadystatechange = google_cazari_result_and_load_map;
		http.send("");
	}
	
	function google_cazari_result_and_load_map() {
		if (http.readyState == 4) {
			var textout = http.responseText;
			var cazari = new Array();

			try { //Internet Explorer
				xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
				xmlDoc.async="false";
				xmlDoc.loadXML(textout);
			} catch(e) {
				try { //Firefox, Mozilla, Opera, etc.
					parser=new DOMParser();
					xmlDoc=parser.parseFromString(textout,"text/xml");
				} catch(e) {
					alert(e.message);
				}
			}
			var markers = xmlDoc.getElementsByTagName("marker_cazare");
			for (i=0; i<markers.length; i++) {
				cazari[i] = new Array();
				cazari[i]["id"] = parseFloat(markers[i].getAttribute("cazare_id"));
				cazari[i]["nume"] = markers[i].getAttribute("nume");
				cazari[i]["statiune"] = markers[i].getAttribute("statiune");
				cazari[i]["latitude"] = parseFloat(markers[i].getAttribute("latitude"));
				cazari[i]["longitude"] = parseFloat(markers[i].getAttribute("longitude"));
				cazari[i]["active"] = parseFloat(markers[i].getAttribute("active"));
				cazari[i]["zoom"] = parseFloat(markers[i].getAttribute("zoom"));
				var info_windows = markers[i].getElementsByTagName("info_window");
				if (ie) cazari[i]["info_window"] = info_windows[0].childNodes[0].nodeValue;
				else cazari[i]["info_window"] = info_windows[0].childNodes[1].nodeValue;
			}
			load_google_map_cazari(cazari, 'img_zoom', 'img_zoom_legend', 'img_zoom_title');
		}
	}
	
	function load_google_map_cazari(cazari, div_map, div_legend, div_title) {
		function createMarker(point, marker_type, windowHtml) {
			var markerIcon = new GIcon();
			if (marker_type == "active") {
				markerIcon.image = "http://www.google.com/intl/en_us/mapfiles/ms/micons/green-dot.png";
				markerIcon.iconAnchor = new GPoint(16, 16);
				markerIcon.iconSize = new GSize(32, 32);
			} else {
				markerIcon.image = "http://www.google.com/intl/en_us/mapfiles/ms/micons/blue-dot.png";
				markerIcon.iconAnchor = new GPoint(16, 16);
				markerIcon.iconSize = new GSize(32, 32);
			}
			var marker = new GMarker(point, { icon:markerIcon });
			GEvent.addListener(marker, "click", function() {
				map.openInfoWindowHtml(point, windowHtml, {maxWidth:"350"});
			});
			return marker;
		}
	
		var zoom_center = 1;
		
		if (GBrowserIsCompatible()) {
			var map = new GMap2(document.getElementById(div_map));
			var markers = Array ();
			map.addControl(new GSmallMapControl());
			map.addControl(new GMapTypeControl());
			map.addMapType(G_PHYSICAL_MAP);
			for (i=0; i<cazari.length; i++) {
				var point = new GLatLng(cazari[i]["latitude"], cazari[i]["longitude"]);
				if (cazari[i]["active"]) {
					zoom_i = cazari[i]["zoom"];
					// cazare selectata
					var point_center = point;
					zoom_center = zoom_i;
					var cazare_center_nume = cazari[i]["nume"];
					var cazare_center_statiune_nume = cazari[i]["statiune"];
					markers[i] = createMarker(point, "active", cazari[i]["info_window"]);
				} else {
					markers[i] = createMarker(point, "inactive", cazari[i]["info_window"]);
				}
			}
			map.setCenter(point_center, zoom_center);
			for (i=0; i<markers.length; i++) {
				map.addOverlay(markers[i]);
			}
			document.getElementById(div_legend).innerHTML = "<table class=\'nt\'><tr><td colspan=\'2\' class=\'subtitlu\'>Legenda</td></tr><tr><td><img src=\'imgs/google_green_dot.png\' class=\'ntW\'/>"+cazare_center_nume+"</td></tr><tr><td><img src=\'imgs/google_blue_dot.png\' class=\'ntW\'/> Alte cazari din statiunea "+cazare_center_statiune_nume+"</td></tr><tr><td colspan=\'2\'><b>Clic pentru a vedea informatii legate de cazari</b></td></tr></table>";
			document.getElementById(div_title).innerHTML = "<b>Harta Google "+cazare_center_nume+"</b>";
		}
	}
	
    function get_google_obiective_and_load_map(obiectiv) {
        div_harta = document.getElementById('img_zoom');
        div_harta.style.backgroundColor = "#ffffff";
        div_harta.innerHTML = '<img src="loadingAnimation.gif"/>';
        
        var url_script = "google_obiectiv_from_obiectiv.php";

        http.open("GET", url_script + "?obiectiv_id=" + escape(obiectiv), true);
        http.onreadystatechange = google_obiective_result_and_load_map;
        http.send("");
    }

    function google_obiective_result_and_load_map() {
        if (http.readyState == 4) {
            var textout = http.responseText;
            var obiective = new Array();

            try { //Internet Explorer
                xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
                xmlDoc.async="false";
                xmlDoc.loadXML(textout);
            } catch(e) {
                try { //Firefox, Mozilla, Opera, etc.
                    parser=new DOMParser();
                    xmlDoc=parser.parseFromString(textout,"text/xml");
                } catch(e) {
                    alert(e.message);
                }
            }
            var markers = xmlDoc.getElementsByTagName("marker_obiectiv");
            for (i=0; i<markers.length; i++) {
                obiective[i] = new Array();
                obiective[i]["id"] = parseFloat(markers[i].getAttribute("obiectiv_id"));
                obiective[i]["nume"] = markers[i].getAttribute("nume");
                obiective[i]["latitude"] = parseFloat(markers[i].getAttribute("latitude"));
                obiective[i]["longitude"] = parseFloat(markers[i].getAttribute("longitude"));
                obiective[i]["active"] = parseFloat(markers[i].getAttribute("active"));
                obiective[i]["zoom"] = parseFloat(markers[i].getAttribute("zoom"));
                var info_windows = markers[i].getElementsByTagName("info_window");
                if (ie) obiective[i]["info_window"] = info_windows[0].childNodes[0].nodeValue;
                else obiective[i]["info_window"] = info_windows[0].childNodes[1].nodeValue;
            }
            load_google_map_obiective(obiective, 'img_zoom', 'img_zoom_legend', 'img_zoom_title');
        }
    }
    
    function load_google_map_obiective(obiective, div_map, div_legend, div_title) {
        function createMarker(point, marker_type, windowHtml) {
            var markerIcon = new GIcon();
            if (marker_type == "active") {
                markerIcon.image = "http://www.google.com/intl/en_us/mapfiles/ms/micons/green-dot.png";
                markerIcon.iconAnchor = new GPoint(16, 16);
                markerIcon.iconSize = new GSize(32, 32);
            } else {
                markerIcon.image = "http://www.google.com/intl/en_us/mapfiles/ms/micons/blue-dot.png";
                markerIcon.iconAnchor = new GPoint(16, 16);
                markerIcon.iconSize = new GSize(32, 32);
            }
            var marker = new GMarker(point, { icon:markerIcon });
            GEvent.addListener(marker, "click", function() {
                map.openInfoWindowHtml(point, windowHtml, {maxWidth:"350"});
            });
            return marker;
        }
    
        var zoom_center = 1;
        
        if (GBrowserIsCompatible()) {
            var map = new GMap2(document.getElementById(div_map));
            var markers = Array ();
            map.addControl(new GSmallMapControl());
            map.addControl(new GMapTypeControl());
            map.addMapType(G_PHYSICAL_MAP);
            for (i=0; i<obiective.length; i++) {
                var point = new GLatLng(obiective[i]["latitude"], obiective[i]["longitude"]);
                if (obiective[i]["active"]) {
                    zoom_i = obiective[i]["zoom"];
                    // statiune selectata
                    var point_center = point;
                    zoom_center = zoom_i;
                    markers[i] = createMarker(point, "active", obiective[i]["info_window"]);
                    obiectiv_nume = obiective[i]["nume"];
                } else {
                    markers[i] = createMarker(point, "inactive", obiective[i]["info_window"]);
                }
            }
            map.setCenter(point_center, zoom_center);
            for (i=0; i<markers.length; i++) {
                map.addOverlay(markers[i]);
            }
            document.getElementById(div_legend).innerHTML = "<table class=\'nt\'><tr><td colspan=\'2\' class=\'subtitlu\'>Legenda</td></tr><tr><td><img src=\'imgs/google_green_dot.png\' class=\'ntW\'/>"+obiectiv_nume+"</td></tr><tr><td colspan=\'2\'><b>Clic pentru a vedea informatii legate de obiective</b></td></tr></table>";
            document.getElementById(div_title).innerHTML = "<b>Harta Google "+obiectiv_nume+"</b>";

        }
    }
	
	function get_google_partie_cazari_partii_regiune_and_load_map(partie) {
		div_harta = document.getElementById('img_zoom');
		div_harta.style.backgroundColor = "#ffffff";
		div_harta.innerHTML = '<img src="loadingAnimation.gif"/>';
		
		var url_script = "google_partii_cazari_from_partie.php";

		http.open("GET", url_script + "?partie_id=" + escape(partie), true);
		http.onreadystatechange = google_partie_cazari_partii_result_and_load_map;
		http.send("");
	}
	
	function google_partie_cazari_partii_result_and_load_map() {
		if (http.readyState == 4) {
			var textout = http.responseText;
			var partii = new Array();
			var cazari = new Array();

			try { //Internet Explorer
				xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
				xmlDoc.async="false";
				xmlDoc.loadXML(textout);
			} catch(e) {
				try { //Firefox, Mozilla, Opera, etc.
					parser=new DOMParser();
					xmlDoc=parser.parseFromString(textout,"text/xml");
				} catch(e) {
					alert(e.message);
				}
			}
			var markers_partii = xmlDoc.getElementsByTagName("marker_partie");
			for (i=0; i<markers_partii.length; i++) {
				partii[i] = new Array();
				partii[i]["id"] = parseFloat(markers_partii[i].getAttribute("partie_id"));
				partii[i]["nume"] = markers_partii[i].getAttribute("partie");
				if (partii[i]["nume"] == null) partii[i]["nume"] = "";
				partii[i]["regiune"] = markers_partii[i].getAttribute("regiune");
				if (partii[i]["regiune"] == null) partii[i]["regiune"] = "";
				partii[i]["latitude"] = parseFloat(markers_partii[i].getAttribute("latitude"));
				partii[i]["longitude"] = parseFloat(markers_partii[i].getAttribute("longitude"));
				partii[i]["active"] = parseFloat(markers_partii[i].getAttribute("active"));
				partii[i]["zoom"] = parseFloat(markers_partii[i].getAttribute("zoom"));
				var info_windows = markers_partii[i].getElementsByTagName("info_window");
				if (ie) partii[i]["info_window"] = info_windows[0].childNodes[0].nodeValue;
				else partii[i]["info_window"] = info_windows[0].childNodes[1].nodeValue;
			}
			var markers_cazari = xmlDoc.getElementsByTagName("marker_cazare");
			for (i=0; i<markers_cazari.length; i++) {
				cazari[i] = new Array();
				cazari[i]["id"] = parseFloat(markers_cazari[i].getAttribute("cazare_id"));
				cazari[i]["latitude"] = parseFloat(markers_cazari[i].getAttribute("latitude"));
				cazari[i]["longitude"] = parseFloat(markers_cazari[i].getAttribute("longitude"));
				cazari[i]["active"] = parseFloat(markers_cazari[i].getAttribute("active"));
				cazari[i]["zoom"] = parseFloat(markers_cazari[i].getAttribute("zoom"));
				var info_windows = markers_cazari[i].getElementsByTagName("info_window");
				if (ie) cazari[i]["info_window"] = info_windows[0].childNodes[0].nodeValue;
				else cazari[i]["info_window"] = info_windows[0].childNodes[1].nodeValue;
			}

			load_google_map_partii_cazari(partii, cazari, 'img_zoom', 'img_zoom_legend', 'img_zoom_title');
		}
	}
	
	function load_google_map_partii_cazari(partii, cazari, div_map, div_legend, div_title) {
		function createMarker(point, marker_type, windowHtml) {
			var markerIcon = new GIcon();
			if (marker_type == "partie_active") {
				markerIcon.image = "http://www.google.com/intl/en_us/mapfiles/ms/micons/green-dot.png";
				markerIcon.iconAnchor = new GPoint(16, 16);
				markerIcon.iconSize = new GSize(32, 32);
			} else if (marker_type == "partie_inactive") {
				markerIcon.image = "http://www.google.com/intl/en_us/mapfiles/ms/micons/blue-dot.png";
				markerIcon.iconAnchor = new GPoint(12, 12);
				markerIcon.iconSize = new GSize(24, 24);
			} else if (marker_type == "cazare") {
				markerIcon.image = "http://www.google.com/intl/en_us/mapfiles/ms/micons/yellow-dot.png";
				markerIcon.iconAnchor = new GPoint(12, 12);
				markerIcon.iconSize = new GSize(24, 24);
			}
			var marker = new GMarker(point, { icon:markerIcon });
			GEvent.addListener(marker, "click", function() {
				map.openInfoWindowHtml(point, windowHtml, {maxWidth:"350"});
			});
			return marker;
		}
	
		var zoom_center = 1;
		
		if (GBrowserIsCompatible()) {
			var map = new GMap2(document.getElementById(div_map));
			var markers_partii = Array ();
			var markers_cazari = Array ();
			map.addControl(new GSmallMapControl());
			map.addControl(new GMapTypeControl());
			map.addMapType(G_PHYSICAL_MAP);
			map.setMapType(G_PHYSICAL_MAP);
			for (i=0; i<partii.length; i++) {
				var point = new GLatLng(partii[i]["latitude"], partii[i]["longitude"]);
				if (partii[i]["active"]) {
					zoom_i = partii[i]["zoom"];
					// partie selectata
					var point_center = point;
					zoom_center = zoom_i;
					markers_partii[i] = createMarker(point, "partie_active", partii[i]["info_window"]);
					var partie_center_nume = partii[i]["nume"];
					var partie_center_regiune_nume = partii[i]["regiune"];
				} else {
					markers_partii[i] = createMarker(point, "partie_inactive", partii[i]["info_window"]);
				}
			}
			for (i=0; i<cazari.length; i++) {
				var point = new GLatLng(cazari[i]["latitude"], cazari[i]["longitude"]);
				markers_cazari[i] = createMarker(point, "cazare", cazari[i]["info_window"]);
			}
			map.setCenter(point_center, zoom_center);
			for (i=0; i<markers_partii.length; i++) {
				map.addOverlay(markers_partii[i]);
			}
			for (i=0; i<markers_cazari.length; i++) {
				map.addOverlay(markers_cazari[i]);
			}
			document.getElementById(div_legend).innerHTML = "<table class=\'nt\'><tr><td colspan=\'2\' class=\'subtitlu\'>Legenda</td></tr><tr><td><img src=\'imgs/google_green_dot.png\' class=\'ntW\'/>Partia "+partie_center_nume+"</td></tr><tr><td><img src=\'imgs/google_yellow_dot_small.png\' class=\'ntW\'/> Cazari in zona partiei "+partie_center_nume+"</td></tr><tr><td><img src=\'imgs/google_blue_dot_small.png\' class=\'ntW\'/> Alte partii din regiunea "+partie_center_regiune_nume+"</td></tr><tr><td colspan=\'2\'><b>Clic pentru a vedea informatii legate de partii sau cazari</b></td></tr></table>";
			document.getElementById(div_title).innerHTML = "<b>Harta Google Partia "+partie_center_nume+"</b>";
		}
	}


	function get_google_partii_tara_regiune_and_load_map(tara, regiune) {
		div_harta = document.getElementById('img_zoom');
		div_harta.style.backgroundColor = "#ffffff";
		div_harta.innerHTML = '<img src="loadingAnimation.gif"/>';
		
		var url_script = "google_partii_from_tara_regiune.php";

		http.open("GET", url_script + "?tara_id=" + escape(tara) + "&regiune_id=" + escape(regiune), true);
		http.onreadystatechange = google_partii_tara_regiune_result_and_load_map;
		http.send("");
	}
	
	function google_partii_tara_regiune_result_and_load_map() {
		if (http.readyState == 4) {
			var textout = http.responseText;
			var partii = new Array();

			try { //Internet Explorer
				xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
				xmlDoc.async="false";
				xmlDoc.loadXML(textout);
			} catch(e) {
				try { //Firefox, Mozilla, Opera, etc.
					parser=new DOMParser();
					xmlDoc=parser.parseFromString(textout,"text/xml");
				} catch(e) {
					alert(e.message);
				}
			}
			var markers_partii = xmlDoc.getElementsByTagName("marker_partie");
			var center_latitude = 0;
			var center_longitude = 0;
			var center_zoom = 1;
			if (markers_partii.length > 0) {
				for (i=0; i<markers_partii.length; i++) {
					partii[i] = new Array();
					partii[i]["partie_id"] = parseFloat(markers_partii[i].getAttribute("partie_id"));
					partii[i]["nume"] = markers_partii[i].getAttribute("nume");
					if (partii[i]["nume"] == null) partii[i]["nume"] = "";
					partii[i]["regiune"] = markers_partii[i].getAttribute("regiune");
					if (partii[i]["regiune"] == null) partii[i]["regiune"] = "";
					partii[i]["latitude"] = parseFloat(markers_partii[i].getAttribute("latitude"));
					center_latitude += partii[i]["latitude"];
					partii[i]["longitude"] = parseFloat(markers_partii[i].getAttribute("longitude"));
					center_longitude += partii[i]["longitude"];
					var info_windows = markers_partii[i].getElementsByTagName("info_window");
					if (ie) partii[i]["info_window"] = info_windows[0].childNodes[0].nodeValue;
					else partii[i]["info_window"] = info_windows[0].childNodes[1].nodeValue;
				}
				
				var center = xmlDoc.getElementsByTagName("center");
				center_latitude = parseFloat(center[0].getAttribute("latitude"));
				center_longitude = parseFloat(center[0].getAttribute("longitude"));
				center_zoom = parseInt(center[0].getAttribute("zoom"));
	
				load_google_map_partii(partii, center_zoom, center_latitude, center_longitude, 'img_zoom');
			} else {
				document.getElementById('img_zoom').innerHTML = '<div class="error">Ne parte rau dar nu exista nici o partie identificata pe harta!</div>';
				return;
			}
		}
	}
	
	function google_partii_tara_regiune_result_and_load_map() {
		if (http.readyState == 4) {
			var textout = http.responseText;
			var partii = new Array();
			
			try { //Internet Explorer
				xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
				xmlDoc.async="false";
				xmlDoc.loadXML(textout);
			} catch(e) {
				try { //Firefox, Mozilla, Opera, etc.
					parser=new DOMParser();
					xmlDoc=parser.parseFromString(textout,"text/xml");
				} catch(e) {
					alert(e.message);
					return;
				} 
			}
			var markers_partii = xmlDoc.getElementsByTagName("marker_partie");
			if (markers_partii.length > 0) {
				for (i=0; i<markers_partii.length; i++) {
					partii[i] = new Array();
					partii[i]["partie_id"] = parseInt(markers_partii[i].getAttribute("partie_id"));
					partii[i]["nume"] = markers_partii[i].getAttribute("nume");
					if (partii[i]["nume"] == null) partii[i]["nume"] = "";
					partii[i]["regiune"] = markers_partii[i].getAttribute("regiune");
					if (partii[i]["regiune"] == null) partii[i]["regiune"] = "";
					partii[i]["latitude"] = parseFloat(markers_partii[i].getAttribute("latitude"));
					partii[i]["longitude"] = parseFloat(markers_partii[i].getAttribute("longitude"));
				
					var info_windows = markers_partii[i].getElementsByTagName("info_window");
					if (ie) partii[i]["info_window"] = info_windows[0].childNodes[0].nodeValue;
					else partii[i]["info_window"] = info_windows[0].childNodes[1].nodeValue;
				}
				load_google_map_partii(partii, 'img_zoom');
			}
		}
	}

	
	function createMarker(point, partie, marker_type, windowHtml, div_windowHtml) {
		var markerIcon = new GIcon();
		if (marker_type == "partie_active") {
			markerIcon.image = "http://www.google.com/intl/en_us/mapfiles/ms/micons/green-dot.png";
			markerIcon.iconAnchor = new GPoint(16, 16);
			markerIcon.iconSize = new GSize(32, 32);
		} else if (marker_type == "partie_inactive") {
			markerIcon.image = "http://www.google.com/intl/en_us/mapfiles/ms/micons/blue-dot.png";
			markerIcon.iconAnchor = new GPoint(12, 12);
			markerIcon.iconSize = new GSize(24, 24);
		}
		var marker = new GMarker(point, { icon:markerIcon });
		marker.id = partie;
		GEvent.addListener(marker, "click", function() {
			document.getElementById(div_windowHtml).innerHTML = windowHtml;
			focusMarkerPartie(marker.id);
		});
		return marker;
	}

	function focusMarkerPartie(partie) {
		lostfocusMarkerPartie(this.partie_active);
		setfocusMarkerPartie(partie);
	}
	
	function setfocusMarkerPartie(partie) {
		for (i=0; i<this.partii_ids.length; i++) {
			if (this.partii_ids[i] == partie) {
				this.map.removeOverlay(this.partii_markers[i]);
				this.partii_markers[i] = createMarker(this.partii_points[i], partie, "partie_active", this.partii_info[i], "info_window");
				this.map.addOverlay(this.partii_markers[i]);
				document.getElementById("info_window").innerHTML = partii_info[i];
				this.partie_active = partie;
				partie_focus_img = document.getElementById('partie_focus_img_'+partie);
				if (partie_focus_img) partie_focus_img.src='imgs/google_green_dot.png';
			}
		}
		
	}
	
	function lostfocusMarkerPartie(partie) {
		if (partie != 0) {
			for (i=0; i<this.partii_ids.length; i++) {
				if (this.partii_ids[i] == partie) {
					this.map.removeOverlay(this.partii_markers[i]);
					this.partii_markers[i] = createMarker(this.partii_points[i], partie, "partie_inactive", this.partii_info[i], "info_window");
					this.map.addOverlay(this.partii_markers[i]);
					partie_focus_img = document.getElementById('partie_focus_img_'+partie);
					if (partie_focus_img) partie_focus_img.src='imgs/google_blue_dot_small.png';
				}
			}
		}
	}
	
	function fitMap(points) {
		var bounds = new GLatLngBounds();
		for (var i=0; i< points.length; i++) {
			bounds.extend(points[i]);
		}
		this.map.setCenter(bounds.getCenter(), this.map.getBoundsZoomLevel(bounds));
	}
		
	function load_google_map_partii(partii, div_map) {
		this.partie_active = 0;
		
		if (GBrowserIsCompatible()) {
			this.partii_markers = new Array();
			this.partii_info = new Array();
			this.partii_ids = new Array();
			this.partii_points = new Array();
			this.map = new GMap2(document.getElementById(div_map));
			this.map.addControl(new GSmallMapControl());
			this.map.addControl(new GMapTypeControl());
			this.map.addMapType(G_PHYSICAL_MAP);
			this.map.setMapType(G_PHYSICAL_MAP);
			for (i=0; i<partii.length; i++) {
				var point = new GLatLng(partii[i]["latitude"], partii[i]["longitude"]);
				this.partii_points[i] = point;
				this.partii_ids[i] = partii[i]["partie_id"];
				this.partii_info[i] = partii[i]["info_window"];
				this.partii_markers[i] = createMarker(point, partii[i]["partie_id"], "partie_inactive", partii[i]["info_window"], "info_window");
			}
			fitMap(this.partii_points);
			for (i=0; i<this.partii_markers.length; i++) {
				this.map.addOverlay(this.partii_markers[i]);
			}
		}
	}
