Mercurial > hg > batmud > gmap2
comparison map.js @ 269:ce747cd9ec59 gmap2
Add error situation handling.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Sun, 13 Apr 2014 23:41:40 +0300 |
parents | 98115d71bb64 |
children | 561640ed2204 |
comparison
equal
deleted
inserted
replaced
268:98115d71bb64 | 269:ce747cd9ec59 |
---|---|
203 pmapUpdateTime = Date.now(); | 203 pmapUpdateTime = Date.now(); |
204 // XDownloadUrl("http://www.bat.org/playerpos.php?token="+pmapToken, | 204 // XDownloadUrl("http://www.bat.org/playerpos.php?token="+pmapToken, |
205 XDownloadUrl("http://tnsp.org/gmapng/playerpos.php?token="+pmapToken, | 205 XDownloadUrl("http://tnsp.org/gmapng/playerpos.php?token="+pmapToken, |
206 function(data, responseCode) | 206 function(data, responseCode) |
207 { | 207 { |
208 if (data != "") | 208 if (typeof(data) == "string") |
209 { | 209 { |
210 var pos = JSON.parse(data); | 210 if (data.match(/error/i)) |
211 if (typeof(pos) == "object" && (pos.x != pmapPlrPrevPos.x || pos.y != pmapPlrPrevPos.y)) | |
212 { | 211 { |
213 pmapPlrMarker.setPosition(pmapMapCoordsToLatLng(new google.maps.Point(pos.x * 2 + 1, pos.y * 2 + 1), 7)); | 212 // In case of an error, stop updating |
214 pmap.panTo(pmapMapCoordsToLatLng(new google.maps.Point(pos.x, pos.y), 6)); | 213 clearInterval(pmapUpdatePID); |
215 pmapPlrPrevPos = pos; | |
216 pmapUpdateDelay = 500; | |
217 } | 214 } |
218 else | 215 else |
219 if (pmapUpdateDelay < 5000) | 216 if (data != "") |
220 pmapUpdateDelay += 500; | 217 { |
218 var pos = JSON.parse(data); | |
219 if (typeof(pos) == "object" && (pos.x != pmapPlrPrevPos.x || pos.y != pmapPlrPrevPos.y)) | |
220 { | |
221 pmapPlrMarker.setPosition(pmapMapCoordsToLatLng(new google.maps.Point(pos.x * 2 + 1, pos.y * 2 + 1), 7)); | |
222 pmap.panTo(pmapMapCoordsToLatLng(new google.maps.Point(pos.x, pos.y), 6)); | |
223 pmapPlrPrevPos = pos; | |
224 pmapUpdateDelay = 500; | |
225 } | |
226 else | |
227 if (pmapUpdateDelay < 5000) | |
228 pmapUpdateDelay += 500; | |
229 } | |
221 } | 230 } |
222 else | 231 else |
223 pmapUpdateDelay = 10000; | 232 pmapUpdateDelay = 10000; |
224 }, | 233 }, |
225 function() | 234 function() |