var map;
var directionsPanel;
var directions;

// Creates a marker at the given point with the given number label
function createMarker(point, info) {
  var marker = new GMarker(point);
  GEvent.addListener(marker, "click", function() {
    marker.openInfoWindowHtml(info);
  });
  return marker;
}
function createMarkerDir(point, info, addr) {
var icon = new GIcon();
icon.image = "maps.google.ca/mapfiles/ms/icons/blue-dot.png";
icon.shadow = "maps.google.ca/mapfiles/ms/icons/msmarker.shadow.png";
icon.iconSize = new GSize(32, 32);
icon.shadowSize = new GSize(59, 32);
icon.iconAnchor = new GPoint(16, 34);

  var marker = new GMarker(point, icon);
  GEvent.addListener(marker, "click", function() {
    load(addr);
    directionsPanel.innerHTML = "";
    directions = new GDirections(map, directionsPanel);
    directions.load(addr + " to 2021 E. Commercial Blvd. Fort Lauderdale");
  });
  return marker;
}

var geocoder = new GClientGeocoder();

function addOffice(map, lat, lng, info, addr, addrpop) {
    var point = new GLatLng(lat,lng);
    map.addOverlay(createMarker(point, info));
    if (addr == addrpop) {
       map.openInfoWindowHtml(point, info);
    }
}
function addHotel(map, lat, lng, info, addr, addrpop) {
    var point = new GLatLng(lat,lng);
    map.addOverlay(createMarkerDir(point, info, addr));
    if (addr == addrpop) {
       map.openInfoWindowHtml(point, info);
    }
}

function load(addrpop) {
  if (GBrowserIsCompatible()) {
    map = new GMap2(document.getElementById("map"));
    directionsPanel = document.getElementById("directions");
    map.addControl(new GSmallMapControl());
    map.addControl(new GMapTypeControl());
    map.setCenter(new GLatLng(26.16006,-80.112305), 11);

    if (addrpop == "") {
       var point = new GLatLng(26.189229, -80.119381);
       map.openInfoWindowHtml(point, "<b>The International Center<br/>for Dental Excellence</b><br/>2021 E. Commercial Blvd.<br/>Fort Lauderdale");
    }

    addOffice(map, 26.189229, -80.119381, "<b>The International Center<br/>for Dental Excellence</b><br/>2021 E. Commercial Blvd.<br/>Fort Lauderdale", "2021 E. Commercial Blvd. Fort Lauderdale", addrpop);

    addHotel(map, 26.181054,-80.097839, "<b>Fort Lauderdal<br/>Beach Resort Hotel &amp; Suites</b><br/>4221 N. Ocean Blvd.<br/>Fort Lauderdale", "4221 N. Ocean Blvd., Fort Lauderdale", addrpop);

    addHotel(map, 26.187781,-80.095867, "<b>Courtyard Villa</b><br/>4312 El Mar Drive<br/>Lauderdale-By-The-Sea", "4312 El Mar Drive Lauderdale-By-The-Sea", addrpop);

    addHotel(map, 26.178519,-80.098131, "<b>Ocean Sky Hotel and Resort</b><br/>4060 Galt Ocean Drive<br/>Fort Lauderdale", "4060 Galt Ocean Drive, Fort Lauderdale", addrpop);

    addHotel(map, 26.184690,-80.096192, "<b>Sea Lord Oceanfront Hotel</b><br/>4140 El Mar Drive<br/>Lauderdale by the Sea", "4140 El Mar Drive, Lauderdale by the Sea", addrpop);

    addHotel(map, 26.186194,-80.096219, "<b>Buena Vista Hotel &amp; Conference Center</b><br/>4225 El Mar Dr<br/>Fort Lauderdale", "4225 El Mar Dr, Fort Lauderdale", addrpop);

    addHotel(map, 26.122589,-80.104125, "<b>St. Regis Resort</b><br/>1 North Fort Lauderdale Beach Boulevard<br/>Fort Lauderdale", "1 North Fort Lauderdale Beach Boulevard, Fort Lauderdale", addrpop);

    addHotel(map, 26.189667,-80.114904, "<b>Courtyard by Marriott Fort Lauderdale East</b><br/>5001 North Federal Highway<br/>Fort Lauderdale", "5001 North Federal Highway, Fort Lauderdale", addrpop);

    addHotel(map, 26.129145,-80.103471, "<b>Hilton Fort Lauderdale Beach Resort</b><br/>505 N Fort Lauderdale Beach Blvd<br/>Fort Lauderdale", "505 N Fort Lauderdale Beach Blvd, Fort Lauderdale", addrpop);

  }
}
