jQuery.fn.googleMaps=function(a){if(!window.GBrowserIsCompatible||!GBrowserIsCompatible()){return this}var b=$.extend({},$.googleMaps.defaults,a);return this.each(function(){$.googleMaps.gMap=new GMap2(this,b);$.googleMaps.mapsConfiguration(b)})};$.googleMapsBaseCoords={start:{lat:51.339992,lng:12.368411},polyline:{lat:51.340351,lng:12.375208},geo:{lat:29.763283,lng:-95.363271}};$.googleMaps={mapsConfiguration:function(b){if(b.geocode){geocoder=new GClientGeocoder();geocoder.getLatLng(b.geocode,function(d){if(!d){alert(address+" not found")}else{$.googleMaps.gMap.setCenter(d,b.depth);$.googleMaps.latitude=d.x;$.googleMaps.longitude=d.y}})}else{var a=$.googleMaps.mapLatLong(b.latitude,b.longitude);$.googleMaps.gMap.setCenter(a,b.depth)}if(b.polyline){$.googleMaps.gMap.addOverlay($.googleMaps.mapPolyLine(b.polyline))}if(b.geodesic){$.googleMaps.mapGeoDesic(b.geodesic)}if(b.pan){b.pan=$.googleMaps.mapPanOptions(b.pan);window.setTimeout(function(){$.googleMaps.gMap.panTo($.googleMaps.mapLatLong(b.pan.panLatitude,b.pan.panLongitude))},b.pan.timeout)}if(b.layer){$.googleMaps.gMap.addOverlay(new GLayer(b.layer))}if(b.markers){$.googleMaps.mapMarkers(a,b.markers)}if(b.controls.type||b.controls.zoom||b.controls.mapType){$.googleMaps.mapControls(b.controls)}else{if(!b.controls.hide){$.googleMaps.gMap.setUIToDefault()}}if(b.scroll){$.googleMaps.gMap.enableScrollWheelZoom()}else{if(!b.scroll){$.googleMaps.gMap.disableScrollWheelZoom()}}if(b.controls.localSearch){$.googleMaps.gMap.enableGoogleBar()}else{$.googleMaps.gMap.disableGoogleBar()}if(b.feed){$.googleMaps.gMap.addOverlay(new GGeoXml(b.feed))}if(b.trafficInfo){var c={incidents:true};trafficInfo=new GTrafficOverlay(c);$.googleMaps.gMap.addOverlay(trafficInfo)}if(b.directions){$.googleMaps.directions=new GDirections($.googleMaps.gMap,b.directions.panel);$.googleMaps.directions.load(b.directions.route)}if(b.streetViewOverlay){svOverlay=new GStreetviewOverlay();$.googleMaps.gMap.addOverlay(svOverlay)}},mapGeoDesic:function(c){geoDesicDefaults={startLatitude:$.googleMapsBaseCoords.start.lat,startLongitude:$.googleMapsBaseCoords.start.lng,endLatitude:$.googleMapsBaseCoords.geo.lat,endLongitude:$.googleMapsBaseCoords.geo.lng,color:"#ff0000",pixels:2,opacity:10};c=$.extend({},geoDesicDefaults,c);var b={geodesic:true};var a=new GPolyline([new GLatLng(c.startLatitude,c.startLongitude),new GLatLng(c.endLatitude,c.endLongitude)],c.color,c.pixels,c.opacity,b);$.googleMaps.gMap.addOverlay(a)},localSearchControl:function(a){var b=$.googleMaps.mapControlsLocation(a.location);$.googleMaps.gMap.addControl(new $.googleMaps.gMap.LocalSearch(),new GControlPosition(b,new GSize(a.x,a.y)))},getLatitude:function(){return $.googleMaps.latitude},getLongitude:function(){return $.googleMaps.longitude},directions:{},latitude:"",longitude:"",latlong:{},maps:{},marker:{},gMap:{},defaults:{latitude:$.googleMapsBaseCoords.start.lat,longitude:$.googleMapsBaseCoords.start.lng,depth:14,scroll:true,trafficInfo:false,streetViewOverlay:false,controls:{hide:false,localSearch:false},layer:null},mapPolyLine:function(a){polylineDefaults={startLatitude:$.googleMapsBaseCoords.start.lat,startLongitude:$.googleMapsBaseCoords.start.lng,endLatitude:$.googleMapsBaseCoords.polyline.lat,endLongitude:$.googleMapsBaseCoords.polyline.lat,color:"#ff0000",pixels:2};a=$.extend({},polylineDefaults,a);return new GPolyline([$.googleMaps.mapLatLong(a.startLatitude,a.startLongitude),$.googleMaps.mapLatLong(a.endLatitude,a.endLongitude)],a.color,a.pixels)},mapLatLong:function(b,a){return new GLatLng(b,a)},mapPanOptions:function(b){var a={panLatitude:$.googleMapsBaseCoords.start.lat,panLongitude:$.googleMapsBaseCoords.start.lng,timeout:0};return b=$.extend({},a,b)},mapMarkersOptions:function(b){var a=new GIcon(G_DEFAULT_ICON);if(b.image){a.image=b.image}if(b.shadow){a.shadow=b.shadow}if(b.iconSize){a.iconSize=new GSize(b.iconSize)}if(b.shadowSize){a.shadowSize=new GSize(b.shadowSize)}if(b.iconAnchor){a.iconAnchor=new GPoint(b.iconAnchor)}if(b.infoWindowAnchor){a.infoWindowAnchor=new GPoint(b.infoWindowAnchor)}if(b.dragCrossImage){a.dragCrossImage=b.dragCrossImage}if(b.dragCrossSize){a.dragCrossSize=new GSize(b.dragCrossSize)}if(b.dragCrossAnchor){a.dragCrossAnchor=new GPoint(b.dragCrossAnchor)}if(b.maxHeight){a.maxHeight=b.maxHeight}if(b.PrintImage){a.PrintImage=b.PrintImage}if(b.mozPrintImage){a.mozPrintImage=b.mozPrintImage}if(b.PrintShadow){a.PrintShadow=b.PrintShadow}if(b.transparent){a.transparent=b.transparent}return a},mapMarkers:function(a,e){if(typeof(e.length)=="undefined"){e=[e]}var b=0;for(i=0;i<e.length;i++){var c=null;if(e[i].icon){c=$.googleMaps.mapMarkersOptions(e[i].icon)}if(e[i].geocode){var d=new GClientGeocoder();d.getLatLng(e[i].geocode,function(f){if(!f){alert(address+" not found")}else{$.googleMaps.marker[i]=new GMarker(f,{draggable:e[i].draggable,icon:c})}})}else{if(e[i].latitude&&e[i].longitude){a=$.googleMaps.mapLatLong(e[i].latitude,e[i].longitude);$.googleMaps.marker[i]=new GMarker(a,{draggable:e[i].draggable,icon:c})}}$.googleMaps.gMap.addOverlay($.googleMaps.marker[i]);if(e[i].info){$(e[i].info.layer).hide();if(e[i].info.popup){$.googleMaps.marker[i].openInfoWindowHtml($(e[i].info.layer).html())}else{$.googleMaps.marker[i].bindInfoWindowHtml($(e[i].info.layer).html().toString())}}}},mapControlsLocation:function(a){switch(a){case"G_ANCHOR_TOP_RIGHT":return G_ANCHOR_TOP_RIGHT;break;case"G_ANCHOR_BOTTOM_RIGHT":return G_ANCHOR_BOTTOM_RIGHT;break;case"G_ANCHOR_TOP_LEFT":return G_ANCHOR_TOP_LEFT;break;case"G_ANCHOR_BOTTOM_LEFT":return G_ANCHOR_BOTTOM_LEFT;break}return},mapControl:function(a){switch(a){case"GLargeMapControl3D":return new GLargeMapControl3D();break;case"GLargeMapControl":return new GLargeMapControl();break;case"GSmallMapControl":return new GSmallMapControl();break;case"GSmallZoomControl3D":return new GSmallZoomControl3D();break;case"GSmallZoomControl":return new GSmallZoomControl();break;case"GScaleControl":return new GScaleControl();break;case"GMapTypeControl":return new GMapTypeControl();break;case"GHierarchicalMapTypeControl":return new GHierarchicalMapTypeControl();break;case"GOverviewMapControl":return new GOverviewMapControl();break;case"GNavLabelControl":return new GNavLabelControl();break}return},mapTypeControl:function(a){switch(a){case"G_NORMAL_MAP":return G_NORMAL_MAP;break;case"G_SATELLITE_MAP":return G_SATELLITE_MAP;break;case"G_HYBRID_MAP":return G_HYBRID_MAP;break}return},mapControls:function(a){controlsDefaults={type:{location:"G_ANCHOR_TOP_RIGHT",x:10,y:10,control:"GMapTypeControl"},zoom:{location:"G_ANCHOR_TOP_LEFT",x:10,y:10,control:"GLargeMapControl3D"}};a=$.extend({},controlsDefaults,a);a.type=$.extend({},controlsDefaults.type,a.type);a.zoom=$.extend({},controlsDefaults.zoom,a.zoom);if(a.type){var c=$.googleMaps.mapControlsLocation(a.type.location);var b=new GControlPosition(c,new GSize(a.type.x,a.type.y));$.googleMaps.gMap.addControl($.googleMaps.mapControl(a.type.control),b)}if(a.zoom){var c=$.googleMaps.mapControlsLocation(a.zoom.location);var b=new GControlPosition(c,new GSize(a.zoom.x,a.zoom.y));$.googleMaps.gMap.addControl($.googleMaps.mapControl(a.zoom.control),b)}if(a.mapType){if(a.mapType.length>=1){for(i=0;i<a.mapType.length;i++){if(a.mapType[i].remove){$.googleMaps.gMap.removeMapType($.googleMaps.mapTypeControl(a.mapType[i].remove))}if(a.mapType[i].add){$.googleMaps.gMap.addMapType($.googleMaps.mapTypeControl(a.mapType[i].add))}}}else{if(a.mapType.add){$.googleMaps.gMap.addMapType($.googleMaps.mapTypeControl(a.mapType.add))}if(a.mapType.remove){$.googleMaps.gMap.removeMapType($.googleMaps.mapTypeControl(a.mapType.remove))}}}},geoCode:function(a){geocoder=new GClientGeocoder();geocoder.getLatLng(a.address,function(b){if(!b){alert(address+" not found")}else{$.googleMaps.gMap.setCenter(b,a.depth)}})}};
