﻿var map;
var newpoints = new Array();
var gmarkers = [];
var htmls = [];
var to_htmls = [];

function OnPageLoad() {
    if (GBrowserIsCompatible()) {

        var i = gmarkers.length;

        function createMarker(point, html, icon, header, button, label, description, link, more, type, fireBubble) {
            var marker = new GMarker(point, icon);

            // The info window version with the "to here" form open
            to_htmls[i] = '<div class="gmap-bubble">' +
           '<form action="http://maps.google.com/maps" method="get" target="_blank">' +
           '<h3><label for="saddr">' + label + '</label></h3><p>' + description + '</p><input type="text" class="txt" name="saddr" id="saddr" value="" />' +
           '<input value="' + button + '" class="btn" type="submit" />' +
           '<input type="hidden" name="daddr" value="' + point.lat() + ',' + point.lng() +
            // "(" + name + ")" +
           '"/><br /></div>';

            // The inactive version of the direction info
            if (type == "category") {
                html = '<div class="gmap-bubble">' + html + '<a href="' + link + '" class="btn"><span>' + more + '</span><\/a><a href="javascript:tohere(' + i + ')" class="btn"><span>' + header + '</span><\/a><div class="clearer"></div></div>';
            } else {
                html = '<div class="gmap-bubble special">' + html + '<a href="javascript:tohere(' + i + ')" class="btn"><span>' + header + '</span><\/a><div class="clearer"></div></div>';
            }

            GEvent.addListener(marker, "click", function() {
                marker.openInfoWindowHtml(html);
            });
            
            htmls[i] = html;
            gmarkers[i] = marker;
            return marker;
        }

        map = new GMap2(document.getElementById(controlId), { size: mapSize });
        map.setCenter(centerPoint, zoomIndex);
        if (renderControls == "True") {
            map.addControl(new GLargeMapControl());
            map.addControl(new GMapTypeControl());
        }
        for (var i = 0; i < Points.length; i++) {
            var point = new GLatLng(Points[i][0], Points[i][1]);
            var icon = Points[i][2];
            var objectName = Points[i][3];
            var popuphtml = Points[i][4];
            var link = Points[i][5];
            var header = Points[i][6];
            var button = Points[i][7];
            var label = Points[i][8];
            var description = Points[i][9];
            var link = Points[i][10];
            var more = Points[i][11];
            var type = Points[i][12];
            var bubbleInitOnLoad = Points[i][13];

            var marker = createMarker(point, popuphtml, icon, header, button, label, description, link, more, type, bubbleInitOnLoad);
            map.addOverlay(marker);

//            if (bubbleInitOnLoad == "True") {
//                xhtml = '<div class="gmap-bubble">' + popuphtml + '<a href="javascript:tohere(' + i + ')" class="btn"><span>' + header + '</span><\/a><div class="clearer"></div></div>';           
//                marker.openInfoWindowHtml(xhtml)
//            }
        }

       // map.zoomToMarkers();
    }
}


// functions that open the directions forms
function tohere(i) {
    gmarkers[i].openInfoWindowHtml(to_htmls[i]);
}


window.onload = OnPageLoad;
