distance-to-portal plugin: integrate with portals list
This commit is contained in:
parent
052d208783
commit
7157eceae3
@ -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() {
|
||||
$('<style>').prop('type', 'text/css').html('@@INCLUDESTRING:plugins/distance-to-portal.css@@').appendTo('head');
|
||||
|
||||
addHook('portalDetailsUpdated', window.plugin.distanceToPortal.addDistance);
|
||||
|
||||
window.plugin.distanceToPortal.setupPortalsList();
|
||||
|
||||
};
|
||||
|
||||
var setup = window.plugin.distanceToPortal.setup;
|
||||
|
Loading…
x
Reference in New Issue
Block a user