function initialize() {
  var myOptions = {
    zoom: 9,
    center: new google.maps.LatLng(50.922560, -1.433533),
    mapTypeId: google.maps.MapTypeId.ROADMAP
  }
  var map = new google.maps.Map(document.getElementById("map_canvas"),
                                myOptions);

  setMarkers(map, locations);
}

/**
 * Data for the markers consisting of a name, a LatLng and a zIndex for
 * the order in which these markers should display on top of each
 * other.
 */
var andover = '<div style="font-family:arial;font-size:76.92%;float:left;width:102px">'+
'10 Bridge Street<br/>'+
'Andover<br/>'+
'Hampshire<br/>'+
'SP10 1BH<br/>'+
'Tel: 01264 352339'+
'</div>';
var boscombe = '<div style="font-family:arial;font-size:76.92%;float:left;width:102px">'+
'12, The Sovereign Centre<br/>'+
'600, Christchurch Road<br/>'+
'Boscombe<br/>'+
'Bournemouth<br/>'+
'Dorset<br/>'+
'BH1 4SX<br/>'+
'Tel: 01202 300490'+
'</div>';
var cosham = '<div style="font-family:arial;font-size:76.92%;float:left;width:102px">'+
'48e High Street<br/>'+
'Cosham<br/>'+
'Portsmouth<br/>'+
'Hampshire<br/>'+
'PO6 3AG<br/>'+
'Tel: 02392 372211'+
'</div>';
var eastleigh = '<div style="font-family:arial;font-size:76.92%;float:left;width:102px">'+
'74 Market Street<br/>'+
'Eastleigh<br/>'+
'Hampshire<br/>'+
'SO50 5RD<br/>'+
'Tel: 02380 618882'+
'</div>';
var fareham = '<div style="font-family:arial;font-size:76.92%;float:left;width:102px">'+
'119 West Street<br/>'+
'Fareham<br/>'+
'Hampshire<br/>'+
'PO16 0DY<br/>'+
'Tel: 01329 282022'+
'</div>';
var shirley = '<div style="font-family:arial;font-size:76.92%;float:left;width:102px">'+
'65 Shirley High Street<br/>'+
'Shirley<br/>'+
'Southampton<br/>'+
'Hampshire<br/>'+
'SO15 3NP<br/>'+
'Tel: 023 8078 3234'+
'</div>';
var winchester = '<div style="font-family:arial;font-size:76.92%;float:left;width:102px">'+
'8 St George\'s Street<br/>'+
'Winchester<br/>'+
'SO23 8BG<br/>'+
'Tel: 01962 868844'+
'</div>';
var bitterne = '<div style="font-family:arial;font-size:76.92%;float:left;width:102px">'+
'491-493 Bitterne Road East<br/>'+
'Bitterne<br/>'+
'Southampton<br/>'+
'SO18 5EQ<br/>'+
'Tel: 023 80 444157'+
'</div>';
var winnall = '<div style="font-family:arial;font-size:76.92%;float:left;width:102px">'+
'Unit 3<br/>'+
'Sun Valley Business Park<br/>'+
'Winnall Close<br/>'+
'Winchester<br/>'+
'SO23 0LB<br/>'+
'Tel: 01962 870810';
var suttonscotney = '<div style="font-family:arial;font-size:76.92%;float:left;width:102px">'+
'Naomi House Children\'s Hospice<br/>'+
'Stockbridge Road<br/>'+
'Sutton Scotney<br/>'+
'Hampshire<br/>'+
'SO21 3JE<br/>'+
'Tel (Office): 01962 760060<br/>'+
'Tel (Fundraising): 01962 843513';

var locations = [
  ['Andover', 51.206443, -1.480213, 1,andover],
  ['Boscombe', 50.72734865310021, -1.8395662307739258, 1,boscombe],
  ['Cosham', 50.844322, -1.067375, 1,cosham],
  ['Eastleigh', 50.967964, -1.351826, 1,eastleigh],
  ['Fareham', 50.846096191070146, -1.1308622360229492, 1,fareham],
  ['Shirley', 50.922560, -1.433533, 1,shirley],
  ['Winchester', 51.063310, -1.315808, 1,winchester],
  ['Bitterne', 50.914865020358896, -1.352241039276123, 1,bitterne],
  ['Winnall', 51.06768175863233, -1.2962901592254639, 1,winnall],
  ['Sutton Scotney', 51.15252636944706, -1.3430356979370117, 1,suttonscotney]
];
var markers = [];
var infowindows = [];

function setMarkers(map, locations) {
  var image = new google.maps.MarkerImage('/images/nhgm.png',
      new google.maps.Size(42, 42),
      new google.maps.Point(0,0),
      new google.maps.Point(24, 37));
      
   var shadow = new google.maps.MarkerImage('',
      new google.maps.Size(42, 42),
      new google.maps.Point(0,0),
      new google.maps.Point(24, 37));

  var shape = {
      coord: [1, 1, 1, 42,42,42,42 , 1],
      type: 'poly'
  };

  for (var i = 0; i < locations.length; i++) {
    var loc = locations[i];
    var myLatLng = new google.maps.LatLng(loc[1], loc[2]);
    var marker = new google.maps.Marker({
        position: myLatLng,
        map: map,
        shadow: shadow,
        icon: image,
        shape: shape,
        title: loc[0],
        zIndex: loc[3]
    });
    markers[i] = marker;
    infowindows[i]= new google.maps.InfoWindow({
       content: loc[4]
    });
    google.maps.event.addListener(marker, 'click', (function(marker,map,i) { return function () {
        infowindows[i].open(map,markers[i]);
    }})(marker,map,i));

//    infowindows[i].open(map,markers[i]);
  }
}

$(function(){
    $(window).unload( function () { GUnload(); } );
    $(window).load(function(){
      initialize(); 
    });
})