// JavaScript Document
//<![CDATA[

// arrays to hold copies of the markers and html used by the side_bar
// because the function closure trick doesnt work there
var branchesMap;
var gmarkers = [];
var i = 0;
var lastlinkid;

// This function picks up the click and opens the corresponding info window
      function myclick(i) {
        GEvent.trigger(gmarkers[i], "click");
      }

function load() {
    
  if (GBrowserIsCompatible()) { 

      // this variable will collect the html which will eventually be placed in the side_bar
      var side_bar_html = '<ul><li><strong>Provincial Mods</strong></li>';
      var i = 0;

     // A function to create the marker and set up the event window
      function createMarker(point,name,html) {
        var marker = new GMarker(point);
        var linkid = "link"+i;
        GEvent.addListener(marker, "click", function() {
          marker.openInfoWindowHtml(html);
          document.getElementById(linkid).style.background="#6FAFDF";
          lastlinkid=linkid;
        });
        // save the info we need to use later for the side_bar
        gmarkers[i] = marker;
        // add a line to the side_bar html
        side_bar_html += '<li id="'+linkid+'"><a href="javascript:myclick(' + i + ')">' + name + '</a></li>';
        i++;
        return marker;
      }

      		branchesMap = new GMap2(document.getElementById("map"));
      		branchesMap.addControl(new GLargeMapControl());
      		branchesMap.addControl(new GMapTypeControl());
			branchesMap.addControl(new GOverviewMapControl(new GSize(100, 100)));
      		branchesMap.setCenter(new GLatLng(56.412281, -3.724365), 6); //13 = map scale, zoom from 1 - 17

      		// Set up Scotland map markers with info windows 
     		
		var point = new GLatLng(56.71667, -6);
      		var marker = createMarker(point, 'Ardnamurchan', '<div class="caption"><p><strong>Ardnamurchan</strong></p><a href="http://www.acgmod.org/localmods/detail/ardnamurchan">Ardnamurchan Mod Details</a></div>')
      		branchesMap.addOverlay(marker);
                
		var point = new GLatLng(57.055116, -7.587433);
      		var marker = createMarker(point, 'Barra &amp; Vatersay', '<div class="caption"><p><strong>Barra &amp; Vatersay</strong></p><a href="http://www.acgmod.org/localmods/detail/barra">Barra &amp; Vatersay Mod Details</a></div>')
      		branchesMap.addOverlay(marker);
                
		var point = new GLatLng(56.0391, -5.43253);
      		var marker = createMarker(point, 'Dalriada', '<div class="caption"><p><strong>Dalriada</strong></p><a href="http://www.acgmod.org/localmods/detail/dalriada">Dalriada Mod Details</a></div>')
      		branchesMap.addOverlay(marker);
                
		var point = new GLatLng(55.76538, -4.17798);
      		var marker = createMarker(point, 'East Kilbride', '<div class="caption"><p><strong>East Kilbride</strong></p><a href="http://www.acgmod.org/localmods/detail/east-kilbride">East Kilbride Mod Details</a></div>')
      		branchesMap.addOverlay(marker);
                
		var point = new GLatLng(57.83333, -4.6);
      		var marker = createMarker(point, 'Easter Ross', '<div class="caption"><p><strong>Easter Ross</strong></p><a href="http://www.acgmod.org/localmods/detail/easter-ross">Easter Ross Mod Details</a></div>')
      		branchesMap.addOverlay(marker);
                
		var point = new GLatLng(55.96568, -3.19444);
      		var marker = createMarker(point, 'Edinburgh', '<div class="caption"><p><strong>Edinburgh</strong></p><a href="http://www.acgmod.org/localmods/detail/edinburgh">Edinburgh Mod Details</a></div>')
      		branchesMap.addOverlay(marker);
                
		var point = new GLatLng(55.86555, -4.25728);
      		var marker = createMarker(point, 'Glasgow', '<div class="caption"><p><strong>Glasgow</strong></p><a href="http://www.acgmod.org/localmods/detail/glasgow">Glasgow Mod Details</a></div>')
      		branchesMap.addOverlay(marker);
                
		var point = new GLatLng(57.86742, -6.89142);
      		var marker = createMarker(point, 'Harris', '<div class="caption"><p><strong>Harris</strong></p><a href="http://www.acgmod.org/localmods/detail/harris">Harris Mod Details</a></div>')
      		branchesMap.addOverlay(marker);
                
		var point = new GLatLng(57.47677, -4.23185);
      		var marker = createMarker(point, 'Inverness', '<div class="caption"><p><strong>Inverness</strong></p><a href="http://www.acgmod.org/localmods/detail/inverness">Inverness Mod Details</a></div>')
      		branchesMap.addOverlay(marker);
                
		var point = new GLatLng(55.73933, -6.2546);
      		var marker = createMarker(point, 'Islay', '<div class="caption"><p><strong>Islay</strong></p><a href="http://www.acgmod.org/localmods/detail/islay">Islay Mod Details</a></div>')
      		branchesMap.addOverlay(marker);
                
		var point = new GLatLng(58.33333, -6.58333);
      		var marker = createMarker(point, 'Lewis', '<div class="caption"><p><strong>Lewis</strong></p><a href="http://www.acgmod.org/localmods/detail/lewis">Lewis Mod Details</a></div>')
      		branchesMap.addOverlay(marker);
                
		var point = new GLatLng(56.95, -5.05);
      		var marker = createMarker(point, 'Lochaber', '<div class="caption"><p><strong>Lochaber</strong></p><a href="http://www.acgmod.org/localmods/detail/lochaber">Lochaber Mod Details</a></div>')
      		branchesMap.addOverlay(marker);
                
		var point = new GLatLng(56.41667, -5.9);
      		var marker = createMarker(point, 'Mull', '<div class="caption"><p><strong>Mull</strong></p><a href="http://www.acgmod.org/localmods/detail/mull">Mull Mod Details</a></div>')
      		branchesMap.addOverlay(marker);
                
		var point = new GLatLng(56.41041, -5.46973);
      		var marker = createMarker(point, 'Oban', '<div class="caption"><p><strong>Oban</strong></p><a href="http://www.acgmod.org/localmods/detail/oban">Oban Mod Details</a></div>')
      		branchesMap.addOverlay(marker);
                
		var point = new GLatLng(56.39515, -3.43446);
      		var marker = createMarker(point, 'Perth / Angus', '<div class="caption"><p><strong>Perth / Angus</strong></p><a href="http://www.acgmod.org/localmods/detail/perth-angus">Perth / Angus Mod Details</a></div>')
      		branchesMap.addOverlay(marker);
                
		var point = new GLatLng(57.3, -6.25);
      		var marker = createMarker(point, 'Skye', '<div class="caption"><p><strong>Skye</strong></p><a href="http://www.acgmod.org/localmods/detail/skye">Skye Mod Details</a></div>')
      		branchesMap.addOverlay(marker);
                
		var point = new GLatLng(56.11916, -3.93658);
      		var marker = createMarker(point, 'Stirling', '<div class="caption"><p><strong>Stirling</strong></p><a href="http://www.acgmod.org/localmods/detail/stirling">Stirling Mod Details</a></div>')
      		branchesMap.addOverlay(marker);
                
		var point = new GLatLng(58.25, -4.5);
      		var marker = createMarker(point, 'Sutherland &amp; Caithness', '<div class="caption"><p><strong>Sutherland &amp; Caithness</strong></p><a href="http://www.acgmod.org/localmods/detail/sutherland-caithness">Sutherland &amp; Caithness Mod Details</a></div>')
      		branchesMap.addOverlay(marker);
                
		var point = new GLatLng(57.28433, -5.71552);
      		var marker = createMarker(point, 'SW Ross', '<div class="caption"><p><strong>SW Ross</strong></p><a href="http://www.acgmod.org/localmods/detail/sw-ross">SW Ross Mod Details</a></div>')
      		branchesMap.addOverlay(marker);
                
		var point = new GLatLng(57.6, -7.3);
      		var marker = createMarker(point, 'Uist', '<div class="caption"><p><strong>Uist</strong></p><a href="http://www.acgmod.org/localmods/detail/uist">Uist Mod Details</a></div>')
      		branchesMap.addOverlay(marker);
                
		var point = new GLatLng(57.68333, -5);
      		var marker = createMarker(point, 'Wester Ross', '<div class="caption"><p><strong>Wester Ross</strong></p><a href="http://www.acgmod.org/localmods/detail/wester-ross">Wester Ross Mod Details</a></div>')
      		branchesMap.addOverlay(marker);
                
      		
               GEvent.addListener(branchesMap,"infowindowclose", function() {document.getElementById(lastlinkid).style.background="transparent";});
                    
                // put the assembled side_bar_html contents into the side_bar div
                side_bar_html += '</ul>';
                document.getElementById("side_bar").innerHTML = side_bar_html;
        }
    	// display a warning if the browser was not compatible
    	else {
      		alert("Sorry, the Google Maps API is not compatible with this browser");
    	}
}
    //]]>
