1 mxn.register('geocommons', {
5 init: function(element, api) {
7 this.element = element;
8 Maker.maker_host='http://maker.geocommons.com';
9 Maker.finder_host='http://finder.geocommons.com';
10 Maker.core_host='http://geocommons.com';
13 applyOptions: function(){
14 var map = this.maps[this.api];
16 // TODO: Add provider code
19 resizeTo: function(width, height){
20 var map = this.maps[this.api];
21 map.setSize(width,height);
24 addControls: function( args ) {
25 var map = this.maps[this.api];
26 map.showControl("Zoom", args.zoom || false);
27 map.showControl("Layers", args.layers || false);
28 map.showControl("Styles", args.styles || false);
29 map.showControl("Basemap", args.map_type || false);
30 map.showControl("Legend", args.legend || false, "open");
31 // showControl("Legend", true, "close");
34 addSmallControls: function() {
35 var map = this.maps[this.api];
36 showControl("Zoom", args.zoom);
37 showControl("Legend", args.legend, "open");
40 addLargeControls: function() {
41 var map = this.maps[this.api];
42 showControl("Zoom", args.zoom);
43 showControl("Layers", args.layers);
44 showControl("Legend", args.legend, "open");
47 addMapTypeControls: function() {
48 var map = this.maps[this.api];
50 // TODO: Add provider code
53 dragging: function(on) {
54 var map = this.maps[this.api];
56 // TODO: Add provider code
59 setCenterAndZoom: function(point, zoom) {
60 var map = this.maps[this.api];
61 map.setCenterZoom(point.lat, point.lon,zoom);
64 getCenter: function() {
65 var map = this.maps[this.api];
66 var point = map.getCenterZoom()[0];
67 return mxn.LatLonPoint(point.lat,point.lon);
70 setCenter: function(point, options) {
71 var map = this.maps[this.api];
72 map.setCenter(point.lat, point.lon);
75 setZoom: function(zoom) {
76 var map = this.maps[this.api];
81 var map = this.maps[this.api];
85 getZoomLevelForBoundingBox: function( bbox ) {
86 var map = this.maps[this.api];
87 // NE and SW points from the bounding box.
88 var ne = bbox.getNorthEast();
89 var sw = bbox.getSouthWest();
92 // TODO: Add provider code
97 setMapType: function(type) {
98 var map = this.maps[this.api];
100 case mxn.Mapstraction.ROAD:
101 map.setMapProvider("OpenStreetMap (road)");
103 case mxn.Mapstraction.SATELLITE:
104 map.setMapProvider("BlueMarble");
106 case mxn.Mapstraction.HYBRID:
107 map.setMapProvider("Google Hybrid");
110 map.setMapProvider(type);
114 getMapType: function() {
115 var map = this.maps[this.api];
116 switch(map.getMapProvider) {
117 case "OpenStreetMap (Road)":
121 // TODO: Add provider code
123 //return mxn.Mapstraction.ROAD;
124 //return mxn.Mapstraction.SATELLITE;
125 //return mxn.Mapstraction.HYBRID;
129 getBounds: function () {
130 var map = this.maps[this.api];
131 var extent = map.getExtent();
132 return new mxn.BoundingBox( extent.northWest.lat, extent.southEast.lon, extent.southEast.lat, extent.northWest.lon);
135 setBounds: function(bounds){
136 var map = this.maps[this.api];
137 var sw = bounds.getSouthWest();
138 var ne = bounds.getNorthEast();
139 map.setExtent(ne.lat,sw.lat,ne.lon,sw.lon);
143 addImageOverlay: function(id, src, opacity, west, south, east, north, oContext) {
144 var map = this.maps[this.api];
146 // TODO: Add provider code
149 addOverlay: function(url, autoCenterAndZoom) {
150 var map = this.maps[this.api];
152 Maker.load_map(this.element.id, url);
153 setTimeout(function() { me.maps[me.api] = swfobject.getObjectById(FlashMap.dom_id);}, 500);
156 addTileLayer: function(tile_url, opacity, copyright_text, min_zoom, max_zoom) {
157 var map = this.maps[this.api];
159 // TODO: Add provider code
162 toggleTileLayer: function(tile_url) {
163 var map = this.maps[this.api];
165 // TODO: Add provider code
168 getPixelRatio: function() {
169 var map = this.maps[this.api];
171 // TODO: Add provider code
174 mousePosition: function(element) {
175 var map = this.maps[this.api];
177 // TODO: Add provider code
183 toProprietary: function() {
184 // TODO: Add provider code
187 fromProprietary: function(googlePoint) {
188 // TODO: Add provider code
195 toProprietary: function() {
196 // TODO: Add provider code
199 openBubble: function() {
200 // TODO: Add provider code
204 // TODO: Add provider code
208 // TODO: Add provider code
212 // TODO: Add provider code
219 toProprietary: function() {
220 // TODO: Add provider code
224 // TODO: Add provider code
228 // TODO: Add provider code