Changeset 7524
- Timestamp:
- 07/16/08 10:23:32 (5 months ago)
- Files:
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
sandbox/topp/almanac/lib/OpenLayers/Control/YahooGeocoder.js
r7521 r7524 86 86 callback = function() {}; 87 87 } 88 var bound = OpenLayers.Function.bind(function(request) { 89 88 var requestCallback = function(request) { 90 89 if(request.status >= 200 && request.status < 300) { 91 90 // success 91 var response = request.responseXML; 92 93 var result = response.getElementsByTagName("Result")[0]; 94 92 95 var xml = new OpenLayers.Format.XML(); 93 94 response = xml.read(request.response) 96 97 var precision = xml.getAttributeNS(result, null, 'precision'); 98 99 var latitude = result.getElementsByTagName("Latitude")[0].firstChild.nodeValue; 100 var longitude = result.getElementsByTagName("Longitude")[0].firstChild.nodeValue; 101 102 var lonlat = new OpenLayers.LonLat(longitude, latitude); 103 104 lonlat.transform(this.serverProj, this.clientProj); 95 105 96 OpenLayers.Console.log(response); 106 var obj = { 107 precision : precision, 108 lonlat : lonlat 109 } 110 111 callback(obj); 97 112 } else { 98 113 // failure 99 114 } 100 101 var lonlat = null; 102 if(point) { 103 var lonlat = new OpenLayers.LonLat(point.lng(), point.lat()); 104 lonlat.transform(this.serverProj, this.clientProj); 105 } 106 callback(lonlat); 107 }, this); 115 }; 108 116 109 117 this.request = OpenLayers.Request.GET({ 110 118 url: this.yahooUrl, 111 callback: bound,119 callback: requestCallback, 112 120 params: params, 113 121 scope: this
