aboutsummaryrefslogtreecommitdiffstats
path: root/web/js/nms-map.js
Commit message (Collapse)AuthorAgeLines
* api: Fix bad hash-logic, front: Performance and moreKristian Lyngstol2016-05-31-14/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes #93 Fixes #92 Fixes #91 The hash logic with FreezeThaw wasn't consistent, which broke a lot of optimizations. This might be slower (?) but it's consistent which means we'll make up for it by better cache utilization. To utilize this I also added delayed JSON parsing (#91) with a big description of why we want it. This also means that #90 and #89 is a lot less important. One issue right now is that "time" isn't part of the ETag. This is both a blessing and a curse. If we are going through time we will actually use in-app cache (not browser cache - the URL changes). This makes for nice CPU savings, but ultimately means we can't tell that the data for two distinct times is identical because we only see one. Oh well... On the simpler side, I fixed/improved the clearBox logic to fix the artifacts. Might need to tune this. I also added some optimizations to avoid redrawing identical text. This is what pointed out to me that the hash was broken too: The resizeEvent was triggering all the time, forcing redraws all the time. This happened because nmsData.switches "updated" frequently which should only happen if someone adds/moves/removes a switch or linknet - regardless of time travel. This was caused by the inconsistent hash causing a false cache miss. Anyway, if you are still reading this, you almost got a patch with "kjell magne bondevik uten mellomnavn" as a literal text string... TOO BAD.
* Fix numerous time-travel issues in front and APIKristian Lyngstol2016-05-28-1/+13
| | | | | | | | | | | | | | | | | Fixes #69 #11 #5 Introduces nmsTime which unifies the time travel code a bit. It still needs some work, but this is much better. All conversion is now done by native JavaScript methods, freeing us from the hell that is parsing it ourself. One thing should be added: The backend should discard any now=values that are not 5-minute intervals. We don't want to kill the cache and the database by extension. Still need to re-implement the "replay event" shorthand, but that ties in to #54
* Front: introduce nmsColor namespaceKristian Lyngstol2016-05-22-9/+9
| | | | | | Also gets rid of color_from_latency() (?) as it was basically worthless by now, and adds switch info to the combo-map so you can quickly identify why a switch is colored a certain way without clicking on it.
* Add rudimentary way of providing linknets.Kristian Lyngstol2016-05-20-1/+1
| | | | Needs a lot of work, including the API side, possibly also the schema.
* Actual initial importKristian Lyngstol2016-04-12-0/+590
Fetched from tgmanage.