694 Commits

Author SHA1 Message Date
Jon Atkins
b83cf459c8 more tweaks to the request code
- delay briefly before retrying a timeout, and a bit longer before other errors
- also delay briefly before running the queue after a request, to give a chance of more than one request's requeued entries being handled atr once
- add a min tiles per request, to avoid sending multiple requests when only a few queued items remain
these are attempts to be nicer to the niantic servers, particularly in error cases, with some based on my best guess of the stock site behaviour, and others based on what seems reasonable to me
2013-09-06 22:32:57 +01:00
Jon Atkins
cb8547a0b9 refresh tweaks, reduced logging 2013-09-06 00:20:45 +01:00
Jon Atkins
7659cf4b84 slight improvement around the antimeridian - wrap the map centre so it's always between +-180 degrees
also limit north/south to 85 degrees, to avoid leaving the active map area
2013-09-05 23:12:18 +01:00
Jon Atkins
2f96b9d07c update lat/lng clamping, to take account of the map projection not going beyond 85 degrees north/south 2013-09-05 22:40:23 +01:00
Jon Atkins
7d3ca0972b better selected portal handling
- ensure the selected portal isn't deleted when it isn't in the map data (e.g. due to zoom level)
- always show the selected portal on the map, even if the high density clustering code would have removed it
- deselect the selected portal, and clear the details bar, in the rare instance of the portal being deleted server-side (i.e. in the deletedEntities list)
2013-09-05 22:14:52 +01:00
Jon Atkins
ac9d9cfaf0 trap exceptions when running hooks, log the error, and continue
should reduce issues caused when plugins are broken
2013-09-05 03:42:36 +01:00
Xelio
045db7fe90 Fix comment. 2013-09-05 02:32:59 +08:00
Xelio
8f1442e1dd Refactor code of select/unselect portal. Add hook 'portalSelected' with guid of selected and unselected portal. 2013-09-05 01:59:30 +08:00
Jon Atkins
a77cf50e42 more improvements to the data requesting
- fix idle resume, so it only occurs if the existing timer has been cancelled
- re-instate the cache, and updates for interface changes
- add a short delay between the initialisation of map data retreival, and actually starting network requests
2013-09-04 04:34:11 +01:00
Jon Atkins
4ccfbdfa45 re-tune the cache code so it's much more short-term storage
the original reason for longer term storage were the frequent error==TIMEOUT from map tiles. since these are now retried, as the stock site does, the remaining use for the cache is more short term, while panning around an area
2013-09-04 04:32:04 +01:00
Jon Atkins
76509f6b1f allow the in-ram cache to be optional, and disable it for now
the new tile retry code makes this cache much less useful now, so it ends up sucking up ram more than being useful
2013-09-04 00:56:29 +01:00
Jon Atkins
d14832d5c7 after map move, check to see if a refresh is actually required, or if the previous timeout can be restored 2013-09-03 21:38:19 +01:00
Jon Atkins
2f40571ee1 make chat code remember and restore the last chat tab used on reload 2013-09-03 19:40:49 +01:00
Jon Atkins
6e808e12a9 remove dead code
- guid to type - unused, and not a good way of doing the test
- resonator settings - it's now a separate plugin
2013-09-03 16:56:30 +01:00
Jon Atkins
98265766ec limit portals drawn to the map in dense areas, to avoid slowing down leaflet too much
unfortunately, this wasn't as much of a speed boost as i'd hoped. just downloading/processing the data for 20,000+ portals from the server, even if only 2000 are displayed, still takes a LONG time
for #526
2013-09-03 16:24:21 +01:00
Jon Atkins
c0015b16cc add a missing munge for ascendingTimestampOrder
(we don't currently use it so it was missed)
2013-09-03 16:23:22 +01:00
Jon Atkins
d976a8c033 on the portalAdded event, include a previousDetails parameter when we're changing an existing portals data
for #504
2013-09-03 04:52:10 +01:00
Jon Atkins
687162337c rename the 'default ingress map' to include 'Google' prefix, to make it clear it's a google map. should help troubleshooting relating to map layers, making it clear which are/aren't google ones 2013-09-03 01:56:03 +01:00
Jon Atkins
30ecb93b19 tile data cache - reduce size on mobile (due to limited RAM), and increase on desktop 2013-09-02 21:20:44 +01:00
Jon Atkins
a8516d92ff increase timers for loading map data - should be less aggresasive now.
still not 100% happy, but it's better...
2013-09-02 03:50:22 +01:00
Jon Atkins
2565478c1f add linkedFields data to portal.options.details.portalV2 - it's expected in a few places
(it shouldn't really be stored there - as other than this the data here mirrors precisely that returned from the server)
fix #519
2013-09-02 02:08:39 +01:00
Jon Atkins
7792c80274 increae the initial map data request delay - gives more chance for munge issues to be fixed in the game score update code 2013-08-31 17:44:51 +01:00
Jon Atkins
8448b71fae hacky workaround for request munging issues - check for issues in the updateGameStatus function 2013-08-31 17:44:16 +01:00
Jon Atkins
043690f99b attempt to detect the request munge set that's active by searching through the stock site functions 2013-08-31 16:40:28 +01:00
Jon Atkins
5b6ed4ce50 niantic have 'encrypted/obsfucated/munged' the parameters passed TO requests to the server - and changed the request URL from /rpc/dashboard.method to /r/dashboard.method
for #518
2013-08-31 04:34:37 +01:00
Jon Atkins
e1891f84df reduce the retry count on a non-"error:TIMEOUT" failed request 2013-08-31 01:43:14 +01:00
Jon Atkins
4a9fa8baea attempt to re-create missing links from the portal data
may not work, as this code was work-in-progress when niantic broke the json protocol
2013-08-31 01:42:31 +01:00
Jon Atkins
b8514ef3d0 tweak debug layer colours 2013-08-31 01:41:54 +01:00
Jon Atkins
ccf83e3360 remove 'report portal' link in portal details. niantic now - pretty much - only take reports via the in-app process 2013-08-30 20:30:13 +01:00
Jon Atkins
ff5134e45e remove comments describing a removed hook 2013-08-30 17:40:56 +01:00
Jon Atkins
b958d1b519 restore support for a selected portal in the URL 2013-08-30 06:55:08 +01:00
Jon Atkins
13d247019c re-write map initial position setting. before, if the initial zoom was invalid for the selected layer, things would get stuck in an odd way 2013-08-30 06:54:22 +01:00
Jon Atkins
7b838af6e3 make selecting a portal robust against it not being displayed on the map
(now entirely possible now portal data is independant of display status)
2013-08-30 06:53:41 +01:00
Jon Atkins
5784be6b6f remove special queue clearing on map movestart - things work pretty well without it, and it was causing bugs
may come back and have another look at this later...
2013-08-30 04:11:27 +01:00
Jon Atkins
de3d05fe95 remove entities outside the map request bounds before processing any requests
prevent the selected portal from being removed
re-select the selected portal - should refresh the side bar when data changes
2013-08-30 00:34:07 +01:00
Jon Atkins
ffd0258a7c call the requestFinished hook in the new request handling code - for plugins that need it
also make a request to hook something that doesn't exist a non-fatal error - to reduce plugin breakage for removed hooks
2013-08-29 06:36:48 +01:00
Jon Atkins
90047abee0 remove all signs of portal photo submitter info when there's no photo submitter information supplied
for #514
2013-08-29 01:10:44 +01:00
Jon Atkins
d1ce8870ba add legacy data fields to fields and links 2013-08-29 00:58:43 +01:00
Jon Atkins
8918b9da6f status message updates for new loading code 2013-08-28 22:41:21 +01:00
Jon Atkins
96d3e1ded7 improved request queue handling 2013-08-28 19:34:21 +01:00
Jon Atkins
ccc13b0131 added status update on resume from idle 2013-08-28 16:55:37 +01:00
Jon Atkins
4337fd1f21 add basic status bar updates for new map request code 2013-08-28 16:41:39 +01:00
Jon Atkins
1d354d4e05 set all path options to defaults, to ensure any changes made by highlighters (e.g. dashes used by portal weakness) are reset on a highlighter change 2013-08-28 07:02:27 +01:00
Jon Atkins
7923903544 make the refresh time dependant on the time the previous refresh took to complete, multiplied by a factor (currently times two)
this will ensure that we don't spend most of our time refreshing. also, when the backend servers go slow we naturally back off the refresh rate
2013-08-28 06:19:45 +01:00
Jon Atkins
3f4fae5d99 typo fix 2013-08-28 06:19:34 +01:00
Jon Atkins
0be0e3ea25 backward compatability - make details also avaliable as data form fields 2013-08-28 06:18:55 +01:00
Jon Atkins
e793be9855 Merge branch 'master' into new-map-data 2013-08-28 00:50:58 +01:00
Jon Atkins
39faef2c4c critical bugfix
- don't assume jquery is available when initially processing JS - setupIdle function added
- don't detect portals from a 'turret' entry - use 'portalV2' as the stock site does
- don't try to display the field MU counts when not in the data
2013-08-27 21:29:54 +01:00
Jon Atkins
571a17d84b work-in-progress - committing to switch to other work 2013-08-27 21:04:28 +01:00
Jon Atkins
81d0cb0ed8 create function to get portal image URL from details - and perform any necessary default URL replacement and https conversion 2013-08-27 18:16:02 +01:00