var map;
function initialize(typed) {
	
      if (GBrowserIsCompatible()) {
      
      	var typer = typed;
      
        map = new GMap2(document.getElementById((typer == "main" || typer=="index" ? "map_canvas" : "personen_map_canvas")));
        var mapCenter = new GLatLng(48.20833, 16.373064)
        map.setCenter(mapCenter, 12);
        map.getPane(G_MAP_FLOAT_SHADOW_PANE).style.display = "none";
        if(typer != "index") {
        	map.setUIToDefault();
        } else {
	        var defaultUI = map.getDefaultUI();
        	//alert(defaultUI.maptypes);	
        	defaultUI.maptypes.satellite = false;
        	defaultUI.maptypes.hybrid = false;
        	defaultUI.maptypes.physical = false;
        	defaultUI.controls.scalecontrol = false;
        	defaultUI.controls.menumaptypecontrol = false;
        	defaultUI.controls.smallzoomcontrol3d = false;
        	defaultUI.controls.maptypecontrol = false;
        	defaultUI.controls.largemapcontrol3d = false;
        	defaultUI.zoom.scrollwheel = false;
        	defaultUI.zoom.doubleclick = false;
        	
        	defaultUI.controls.largemapcontrol3d = false
        	map.setUI(defaultUI);
        }

        var baseIcon = new GIcon(G_DEFAULT_ICON);
        baseIcon.iconAnchor = new GPoint(9, 34);
        baseIcon.infoWindowAnchor = new GPoint(9, 2);
		var outlistener;
		 var overlistener
        var numteaser = 0;
        function createMarker(point,title,text) {
          var letteredIcon = new GIcon(baseIcon);
          letteredIcon.image = "images/marker.png";
          letteredIcon.iconSize = new GSize(28, 29)
          letteredIcon.shadow = ""
          //letteredIcon.shadow = "images/shadow.png"
          //letteredIcon.shadowSize = new GSize(28, 29)

          markerOptions = { icon:letteredIcon };
          var marker = new GMarker(point, markerOptions);
		  var markertitle = title;
		  if(typer != "main" && typer!="index") {
		  	 var overfunction = function() {
			 	   //if(overlistener != null) GEvent.removeListener(overlistener);
				   var toppx = jQuery("#personen_map_canvas").offset().top;
				   jQuery("#mapoverlay").show();
				   jQuery("#mapoverlay").offset({top:toppx,left:300});
				   jQuery("#mapoverlay").append(jQuery("#personen_map_canvas"));
				   jQuery("#personen_map_canvas").width(690);
				   jQuery("#personen_map_canvas").height(500);
				   map.checkResize();
				   map.setCenter(mapCenter);
				   //outlistener = GEvent.addListener(map, "mouseout", outfunction);
			}
			var outfunction =  function() {
			    //GEvent.removeListener(outlistener);
				jQuery("#mapoverlay").hide();
				jQuery("#mapcontainer").append(jQuery("#personen_map_canvas"));
				jQuery("#personen_map_canvas").width(240);
				jQuery("#personen_map_canvas").height(200);
				map.checkResize();
				map.setCenter(mapCenter);
				//overlistener = GEvent.addListener(map, "mouseover", overfunction);
				
			 }
			 outlistener = GEvent.addListener(map, "mouseout", outfunction);
			 overlistener = GEvent.addListener(map, "mouseover", overfunction);
		  }  else if(typer == "index") {
				GEvent.addListener(map,"click",function() { window.location.href = "stadtplan.php"});
			}
          GEvent.addDomListener(marker, "click", function() {
	         marker.openInfoWindowHtml(markertitle+"<br><br>"+text,{maxWidth: 380});
          });
          
          return marker;
        }

        jQuery.get("orte.xml.php",function(data) {
        	
			jQuery(data).find("ort").each(function() {
				
				var iid = jQuery(this).find("id").text()
				var person_link = jQuery(this).find("person_link").text();
				var llStr = jQuery(this).find("geo").text().split(",");
			
				if(typer !="main" && typer!="index" && typer != person_link) {
					return;
				} else if(numteaser == 0 && typer != "main" && typer != "index") {
				 	 var mapCenter = new GLatLng(Number(llStr[1]),Number(llStr[0]));
       				 map.setCenter(mapCenter, 11);
				}
				var desc = "";
				
				if(iid == 319) {
					desc += '<h1 style="color:#ec008c;clear:both;"><br><br>Empfehlungen vom Forschungsfest</h1>';
				}
				
				var title = jQuery(this).find("title").text();
				
				infowintitle = "WIEN IST ANDERS. hier auch.<br><b>"+title+"</b>";
				
				var otext = jQuery(this).find("text").text();
				
				var text = "";
				
				var hasinterview = jQuery(this).find("has_interview").text();
				
				var person = jQuery(this).find("person").text();
				
				var imagelink = "";
				
				if(person != "") {
					if(typer == "index" || typer == "main") {
					   if(person_link != "") {
						   text += '<div>Tipp von: ';
						   imagelink = '<img %s src="daten/'+person_link+'/teaser_small.jpg" width=%d height=%d style="margin-right:%dpx"/>';
						   text += String.sprintf(imagelink,'align="left"',80,101,10);
						   text += "<i>"+person+"</i> ";
						   if(hasinterview == "1") {
							   text += ' <a href="'+person_link+'.php"><br>►&nbsp;Interview lesen</a>';
							 }
							text += "<br>";
					   } else {
							text += "<div>Tipp von: <i>"+person+"</i><br>";
					   }
					} else {
					  text += "<div>";
					}
					
					if(otext!= "" && iid < 330) {
						text += '<span class="map_personinfo">';
						text += "Text von: <i>Jeanette Müller</i></span>";
					}
					
					text += "<br><br>";
					
					text += otext
					
					
					text +="</div>";
				}
				
				
				
				var splitter = '<p style="height:1px;background:#8B979E"></p>';
				
				text += '<div class="ortinfo" style="">';
				
				var adress = jQuery(this).find("adresse").text();
				var link = jQuery(this).find("link");
				var links = "";
				var linksdesc = "";
				if(link.length > 0) {
					for(var i = 0;i<link.length;i++) {
						var linkname = "";
						var linktext = jQuery(link[i]).text()
						if(linktext != "" && linktext.length > 44) {
							linkname = linktext.split("/anlagen").join("/<br>anlagen");
							linkname = linkname.split("wiki/").join("wiki/<br>");
						} else {
							linkname = linktext;
						}
						links += '<a href="'+linktext+'" target="_blank">'+linktext+'</a><br>';
						if(i == 0) {
							linksdesc += '<a href="'+linktext+'" target="_blank">'+linkname+'</a><br>';
						}
					}
				}
				
				if(adress != "" || links != "") {
					text += splitter;
				}
				if(adress != "") {
					text += adress+"<br>";
				}
				if(links != "") {
					text += links;
				}
				
				text +="</div>";
				
				
				
				if(typer == "main" || typer=="index") {
					desc += '<div class="smallteaser" style="min-height:40px !important;height:40px !important;overflow:hidden" id="teaser'+numteaser+'">';
					desc += '<div class="smallteaserimage" style="width:40px;height:30px">'+String.sprintf(imagelink,"",34,43,0)+'</div>';
					desc += '<div class="smallteasercontent" style="margin-top:0px !important;">';
				} else {
					desc += '<div class="smallteaser" style="width:220px;min-height:60px !important;" id="teaser'+numteaser+'">';
					desc += '<div class="smallteasercontent" style="margin-top:0px !important;">';
				}
				desc += "<b>"+title+"</b><br>";
				
				if(adress != "") {
					desc += adress.substr(0,36)+(adress.length > 36 ? "..." : "")+"<br>";
				}
				if(linksdesc != "") {
					//desc += linksdesc;
				}
				
				desc += "</div></div>";
				
				
				
				var latlng = new GLatLng(Number(llStr[1]),Number(llStr[0]));
				var marker = createMarker(latlng,infowintitle,text)
				map.addOverlay(marker);
				
				if(typer == "main") {
				   jQuery("#map_desc").append(desc);
				   
				   jQuery("#teaser"+numteaser).bind("click",function() { 
				   			jQuery('html, body').animate({scrollTop:200}, 'slow');
				   			GEvent.trigger(marker,"click"); marker.setImage("images/marker_active.png");
				   })
				   jQuery("#teaser"+numteaser).bind("mouseover",function() {  
				   					marker.setImage("images/marker_active.png") })
				   jQuery("#teaser"+numteaser).bind("mouseout",function() {  marker.setImage("images/marker.png") })
				} else if(typer !="index" && typer!="main") {
				
				   jQuery("#personen_map_desc").append(desc);
				   
				   jQuery("#teaser"+numteaser).bind("click",function() { 
				   		
						    GEvent.trigger(map,"mouseover");
				   			GEvent.trigger(marker,"click");marker.setImage("images/marker_active.png")  })
				   jQuery("#teaser"+numteaser).bind("mouseover",function() {  marker.setImage("images/marker_active.png") })
				   jQuery("#teaser"+numteaser).bind("mouseout",function() {  marker.setImage("images/marker.png") })
				}
				
				GEvent.addDomListener(marker, "mouseover", function() {
				  marker.setImage("images/marker_active.png");
				  //jQuery("#teaser"+numteaser).mouseEnter();
				});
				GEvent.addDomListener(marker, "mouseout", function() {
				  marker.setImage("images/marker.png");
				  //jQuery("#teaser"+numteaser).mouseLeave();
				});
				
				numteaser++;
				
			});				
        });
      }
    }
