﻿var gmarkers = [];
var htmls = [];
var to_htmls = [];
var from_htmls = [];
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);

    // The info window version with the "to here" form open
    to_htmls[i] = html + '<br>Directions: <b>To here</b> - <a href="javascript:fromhere(' + i + ')">From here</a>' +
           '<br>Start address:<form action="http://maps.google.com/maps" method="get" target="_blank">' +
           '<input type="text" SIZE=40 MAXLENGTH=48 name="saddr" id="saddr" value="" /><br>' +
           '<INPUT value="Get Directions" TYPE="SUBMIT">' +
           '<input type="hidden" name="daddr" value="' + point.lat() + ',' + point.lng() +
    // "(" + name + ")" +
           '"/>';
    // The info window version with the "to here" form open
    from_htmls[i] = html + '<br>Directions: <a href="javascript:tohere(' + i + ')">To here</a> - <b>From here</b>' +
           '<br>End address:<form action="http://maps.google.com/maps" method="get"" target="_blank">' +
           '<input type="text" SIZE=40 MAXLENGTH=48 name="daddr" id="daddr" value="" /><br>' +
           '<INPUT value="Get Directions" TYPE="SUBMIT">' +
           '<input type="hidden" name="saddr" value="' + point.lat() + ',' + point.lng() +
    // "(" + name + ")" +
           '"/>';
    // The inactive version of the direction info
    html = html + '<br>Directions: <a href="javascript:tohere(' + i + ')">To here</a> - <a href="javascript:fromhere(' + i + ')">From here</a>';

    GEvent.addListener(marker, "click", function() {
        marker.openInfoWindowHtml(html);
    });
    gmarkers[i] = marker;
    htmls[i] = html;
    i++;
    return marker;
}

// functions that open the directions forms
function tohere(i) {
    gmarkers[i].openInfoWindowHtml(to_htmls[i]);
}

function fromhere(i) {
    gmarkers[i].openInfoWindowHtml(from_htmls[i]);
}


// Display the map, with some controls and set the initial location
function load() {
    if (GBrowserIsCompatible()) {

        var map = new GMap2(document.getElementById("map"));
        map.addControl(new GLargeMapControl());
        map.addControl(new GMapTypeControl());
        
        var pointCenter = new GLatLng(53.77167073766478, -1.8423771858215332);        
        map.setCenter(pointCenter, 15);

        // Set up markers with info windows
        var pointHome = new GLatLng(53.769146234207646, -1.842007040977478);
        var marker = createMarker(pointHome, 'JTBarton', 'JTBarton.info<br>Affordable web site design<br>');
        map.addOverlay(marker);
        map.openInfoWindowHtml(pointHome, htmls[0]);
    }
}

