/*******************************************************************************

	MAIN CONTROL SCRIPT: xml_g_maps.js

	Locator PHP LOCATOR

	

	-----------------------------------------------------------------------

	product			: Locator version: 2.0.0

	released		: May 1, 2008

	copyright		: Copyright 2001-2008 SoBeGraphics.com

	email			: info@sobegraphics.com

	website			: http://www.sobegraphics.com

	-----------------------------------------------------------------------



*******************************************************************************/



var icon_path = 'templates/js_css/markers/';

var custom_icon=[];	

var gmarkers=[];						 

var reZoom;

var reCenter;

var backbutton;

var xml;

var map;

var bounds = new GBounds(Number.MAX_VALUE, Number.MAX_VALUE, -Number.MAX_VALUE, -Number.MAX_VALUE); 

var label;



function plot_locations() {

	map = new GMap2(document.getElementById("map")); 

	map.addControl(new GLargeMapControl());

	map.addControl(new GMapTypeControl());



	if (location_list.length > 0) processMarkers();

	else init_view(map_lat,map_lng, map_zoom); 

}



function processMarkers() {

	start = 0;



	init_view(location_list[0][1],location_list[0][0], 16)

	lng = location_list[0][0];

	lat = location_list[0][1];

	marker_style = location_list[0][3];

	color = location_list[0][4];



	add_point_of_entry(lng,lat,color);

	start++;

	

	for (var i=start; i < location_list.length; i++) {

		lng = location_list[i][0];

		lat = location_list[i][1];

		title = location_list[i][2];

		marker_id = location_list[i][3];

		year_built = location_list[i][4];

		addCustomMarker(lng,lat,title,marker_id,year_built);

		}

	map.centerAndZoomOnBounds(bounds);

	reZoom = map.getZoom();

	reCenter = map.getCenter();

	backbutton = new TextualControl();



} 

function init_view(lat, lng, zoom) {

		map.setCenter(new GLatLng(lat,lng), zoom);

}



function add_point_of_entry(lng, lat, origin) {

	arrow_point = new GPoint(lng, lat);

  	bounds.extend(arrow_point);

	arrow_icon = new GIcon();



	if (origin.search("none") != -1) { 	

      origin = "point_of_origin_transparent.png" 

  }

	arrow_icon.image = graphic_path + "templates/js_css/markers/" + origin;

	arrow_icon.iconSize = new GSize(26, 26);

	arrow_icon.iconAnchor = new GPoint(13, 13);

  	arrow_marker = new GMarker(arrow_point, arrow_icon);

  	map.addOverlay(arrow_marker);

}



function addCustomMarker(lng, lat, title, iconStr, yb) {	

   var point = new GPoint(lng, lat);

   bounds.extend(point);

   var icon = custom_icon[iconStr];

   var marker = new GMarker(point, icon);

	var eanchor = new GLatLng(lat,lng);



   gmarkers.push(marker);

   marker.type = iconStr; 

   GEvent.addListener(marker, "click", function () {//	 alert(icon.image);

	

      var text = "<div align=center>" + title + "</div>";

			// Locator modification 10/01/07 

			// Add custom control to original zoom

//			map.addControl(backbutton);

//      if(map.getZoom() == click_zoom ) marker.openInfoWindowHtml(text);

      marker.openInfoWindowHtml(text);

// 			map.setCenter(marker.getPoint(), click_zoom); 

   });

	GEvent.addListener(marker, "mouseover", function() { 

		label = new ELabel(eanchor, 

						   yb, 

						   "elabel_1", 

						   new GSize(-100,25));

	   	map.addOverlay(label);

	});

	GEvent.addListener(marker, "mouseout", function() {  

    	map.removeOverlay(label);

	});	   

   map.addOverlay(marker);

}



GMap2.prototype.centerAndZoomOnBounds = function(bounds) {



   var span = new GSize(bounds.maxX - bounds.minX, bounds.maxY - bounds.minY);

	 var center = new GLatLng(bounds.minY + span.height / 2., bounds.minX + span.width / 2.);

		sw = new GLatLng(bounds.maxY, bounds.minX);

		ne = new GLatLng(bounds.minY, bounds.maxX);

		b = new GLatLngBounds(sw, ne);

		newZoom = map.getBoundsZoomLevel(b);



   if (map.getZoom() != newZoom) {

       map.setCenter(center, newZoom);

   } else {

			map.setCenter(center);

   }



}





function load() {

	plot_locations();

}



function initMapView(){

    var map_view = xml.documentElement.getElementsByTagName('map_view');

    if(map_view.length > 0) {

	    map_zoom = parseInt(map_view[0].getAttribute('zoom'));

		map_lat = parseFloat(map_view[0].getAttribute('lat'));

		map_lng = parseFloat(map_view[0].getAttribute('lng'));

	}

}



function setUserOrigin(origin){

		var origin_icon = custom_icon[origin[0].getAttribute("marker")];

		var coordinate = new GLatLng(parseFloat(origin[0].getAttribute('lat')),

                           parseFloat(origin[0].getAttribute('lng')));

		

		var o_marker = new GMarker(coordinate, origin_icon);



		var info = new Array();

		info['name'] = origin[0].getAttribute('name');

		info['address_1'] = info['city'] = info['postal_code'] = '';

		GEvent.addListener(o_marker, "click", function() {  

			o_marker.openInfoWindowHtml(infoWindowStyle(info)); 

		});

		

		map.addOverlay(o_marker);

}



function setMarkers(record) {

	var bounds = new GLatLngBounds();

	for (var i = 0; i < record.length; i++) {

		var loc = new Array();

       	loc['name'] = record[i].getAttribute('name');

       	loc['address_1'] = record[i].getAttribute('address_1');

       	loc['city'] = record[i].getAttribute('city');

       	loc['state'] = record[i].getAttribute('state');

       	loc['postal_code'] = record[i].getAttribute('postal_code');

       	loc['distance'] = record[i].getAttribute('distance');

       	loc['icon'] = record[i].getAttribute('icon');

       	loc['point'] = new GLatLng(parseFloat(record[i].getAttribute('lat')),

                                 parseFloat(record[i].getAttribute('lng')));

        var marker = createMarker(loc);



        map.addOverlay(marker);

        bounds.extend(loc['point']);

	}

    map.setCenter(bounds.getCenter(), map.getBoundsZoomLevel(bounds));

}



function createMarker(location) {

	var location_icon = custom_icon[location['icon']];

	var marker = new GMarker(location['point'], location_icon);



    GEvent.addListener(marker, 'click', function() {

        marker.openInfoWindowHtml(infoWindowStyle(location));

    });

    return marker;

}



function infoWindowStyle(info) {

	var html = '<table width=250 border=0 cellspacing=2 cellpadding=2>';

		html += '<tr class="info_1"><td>' + info['name'] + '</td></tr>';

		html += '<tr class="info_2"><td>' + info['address_1'] + '</td></tr>';

		html += '<tr class="info_2"><td>'  + info['city'];

		html += ' '  + info['postal_code'] +  '</td>';

		html += '</tr></table>';

	return html;

}



custom_icon['manual_marker.png'] = new GIcon();

custom_icon['manual_marker.png'].shadow = icon_path + "marker_00_shadow.png";

custom_icon['manual_marker.png'].image = icon_path + "manual_marker.png";

custom_icon['manual_marker.png'].iconSize = new GSize(28.0, 28.0);

custom_icon['manual_marker.png'].shadowSize = new GSize(43.0, 28.0);

custom_icon['manual_marker.png'].iconAnchor = new GPoint(10.0, 28.0);

custom_icon['manual_marker.png'].infoWindowAnchor = new GPoint(0.0, 28.0);

custom_icon['manual_marker.png'].infoShadowAnchor = new GPoint(0.0, 28.0);



// Square Markers

custom_icon['marker_00.png'] = new GIcon();

custom_icon['marker_00.png'].shadow = icon_path + "marker_00_shadow.png";

custom_icon['marker_00.png'].image = icon_path + "marker_00.png";

custom_icon['marker_00.png'].iconSize = new GSize(28.0, 28.0);

custom_icon['marker_00.png'].shadowSize = new GSize(43.0, 28.0);

custom_icon['marker_00.png'].iconAnchor = new GPoint(10.0, 28.0);

custom_icon['marker_00.png'].infoWindowAnchor = new GPoint(14.0, 2.0);

custom_icon['marker_00.png'].infoShadowAnchor = new GPoint(28.0, 15.0);



custom_icon['marker_01.png'] = new GIcon();

custom_icon['marker_01.png'].shadow = icon_path + "marker_00_shadow.png";

custom_icon['marker_01.png'].image = icon_path + "marker_01.png";

custom_icon['marker_01.png'].iconSize = new GSize(28.0, 28.0);

custom_icon['marker_01.png'].shadowSize = new GSize(43.0, 28.0);

custom_icon['marker_01.png'].iconAnchor = new GPoint(10.0, 28.0);

custom_icon['marker_01.png'].infoWindowAnchor = new GPoint(14.0, 2.0);

custom_icon['marker_01.png'].infoShadowAnchor = new GPoint(28.0, 15.0);



custom_icon['marker_02.png'] = new GIcon();

custom_icon['marker_02.png'].shadow = icon_path + "marker_00_shadow.png";

custom_icon['marker_02.png'].image = icon_path + "marker_02.png";

custom_icon['marker_02.png'].iconSize = new GSize(28.0, 28.0);

custom_icon['marker_02.png'].shadowSize = new GSize(43.0, 28.0);

custom_icon['marker_02.png'].iconAnchor = new GPoint(10.0, 28.0);

custom_icon['marker_02.png'].infoWindowAnchor = new GPoint(14.0, 2.0);

custom_icon['marker_02.png'].infoShadowAnchor = new GPoint(28.0, 15.0);



custom_icon['marker_03.png'] = new GIcon();

custom_icon['marker_03.png'].shadow = icon_path + "marker_00_shadow.png";

custom_icon['marker_03.png'].image = icon_path + "marker_03.png";

custom_icon['marker_03.png'].iconSize = new GSize(28.0, 28.0);

custom_icon['marker_03.png'].shadowSize = new GSize(43.0, 28.0);

custom_icon['marker_03.png'].iconAnchor = new GPoint(10.0, 28.0);

custom_icon['marker_03.png'].infoWindowAnchor = new GPoint(14.0, 2.0);

custom_icon['marker_03.png'].infoShadowAnchor = new GPoint(28.0, 15.0);



custom_icon['marker_04.png'] = new GIcon();

custom_icon['marker_04.png'].shadow = icon_path + "marker_00_shadow.png";

custom_icon['marker_04.png'].image = icon_path + "marker_04.png";

custom_icon['marker_04.png'].iconSize = new GSize(28.0, 28.0);

custom_icon['marker_04.png'].shadowSize = new GSize(43.0, 28.0);

custom_icon['marker_04.png'].iconAnchor = new GPoint(10.0, 28.0);

custom_icon['marker_04.png'].infoWindowAnchor = new GPoint(14.0, 2.0);

custom_icon['marker_04.png'].infoShadowAnchor = new GPoint(28.0, 15.0);



custom_icon['marker_05.png'] = new GIcon();

custom_icon['marker_05.png'].shadow = icon_path + "marker_00_shadow.png";

custom_icon['marker_05.png'].image = icon_path + "marker_05.png";

custom_icon['marker_05.png'].iconSize = new GSize(28.0, 28.0);

custom_icon['marker_05.png'].shadowSize = new GSize(43.0, 28.0);

custom_icon['marker_05.png'].iconAnchor = new GPoint(10.0, 28.0);

custom_icon['marker_05.png'].infoWindowAnchor = new GPoint(14.0, 2.0);

custom_icon['marker_05.png'].infoShadowAnchor = new GPoint(28.0, 15.0);



custom_icon['marker_06.png'] = new GIcon();

custom_icon['marker_06.png'].shadow = icon_path + "marker_00_shadow.png";

custom_icon['marker_06.png'].image = icon_path + "marker_06.png";

custom_icon['marker_06.png'].iconSize = new GSize(28.0, 28.0);

custom_icon['marker_06.png'].shadowSize = new GSize(43.0, 28.0);

custom_icon['marker_06.png'].iconAnchor = new GPoint(10.0, 28.0);

custom_icon['marker_06.png'].infoWindowAnchor = new GPoint(14.0, 2.0);

custom_icon['marker_06.png'].infoShadowAnchor = new GPoint(28.0, 15.0);



custom_icon['marker_07.png'] = new GIcon();

custom_icon['marker_07.png'].shadow = icon_path + "marker_00_shadow.png";

custom_icon['marker_07.png'].image = icon_path + "marker_07.png";

custom_icon['marker_07.png'].iconSize = new GSize(28.0, 28.0);

custom_icon['marker_07.png'].shadowSize = new GSize(43.0, 28.0);

custom_icon['marker_07.png'].iconAnchor = new GPoint(10.0, 28.0);

custom_icon['marker_07.png'].infoWindowAnchor = new GPoint(14.0, 2.0);

custom_icon['marker_07.png'].infoShadowAnchor = new GPoint(28.0, 15.0);



custom_icon['marker_08.png'] = new GIcon();

custom_icon['marker_08.png'].shadow = icon_path + "marker_00_shadow.png";

custom_icon['marker_08.png'].image = icon_path + "marker_08.png";

custom_icon['marker_08.png'].iconSize = new GSize(28.0, 28.0);

custom_icon['marker_08.png'].shadowSize = new GSize(43.0, 28.0);

custom_icon['marker_08.png'].iconAnchor = new GPoint(10.0, 28.0);

custom_icon['marker_08.png'].infoWindowAnchor = new GPoint(14.0, 2.0);

custom_icon['marker_08.png'].infoShadowAnchor = new GPoint(28.0, 15.0);



custom_icon['marker_09.png'] = new GIcon();

custom_icon['marker_09.png'].shadow = icon_path + "marker_00_shadow.png";

custom_icon['marker_09.png'].image = icon_path + "marker_09.png";

custom_icon['marker_09.png'].iconSize = new GSize(28.0, 28.0);

custom_icon['marker_09.png'].shadowSize = new GSize(43.0, 28.0);

custom_icon['marker_09.png'].iconAnchor = new GPoint(10.0, 28.0);

custom_icon['marker_09.png'].infoWindowAnchor = new GPoint(14.0, 2.0);

custom_icon['marker_09.png'].infoShadowAnchor = new GPoint(28.0, 15.0);



// Round Markers

custom_icon['marker_10.png'] = new GIcon();

custom_icon['marker_10.png'].shadow = icon_path + "marker_10_shadow.png";

custom_icon['marker_10.png'].image = icon_path + "marker_10.png";

custom_icon['marker_10.png'].iconSize = new GSize(28.0, 28.0);

custom_icon['marker_10.png'].shadowSize = new GSize(43.0, 28.0);

custom_icon['marker_10.png'].iconAnchor = new GPoint(14.0, 28.0);

custom_icon['marker_10.png'].infoWindowAnchor = new GPoint(14.0, 2.0);

custom_icon['marker_10.png'].infoShadowAnchor = new GPoint(28.0, 15.0);





custom_icon['marker_11.png'] = new GIcon();

custom_icon['marker_11.png'].shadow = icon_path + "marker_10_shadow.png";

custom_icon['marker_11.png'].image = icon_path + "marker_11.png";

custom_icon['marker_11.png'].iconSize = new GSize(28.0, 28.0);

custom_icon['marker_11.png'].shadowSize = new GSize(43.0, 28.0);

custom_icon['marker_11.png'].iconAnchor = new GPoint(14.0, 28.0);

custom_icon['marker_11.png'].infoWindowAnchor = new GPoint(14.0, 2.0);

custom_icon['marker_11.png'].infoShadowAnchor = new GPoint(28.0, 15.0);



custom_icon['marker_12.png'] = new GIcon();

custom_icon['marker_12.png'].shadow = icon_path + "marker_10_shadow.png";

custom_icon['marker_12.png'].image = icon_path + "marker_12.png";

custom_icon['marker_12.png'].iconSize = new GSize(28.0, 28.0);

custom_icon['marker_12.png'].shadowSize = new GSize(43.0, 28.0);

custom_icon['marker_12.png'].iconAnchor = new GPoint(14.0, 28.0);

custom_icon['marker_12.png'].infoWindowAnchor = new GPoint(14.0, 2.0);

custom_icon['marker_12.png'].infoShadowAnchor = new GPoint(28.0, 15.0);



custom_icon['marker_13.png'] = new GIcon();

custom_icon['marker_13.png'].shadow = icon_path + "marker_10_shadow.png";

custom_icon['marker_13.png'].image = icon_path + "marker_13.png";

custom_icon['marker_13.png'].iconSize = new GSize(28.0, 28.0);

custom_icon['marker_13.png'].shadowSize = new GSize(43.0, 28.0);

custom_icon['marker_13.png'].iconAnchor = new GPoint(14.0, 28.0);

custom_icon['marker_13.png'].infoWindowAnchor = new GPoint(14.0, 2.0);

custom_icon['marker_13.png'].infoShadowAnchor = new GPoint(28.0, 15.0);



custom_icon['marker_14.png'] = new GIcon();

custom_icon['marker_14.png'].shadow = icon_path + "marker_10_shadow.png";

custom_icon['marker_14.png'].image = icon_path + "marker_14.png";

custom_icon['marker_14.png'].iconSize = new GSize(28.0, 28.0);

custom_icon['marker_14.png'].shadowSize = new GSize(43.0, 28.0);

custom_icon['marker_14.png'].iconAnchor = new GPoint(14.0, 28.0);

custom_icon['marker_14.png'].infoWindowAnchor = new GPoint(14.0, 2.0);

custom_icon['marker_14.png'].infoShadowAnchor = new GPoint(28.0, 15.0);



custom_icon['marker_15.png'] = new GIcon();

custom_icon['marker_15.png'].shadow = icon_path + "marker_10_shadow.png";

custom_icon['marker_15.png'].image = icon_path + "marker_15.png";

custom_icon['marker_15.png'].iconSize = new GSize(28.0, 28.0);

custom_icon['marker_15.png'].shadowSize = new GSize(43.0, 28.0);

custom_icon['marker_15.png'].iconAnchor = new GPoint(14.0, 28.0);

custom_icon['marker_15.png'].infoWindowAnchor = new GPoint(14.0, 2.0);

custom_icon['marker_15.png'].infoShadowAnchor = new GPoint(28.0, 15.0);



custom_icon['marker_16.png'] = new GIcon();

custom_icon['marker_16.png'].shadow = icon_path + "marker_10_shadow.png";

custom_icon['marker_16.png'].image = icon_path + "marker_16.png";

custom_icon['marker_16.png'].iconSize = new GSize(28.0, 28.0);

custom_icon['marker_16.png'].shadowSize = new GSize(43.0, 28.0);

custom_icon['marker_16.png'].iconAnchor = new GPoint(14.0, 28.0);

custom_icon['marker_16.png'].infoWindowAnchor = new GPoint(14.0, 2.0);

custom_icon['marker_16.png'].infoShadowAnchor = new GPoint(28.0, 15.0);



custom_icon['marker_17.png'] = new GIcon();

custom_icon['marker_17.png'].shadow = icon_path + "marker_10_shadow.png";

custom_icon['marker_17.png'].image = icon_path + "marker_17.png";

custom_icon['marker_17.png'].iconSize = new GSize(28.0, 28.0);

custom_icon['marker_17.png'].shadowSize = new GSize(43.0, 28.0);

custom_icon['marker_17.png'].iconAnchor = new GPoint(14.0, 28.0);

custom_icon['marker_17.png'].infoWindowAnchor = new GPoint(14.0, 2.0);

custom_icon['marker_17.png'].infoShadowAnchor = new GPoint(28.0, 15.0);



custom_icon['marker_18.png'] = new GIcon();

custom_icon['marker_18.png'].shadow = icon_path + "marker_10_shadow.png";

custom_icon['marker_18.png'].image = icon_path + "marker_18.png";

custom_icon['marker_18.png'].iconSize = new GSize(28.0, 28.0);

custom_icon['marker_18.png'].shadowSize = new GSize(43.0, 28.0);

custom_icon['marker_18.png'].iconAnchor = new GPoint(14.0, 28.0);

custom_icon['marker_18.png'].infoWindowAnchor = new GPoint(14.0, 2.0);

custom_icon['marker_18.png'].infoShadowAnchor = new GPoint(28.0, 15.0);



custom_icon['marker_19.png'] = new GIcon();

custom_icon['marker_19.png'].shadow = icon_path + "marker_10_shadow.png";

custom_icon['marker_19.png'].image = icon_path + "marker_19.png";

custom_icon['marker_19.png'].iconSize = new GSize(28.0, 28.0);

custom_icon['marker_19.png'].shadowSize = new GSize(43.0, 28.0);

custom_icon['marker_19.png'].iconAnchor = new GPoint(14.0, 28.0);

custom_icon['marker_19.png'].infoWindowAnchor = new GPoint(14.0, 2.0);

custom_icon['marker_19.png'].infoShadowAnchor = new GPoint(28.0, 15.0);



// Tack Markers

custom_icon['marker_20.png'] = new GIcon();

custom_icon['marker_20.png'].shadow = icon_path + "marker_20_shadow.png";

custom_icon['marker_20.png'].image = icon_path + "marker_20.png";

custom_icon['marker_20.png'].iconSize = new GSize(12.0, 20.0);

custom_icon['marker_20.png'].shadowSize = new GSize(23.0, 20.0);

custom_icon['marker_20.png'].iconAnchor = new GPoint(6.0, 20.0);

custom_icon['marker_20.png'].infoWindowAnchor = new GPoint(6.0, 2.0);

custom_icon['marker_20.png'].infoShadowAnchor = new GPoint(12.0, 8.0);



custom_icon['marker_21.png'] = new GIcon();

custom_icon['marker_21.png'].shadow = icon_path + "marker_20_shadow.png";

custom_icon['marker_21.png'].image = icon_path + "marker_21.png";

custom_icon['marker_21.png'].iconSize = new GSize(12.0, 20.0);

custom_icon['marker_21.png'].shadowSize = new GSize(23.0, 20.0);

custom_icon['marker_21.png'].iconAnchor = new GPoint(6.0, 20.0);

custom_icon['marker_21.png'].infoWindowAnchor = new GPoint(6.0, 2.0);

custom_icon['marker_21.png'].infoShadowAnchor = new GPoint(12.0, 8.0);



custom_icon['marker_22.png'] = new GIcon();

custom_icon['marker_22.png'].shadow = icon_path + "marker_20_shadow.png";

custom_icon['marker_22.png'].image = icon_path + "marker_22.png";

custom_icon['marker_22.png'].iconSize = new GSize(12.0, 20.0);

custom_icon['marker_22.png'].shadowSize = new GSize(23.0, 20.0);

custom_icon['marker_22.png'].iconAnchor = new GPoint(6.0, 20.0);

custom_icon['marker_22.png'].infoWindowAnchor = new GPoint(6.0, 2.0);

custom_icon['marker_22.png'].infoShadowAnchor = new GPoint(12.0, 8.0);



custom_icon['marker_23.png'] = new GIcon();

custom_icon['marker_23.png'].shadow = icon_path + "marker_20_shadow.png";

custom_icon['marker_23.png'].image = icon_path + "marker_23.png";

custom_icon['marker_23.png'].iconSize = new GSize(12.0, 20.0);

custom_icon['marker_23.png'].shadowSize = new GSize(23.0, 20.0);

custom_icon['marker_23.png'].iconAnchor = new GPoint(6.0, 20.0);

custom_icon['marker_23.png'].infoWindowAnchor = new GPoint(6.0, 2.0);

custom_icon['marker_23.png'].infoShadowAnchor = new GPoint(12.0, 8.0);



custom_icon['marker_24.png'] = new GIcon();

custom_icon['marker_24.png'].shadow = icon_path + "marker_20_shadow.png";

custom_icon['marker_24.png'].image = icon_path + "marker_24.png";

custom_icon['marker_24.png'].iconSize = new GSize(12.0, 20.0);

custom_icon['marker_24.png'].shadowSize = new GSize(23.0, 20.0);

custom_icon['marker_24.png'].iconAnchor = new GPoint(6.0, 20.0);

custom_icon['marker_24.png'].infoWindowAnchor = new GPoint(6.0, 2.0);

custom_icon['marker_24.png'].infoShadowAnchor = new GPoint(12.0, 8.0);



custom_icon['marker_25.png'] = new GIcon();

custom_icon['marker_25.png'].shadow = icon_path + "marker_20_shadow.png";

custom_icon['marker_25.png'].image = icon_path + "marker_25.png";

custom_icon['marker_25.png'].iconSize = new GSize(12.0, 20.0);

custom_icon['marker_25.png'].shadowSize = new GSize(23.0, 20.0);

custom_icon['marker_25.png'].iconAnchor = new GPoint(6.0, 20.0);

custom_icon['marker_25.png'].infoWindowAnchor = new GPoint(6.0, 2.0);

custom_icon['marker_25.png'].infoShadowAnchor = new GPoint(12.0, 8.0);



custom_icon['marker_26.png'] = new GIcon();

custom_icon['marker_26.png'].shadow = icon_path + "marker_20_shadow.png";

custom_icon['marker_26.png'].image = icon_path + "marker_26.png";

custom_icon['marker_26.png'].iconSize = new GSize(12.0, 20.0);

custom_icon['marker_26.png'].shadowSize = new GSize(23.0, 20.0);

custom_icon['marker_26.png'].iconAnchor = new GPoint(6.0, 20.0);

custom_icon['marker_26.png'].infoWindowAnchor = new GPoint(6.0, 2.0);

custom_icon['marker_26.png'].infoShadowAnchor = new GPoint(12.0, 8.0);



custom_icon['marker_27.png'] = new GIcon();

custom_icon['marker_27.png'].shadow = icon_path + "marker_20_shadow.png";

custom_icon['marker_27.png'].image = icon_path + "marker_27.png";

custom_icon['marker_27.png'].iconSize = new GSize(12.0, 20.0);

custom_icon['marker_27.png'].shadowSize = new GSize(23.0, 20.0);

custom_icon['marker_27.png'].iconAnchor = new GPoint(6.0, 20.0);

custom_icon['marker_27.png'].infoWindowAnchor = new GPoint(6.0, 2.0);

custom_icon['marker_27.png'].infoShadowAnchor = new GPoint(12.0, 8.0);



custom_icon['marker_28.png'] = new GIcon();

custom_icon['marker_28.png'].shadow = icon_path + "marker_20_shadow.png";

custom_icon['marker_28.png'].image = icon_path + "marker_28.png";

custom_icon['marker_28.png'].iconSize = new GSize(12.0, 20.0);

custom_icon['marker_28.png'].shadowSize = new GSize(23.0, 20.0);

custom_icon['marker_28.png'].iconAnchor = new GPoint(6.0, 20.0);

custom_icon['marker_28.png'].infoWindowAnchor = new GPoint(6.0, 2.0);

custom_icon['marker_28.png'].infoShadowAnchor = new GPoint(12.0, 8.0);



custom_icon['marker_29.png'] = new GIcon();

custom_icon['marker_29.png'].shadow = icon_path + "marker_20_shadow.png";

custom_icon['marker_29.png'].image = icon_path + "marker_29.png";

custom_icon['marker_29.png'].iconSize = new GSize(12.0, 20.0);

custom_icon['marker_29.png'].shadowSize = new GSize(23.0, 20.0);

custom_icon['marker_29.png'].iconAnchor = new GPoint(6.0, 20.0);

custom_icon['marker_29.png'].infoWindowAnchor = new GPoint(6.0, 2.0);

custom_icon['marker_29.png'].infoShadowAnchor = new GPoint(12.0, 8.0);



// Origin Markers

custom_icon['origin_00.png'] = new GIcon();

//custom_icon['origin_00.png'].shadow = icon_path + "origin_00_shadow.png";

custom_icon['origin_00.png'].image = icon_path + "origin_00.png";

custom_icon['origin_00.png'].iconSize = new GSize(26.0, 26.0);

//custom_icon['origin_00.png'].shadowSize = new GSize(23.0, 20.0);

custom_icon['origin_00.png'].iconAnchor = new GPoint(13.0, 26.0);

custom_icon['origin_00.png'].infoWindowAnchor = new GPoint(13.0, 2.0);

//custom_icon['origin_00.png'].infoShadowAnchor = new GPoint(12.0, 8.0);



custom_icon['origin_01.png'] = new GIcon();

//custom_icon['origin_01.png'].shadow = icon_path + "origin_01_shadow.png";

custom_icon['origin_01.png'].image = icon_path + "origin_01.png";

custom_icon['origin_01.png'].iconSize = new GSize(26.0, 26.0);

//custom_icon['origin_01.png'].shadowSize = new GSize(23.0, 20.0);

custom_icon['origin_01.png'].iconAnchor = new GPoint(13.0, 26.0);

custom_icon['origin_01.png'].infoWindowAnchor = new GPoint(13.0, 2.0);

//custom_icon['origin_01.png'].infoShadowAnchor = new GPoint(12.0, 8.0);



custom_icon['origin_02.png'] = new GIcon();

//custom_icon['origin_02.png'].shadow = icon_path + "origin_02_shadow.png";

custom_icon['origin_02.png'].image = icon_path + "origin_02.png";

custom_icon['origin_02.png'].iconSize = new GSize(26.0, 26.0);

//custom_icon['origin_02.png'].shadowSize = new GSize(23.0, 20.0);

custom_icon['origin_02.png'].iconAnchor = new GPoint(13.0, 26.0);

custom_icon['origin_02.png'].infoWindowAnchor = new GPoint(13.0, 2.0);

//custom_icon['origin_02.png'].infoShadowAnchor = new GPoint(12.0, 8.0);



custom_icon['origin_03.png'] = new GIcon();

//custom_icon['origin_03.png'].shadow = icon_path + "origin_03_shadow.png";

custom_icon['origin_03.png'].image = icon_path + "origin_03.png";

custom_icon['origin_03.png'].iconSize = new GSize(26.0, 26.0);

//custom_icon['origin_03.png'].shadowSize = new GSize(23.0, 20.0);

custom_icon['origin_03.png'].iconAnchor = new GPoint(13.0, 26.0);

custom_icon['origin_03.png'].infoWindowAnchor = new GPoint(13.0, 2.0);

//custom_icon['origin_03.png'].infoShadowAnchor = new GPoint(12.0, 8.0);



custom_icon['origin_04.png'] = new GIcon();

//custom_icon['origin_04.png'].shadow = icon_path + "origin_04_shadow.png";

custom_icon['origin_04.png'].image = icon_path + "origin_04.png";

custom_icon['origin_04.png'].iconSize = new GSize(26.0, 26.0);

//custom_icon['origin_04.png'].shadowSize = new GSize(23.0, 20.0);

custom_icon['origin_04.png'].iconAnchor = new GPoint(13.0, 26.0);

custom_icon['origin_04.png'].infoWindowAnchor = new GPoint(13.0, 2.0);

//custom_icon['origin_04.png'].infoShadowAnchor = new GPoint(12.0, 8.0);



// EXTRA GOODIE FUNCTIONS

/*

// FUNCTION: TextualControl	

*/

function TextualControl () {}

	TextualControl.prototype = new GControl();

	TextualControl.prototype.initialize = function(map) {

  	var container = document.createElement("div");

	var zoomDiv = document.createElement("div");

  	this.setButtonStyle_(zoomDiv);

  	container.appendChild(zoomDiv);

  	zoomDiv.appendChild(document.createTextNode("back to area map"));

  	GEvent.addDomListener(zoomDiv, "click", function() {

		map.closeInfoWindow(); 

		map.setCenter(reCenter, reZoom); 

		map.removeControl(backbutton); 

  	});



	map.getContainer().appendChild(container);

	return container;

}

// 

/*

// PROTOTYPE: TextualControl	

//

// By default, the control will appear in the top right corner of the

// map with 7 pixels of padding.

*/

TextualControl.prototype.getDefaultPosition = function() {

  return new GControlPosition(G_ANCHOR_TOP_RIGHT, new GSize(217, 7));

}

/*

// PROTOTYPE: TextualControl	

//

// Sets the proper CSS for the given button element.

*/

TextualControl.prototype.setButtonStyle_ = function(button) {

	button.style.backgroundColor = "#880000";

  	button.style.padding = "1px";

  	button.style.fontFamily = "Geneva, Vera, Arial, Helvetica, sans-serif";

  	button.style.fontSize = "12px";

  	button.style.fontVariant = "small-caps";

  	button.style.border = "1px solid #999999";

  	button.style.color = "#fff";

  	button.style.cursor = "pointer";

}