var sidebarId      = "twGmapSidebar"
var sidebarHtml    = "";
var sidebarMarkers = [];
var sidebarCount   = 0;
var sidebarZeichen = String.fromCharCode("A".charCodeAt(0) - 1);
var sidebarLastLinkid;

function load() {
  if (GBrowserIsCompatible()) {
    var map = new GMap2(document.getElementById("twGmap"));
    map.setCenter(new GLatLng(52.499270225140556, 13.348965346813202), 16, G_HYBRID_MAP);
    map.addControl(new GSmallMapControl());
    
    GEvent.addListener(map,"infowindowclose", function() {
        document.getElementById(sidebarLastLinkid).style.background="#660000";
    });        

    var icon = new GIcon();
    icon.image = "http://www.google.com/mapfiles/marker.png";
    icon.shadow = "http://www.google.com/mapfiles/shadow50.png";
    icon.iconSize = new GSize(20, 34);
    icon.shadowSize = new GSize(37, 34);

    var zusmarkerT = machTwMarkerT();
    map.addOverlay(zusmarkerT);        
    var zusmarker1 = machTwMarker01();
    map.addOverlay(zusmarker1);
    var zusmarker2 = machTwMarker02();
    map.addOverlay(zusmarker2);
    var zusmarker3 = machTwMarker03();
    map.addOverlay(zusmarker3);      

    if (!document.getElementById(sidebarId)) {
      alert("Fehler: die Sidebar mit der id "+ sidebarId+ " konnte nicht auf dieser Webseite gefunden werden!");
      return false;
    } else {
      document.getElementById(sidebarId).innerHTML = sidebarHtml;
    }
  }
}

function createMarker(point,html) {
var marker = new GMarker(point);
GEvent.addListener(marker, "click", function() {
marker.openInfoWindowHtml(html);
});
return marker;
}

function machTwMarkerT() {
  var point = new GLatLng(52.499270225140556, 13.348965346813202);
  var marker = new GMarker(point);
  var html   = '<span style="font-family: Tahoma, Arial, sans-serif;font-size:12px;color:#000;"><strong>Tabasco-Bar</strong><br />Fuggerstra&szlig;e 3<br />10777 Berlin<br /><br />&Ouml;ffnungszeiten:<br /><span style="font-style:italic;">Mo-Do 18:00 - 06:00 Uhr<br />Fr-So durchgehend<br />Feiertags durchgehend</span></span>';
  var linkid = "link" + sidebarCount;
 
  GEvent.addListener(marker, "click", function() {
    marker.openInfoWindowHtml(html);
    document.getElementById(linkid).style.background="#990000";
    sidebarLastLinkid=linkid;
  });
 
  machZeileInTwGmapSidebar("Tabasco-Bar", marker, linkid);           
 
  return marker;
}

function machTwMarker01() {
  var point = new GLatLng(52.50104509997725, 13.34666132926941);
  var icon = machTwIconBuchstabeFortlaufend();
  var marker = new GMarker(point, {icon:icon});
  var html   = '<span style="font-family: Tahoma, Arial, sans-serif;font-size:12px;color:#000;"><strong>An der Urania</strong><br />Buslinien:<br />M19, M29, M46, 106, 187</span>';
  var linkid = "link" + sidebarCount;
 
  GEvent.addListener(marker, "click", function() {
    marker.openInfoWindowHtml(html);
    document.getElementById(linkid).style.background="#990000";
    sidebarLastLinkid=linkid;
  });
 
  machZeileInTwGmapSidebar("An der Urania", marker, linkid);           
 
  return marker;
}

function machTwMarker02() {
  var point = new GLatLng(52.49970619459544, 13.353109359741211);
  var icon = machTwIconBuchstabeFortlaufend();
  var marker = new GMarker(point, {icon:icon});
  var html   = '<span style="font-family: Tahoma, Arial, sans-serif;font-size:12px;color:#000;"><strong>Nollendorfplatz</strong><br />U-Bahnlinien:<br />U1, U2, U3, U4<br />Buslinien:<br />M19, 106, 187</span>';
  var linkid = "link" + sidebarCount;
 
  GEvent.addListener(marker, "click", function() {
    marker.openInfoWindowHtml(html);
    document.getElementById(linkid).style.background="#990000";
    sidebarLastLinkid=linkid;
  });
 
  machZeileInTwGmapSidebar("Nollendorfplatz", marker, linkid);           
 
  return marker;
}

function machTwMarker03() {
  var point = new GLatLng(52.49722421335765, 13.346049785614014);
  var icon = machTwIconBuchstabeFortlaufend();
  var marker = new GMarker(point, {icon:icon});
  var html   = '<span style="font-family: Tahoma, Arial, sans-serif;font-size:12px;color:#000;"><strong>Motzstra&szlig;e</strong><br />Buslinien:<br />M46</span>';
  var linkid = "link" + sidebarCount;
 
  GEvent.addListener(marker, "click", function() {
    marker.openInfoWindowHtml(html);
    document.getElementById(linkid).style.background="#990000";
    sidebarLastLinkid=linkid;
  });
 
  machZeileInTwGmapSidebar("Motzstra&szlig;e", marker, linkid);           
 
  return marker;
}        

function machTwIconBuchstabeFortlaufend() {
  sidebarZeichen     = String.fromCharCode(sidebarZeichen.charCodeAt(0) + 1);
  var icon           = new GIcon(G_DEFAULT_ICON, "http://www.google.com/mapfiles/marker" + sidebarZeichen + ".png");
  icon.printImage    = "http://maps.google.com/mapfiles/marker"+sidebarZeichen+"ie.gif"
  icon.mozPrintImage = "http://maps.google.com/mapfiles/marker"+sidebarZeichen+"ff.gif"
 
  return icon;
}    

function machZeileInTwGmapSidebar(text, marker, linkid) {
  sidebarMarkers[sidebarCount] = marker;
  
  if(sidebarZeichen == '@'){
      sidebarHtml += '<div id="' + linkid + '" style="margin-bottom:20px;"><span style="cursor:pointer;font-weight:bold;" onclick="twGmapSidebarIsClicked(' + sidebarCount + ')">' + text + '</span></div>';
  }else{
      sidebarHtml += '<div id="' + linkid + '"><span class="sidebarZeichen">' + sidebarZeichen + '</span> - <span style="cursor:pointer;" onclick="twGmapSidebarIsClicked(' + sidebarCount + ')">' + text + '</span></div>';      
  }
  sidebarCount ++;
}

function twGmapSidebarIsClicked(i) {
  GEvent.trigger(sidebarMarkers[i], "click");
}
