// directions.js: Copyright Remon Versteeg
// http://remonversteeg.nl
var  $$ = jQuery.noConflict();
$$(window).load(function(){
        // Google map
        if ($$('#gmap').length > 0)
            return loadMap();
    });
    // load Google map
   function loadMap()
    {
        if (GBrowserIsCompatible()) {
			map = new GMap2(document.getElementById('gmap'));
			var coords = $$('#gmap').attr("title").split(",");
			var point = new GLatLng(parseFloat(coords[0]), parseFloat(coords[1]));
			var crossLayer = new GTileLayer(new GCopyrightCollection(""), 0, 15);

			crossLayer.getTileUrl =  function(tile, zoom) {
			  return "./include/tile_crosshairs.png";
			}
			crossLayer.isPng = function() {return true;}
			
			// Create the new map
			var layerTerCross = [ G_PHYSICAL_MAP.getTileLayers()[0], crossLayer ];
			var mtTerCross = new GMapType(layerTerCross, G_PHYSICAL_MAP.getProjection(), "Ter+");
			
			map.addMapType(G_PHYSICAL_MAP);
			map.addMapType(mtTerCross);
			map.setCenter(new GLatLng(37.4419, -122.1419), 4);
			var mapControl = new GHierarchicalMapTypeControl();
			
			// Adding map controls
			mapControl.clearRelationships();
			mapControl.addRelationship(G_SATELLITE_MAP, G_HYBRID_MAP, "Labels", false);
			mapControl.addRelationship(G_PHYSICAL_MAP, mtTerCross, "Crosshairs");
			map.addControl(mapControl);
			map.addControl(new GLargeMapControl());
            map.enableScrollWheelZoom();
            map.setCenter(point, 15);
			
            // add marker
			var baseIcon = new GIcon(G_DEFAULT_ICON);
			baseIcon.shadow = "http://www.google.com/mapfiles/shadow50.png";
			baseIcon.iconSize = new GSize(20, 34);
			baseIcon.shadowSize = new GSize(37, 34);
			baseIcon.iconAnchor = new GPoint(9, 34);
			baseIcon.infoWindowAnchor = new GPoint(9, 2);
			
            var myIcon = new GIcon(baseIcon);
            myIcon.image = window.location.protocol + "//" + window.location.host+"/includes/images/markers/company.png";
            myIcon.iconSize = new GSize(20, 34);
            myIcon.iconAnchor = new GPoint(9, 48);
			myIcon.infoWindowAnchor = new GPoint(9, 2);
			
			function createMarker(point, index) {
			  var letter = new String(index);
			  var iMage = marker;
			  var letteredIcon = new GIcon(baseIcon);
			  letteredIcon.image = myIcon.image;
			  markerOptions = { icon:letteredIcon };
			  var marker = new GMarker(point, markerOptions);
			
			  GEvent.addListener(marker, "click", function() {
				$$.get(window.location.protocol + "//" + window.location.host+"/modules/route/js/adres_loader.php", function(data){
				  var wText = data;
				  		marker.openInfoWindowHtml("<b>" + wText + "</b>");
				 });
			  });
			  return marker;
			}
			map.addOverlay(createMarker(point,'company'));
			
            // add directions
            $$('#routeform').submit(function(e) {
				e.preventDefault();
                var from = $$('#routefrom').val();
				var to = $$('#routeto').val();
				map.clearOverlays();
				var directions = new GDirections(map, document.getElementById('gdirections'));
                directions.load('from: ' + from + ' to: ' + to, {locale: 'nl_NL'});
            });
      }
}
