diff --git a/plugins/distance-to-portal.user.js b/plugins/distance-to-portal.user.js index a0703c8f..7bec9a14 100644 --- a/plugins/distance-to-portal.user.js +++ b/plugins/distance-to-portal.user.js @@ -1,8 +1,8 @@ // ==UserScript== // @id iitc-plugin-distance-to-portal@jonatkins // @name IITC plugin: Distance to portal -// @category Info -// @version 0.1.0.@@DATETIMEVERSION@@ +// @category Portal Info +// @version 0.1.1.@@DATETIMEVERSION@@ // @namespace https://github.com/jonatkins/ingress-intel-total-conversion // @updateURL @@UPDATEURL@@ // @downloadURL @@DOWNLOADURL@@ @@ -35,6 +35,19 @@ window.plugin.distanceToPortal.addDistance = function() { window.plugin.distanceToPortal.updateDistance(); }; +window.plugin.distanceToPortal.formatDistance = function(dist) { + if (dist >= 10000) { + dist = Math.round(dist/1000)+'km'; + } else if (dist >= 1000) { + dist = Math.round(dist/100)/10+'km'; + } else { + dist = Math.round(dist)+'m'; + } + + return dist; +} + + window.plugin.distanceToPortal.updateDistance = function() { if(!(selectedPortal && portals[selectedPortal])) return; var portal = portals[selectedPortal]; @@ -46,13 +59,7 @@ window.plugin.distanceToPortal.updateDistance = function() { if (window.plugin.distanceToPortal.currentLoc) { var dist = window.plugin.distanceToPortal.currentLoc.distanceTo(ll); - if (dist >= 10000) { - dist = Math.round(dist/1000)+'km'; - } else if (dist >= 1000) { - dist = Math.round(dist/100)/10+'km'; - } else { - dist = Math.round(dist)+'m'; - } + dist = window.plugin.distanceToPortal.formatDistance(dist); var bearing = window.plugin.distanceToPortal.currentLoc.bearingTo(ll); var bearingWord = window.plugin.distanceToPortal.currentLoc.bearingWordTo(ll); @@ -98,6 +105,19 @@ window.plugin.distanceToPortal.setLocation = function() { map.addLayer(window.plugin.distanceToPortal.currentLocMarker); }; +window.plugin.distanceToPortal.setupPortalsList = function() { + if(!window.plugin.portalslist) return; + + window.plugin.portalslist.fields.push({ + title: "Dist", + value: function(portal) { if (window.plugin.distanceToPortal.currentLoc) return window.plugin.distanceToPortal.currentLoc.distanceTo(portal.getLatLng()); else return 0; }, + format: function(cell, portal, dist) { + $(cell).addClass('alignR').text(window.plugin.distanceToPortal.formatDistance(dist)); + } + }); + +} + window.plugin.distanceToPortal.setup = function() { // https://github.com/gregallensworth/Leaflet/ @@ -114,6 +134,9 @@ window.plugin.distanceToPortal.setup = function() { $('