Merge branch 'master' into highlighter

This commit is contained in:
Jeremy Lindgren
2013-04-15 09:09:12 -05:00
31 changed files with 8852 additions and 181 deletions

View File

@ -200,7 +200,7 @@ window.plugin.apList.getPortalLink = function(portal) {
var latlng = [portal.locationE6.latE6/1E6, portal.locationE6.lngE6/1E6].join();
var jsSingleClick = 'window.plugin.apList.selectPortal(\''+portal.guid+'\');return false';
var jsDoubleClick = 'window.zoomToAndShowPortal(\''+portal.guid+'\', ['+latlng+']);return false';
var perma = 'https://ingress.com/intel?latE6='+portal.locationE6.latE6
var perma = '/intel?latE6='+portal.locationE6.latE6
+'&lngE6='+portal.locationE6.lngE6+'&z=17&pguid='+portal.guid;
//Use Jquery to create the link, which escape characters in TITLE and ADDRESS of portal
var a = $('<a>',{

View File

@ -0,0 +1,25 @@
// ==UserScript==
// @id force-https@jonatkins
// @name IITC plugin: force https access for ingress.com/intel
// @version 0.1.0.@@DATETIMEVERSION@@
// @namespace https://github.com/jonatkins/ingress-intel-total-conversion
// @updateURL @@UPDATEURL@@
// @downloadURL @@DOWNLOADURL@@
// @description [@@BUILDNAME@@-@@BUILDDATE@@] Force https access for ingress.com/intel. If the intel site is accessed via http, it redirects to the https version
// @include https://www.ingress.com/intel*
// @include http://www.ingress.com/intel*
// @match https://www.ingress.com/intel*
// @match http://www.ingress.com/intel*
// ==/UserScript==
//NOTE: plugin authors - due to the unique requirements of this plugin, it doesn't use the standard IITC
//plugin architechure. do NOT use it as a template for other plugins
if(window.location.protocol !== 'https:') {
var redir = window.location.href.replace(/^http:/, 'https:');
window.location = redir;
throw('Need to load HTTPS version.');
}

View File

@ -23,7 +23,7 @@ if(typeof window.plugin !== 'function') window.plugin = function() {};
window.plugin.guessPlayerLevels = function() {};
window.plugin.guessPlayerLevels.setupCallback = function() {
$('#toolbox').append('<a onclick="window.plugin.guessPlayerLevels.guess()">guess player levels</a> ');
$('#toolbox').append(' <a onclick="window.plugin.guessPlayerLevels.guess()" title="Show player level guesses based on resonator placement in displayed portals">Guess player levels</a>');
addHook('portalAdded', window.plugin.guessPlayerLevels.extractPortalData);
}

View File

@ -1,7 +1,7 @@
// ==UserScript==
// @id iitc-plugin-ipas-link@graphracer
// @name IITC Plugin: simulate an attack on portal
// @version 0.1.0.@@DATETIMEVERSION@@
// @version 0.1.1.@@DATETIMEVERSION@@
// @namespace https://github.com/xosofox/IPAS
// @updateURL @@UPDATEURL@@
// @downloadURL @@DOWNLOADURL@@
@ -23,19 +23,23 @@ if(typeof window.plugin !== 'function') window.plugin = function() {};
window.plugin.ipasLink = function() {};
window.plugin.ipasLink.setupCallback = function() {
addHook('portalDetailsUpdated', window.plugin.ipasLink.addLink);
addHook('portalDetailsUpdated', window.plugin.ipasLink.addLink);
}
window.plugin.ipasLink.addLink = function(d) {
$('.linkdetails').append('<aside style="text-align: center; display: block"><a href="http://ipas.graphracer.com/index.html#' + window.plugin.ipasLink.getHash(d.portalDetails) + '" target="ipaswindow">simulate attack with IPAS</a></aside>');
$('.linkdetails').append('<aside><a href="http://ipas.graphracer.com/index.html#' + window.plugin.ipasLink.getHash(d.portalDetails) + '" target="ipaswindow" title="Use IAPS to simulate an attack on this portal">Simulate attack</a></aside>');
}
window.plugin.ipasLink.getHash = function(d) {
var hashParts=[];
$.each(d.resonatorArray.resonators, function(ind, reso) {
hashParts.push(reso.level + "," + reso.distanceToPortal + "," + reso.energyTotal);
});
return hashParts.join(";")+"|" + "0,0,0,0"; //shields not implemented yet
var hashParts=[];
$.each(d.resonatorArray.resonators, function(ind, reso) {
if (reso) {
hashParts.push(reso.level + "," + reso.distanceToPortal + "," + reso.energyTotal);
} else {
hashParts.push(1 + "," + 35 + "," + 0); // Dummy values, the only important one is energy=0
}
});
return hashParts.join(";")+"|" + "0,0,0,0"; //shields not implemented yet
}
var setup = function() {
@ -57,4 +61,3 @@ if(window.iitcLoaded && typeof setup === 'function') {
var script = document.createElement('script');
script.appendChild(document.createTextNode('('+ wrapper +')();'));
(document.body || document.head || document.documentElement).appendChild(script);

View File

@ -62,6 +62,8 @@ window.plugin.playerTracker.setup = function() {
window.plugin.playerTracker.zoomListener();
});
window.plugin.playerTracker.zoomListener();
plugin.playerTracker.setupUserSearch();
}
window.plugin.playerTracker.stored = {};
@ -264,6 +266,7 @@ window.plugin.playerTracker.drawData = function() {
if(window.plugin.guessPlayerLevels !== undefined &&
window.plugin.guessPlayerLevels.fetchLevelByPlayer !== undefined) {
var playerLevel = window.plugin.guessPlayerLevels.fetchLevelByPlayer(pguid);
if (playerLevel === undefined) playerLevel = 1; //if player level unknown, assume level 1
if(playerLevel !== undefined) {
title += '<span style="font-weight:bold;margin-left:10px;">Level '
+ playerLevel
@ -341,8 +344,57 @@ window.plugin.playerTracker.handleData = function(data) {
plugin.playerTracker.drawData();
}
window.plugin.playerTracker.findUserPosition = function(nick) {
nick = nick.toLowerCase();
var foundPlayerData = undefined;
$.each(plugin.playerTracker.stored, function(pguid, playerData) {
if (playerData.nick.toLowerCase() === nick) {
foundPlayerData = playerData;
return false;
}
});
if (!foundPlayerData) {
return false;
}
var evtsLength = foundPlayerData.events.length;
var last = foundPlayerData.events[evtsLength-1];
return plugin.playerTracker.getLatLngFromEvent(last);
}
window.plugin.playerTracker.centerMapOnUser = function(nick) {
var position = plugin.playerTracker.findUserPosition(nick);
if (position === false) {
return false;
}
map.setView(position, map.getZoom());
}
window.plugin.playerTracker.onNicknameClicked = function(info) {
if (info.event.ctrlKey) {
plugin.playerTracker.centerMapOnUser(info.nickname);
return false;
}
}
window.plugin.playerTracker.onGeoSearch = function(search) {
if (/^@/.test(search)) {
plugin.playerTracker.centerMapOnUser(search.replace(/^@/, ''));
return false;
}
}
window.plugin.playerTracker.setupUserSearch = function() {
addHook('nicknameClicked', window.plugin.playerTracker.onNicknameClicked);
addHook('geoSearch', window.plugin.playerTracker.onGeoSearch);
var geoSearch = $('#geosearch');
var beforeEllipsis = /(.*)…/.exec(geoSearch.attr('placeholder'))[1];
geoSearch.attr('placeholder', beforeEllipsis + ' or @player…');
}
var setup = plugin.playerTracker.setup;

View File

@ -1,7 +1,7 @@
// ==UserScript==
// @id iitc-plugin-portals-count@yenky
// @name IITC plugin: Show total counts of portals
// @version 0.0.6.@@DATETIMEVERSION@@
// @version 0.0.7.@@DATETIMEVERSION@@
// @namespace https://github.com/jonatkins/ingress-intel-total-conversion
// @updateURL @@UPDATEURL@@
// @downloadURL @@DOWNLOADURL@@
@ -99,8 +99,7 @@ window.plugin.portalcounts.getPortals = function(){
}
var setup = function() {
$('body').append('<div id="portalcounts" style="display:none;"></div>');
$('#toolbox').append('<a onclick="window.plugin.portalcounts.getPortals()">Portalcounts</a>');
$('#toolbox').append(' <a onclick="window.plugin.portalcounts.getPortals()" title="Display a summary of portals in the current view">Portal counts</a>');
$('head').append('<style>' +
'#portalcounts table {margin-top:5px; border-collapse: collapse; empty-cells: show; width:100%; clear: both;}' +
'#portalcounts table td, #portalcounts table th {border-bottom: 1px solid #0b314e; padding:3px; color:white; background-color:#1b415e}' +

View File

@ -1,7 +1,7 @@
// ==UserScript==
// @id iitc-plugin-portals-list@teo96
// @name IITC plugin: show list of portals
// @version 0.0.9.@@DATETIMEVERSION@@
// @version 0.0.10.@@DATETIMEVERSION@@
// @namespace https://github.com/jonatkins/ingress-intel-total-conversion
// @updateURL @@UPDATEURL@@
// @downloadURL @@DOWNLOADURL@@
@ -119,7 +119,7 @@ window.plugin.portalslist.displayPL = function() {
} else {
html = '<table><tr><td>Nothing to Show !</td></tr></table>';
};
alert('<div id="portalslist">' + html + '</div>');
alert('<div id="portalslist">' + html + '</div>', true, function() {$(".ui-dialog").removeClass('ui-dialog-portalslist');});
$(".ui-dialog").addClass('ui-dialog-portalslist');
// Setup sorting
@ -353,7 +353,7 @@ window.plugin.portalslist.exportKML = function(){
// description contain picture of the portal, address and link to the Intel map
var description = '<![CDATA['
+ '<div><table><tr><td><img style="width:100px" src="' + portal.img + '"></td><td>' + portal.address
+ '<br><a href="https://ingress.com/intel?latE6=' + portal.lat*1E6 + '&lngE6=' + portal.lng*1E6 + '&z=17">Link to Intel Map</a></td></tr></table>'
+ '<br><a href="https://www.ingress.com/intel?latE6=' + portal.lat*1E6 + '&lngE6=' + portal.lng*1E6 + '&z=17">Link to Intel Map</a></td></tr></table>'
+ ']]>';
kml += '<Placemark><name>L' + Math.floor(portal.level) + ' - ' + portal.name + '</name>'
@ -387,7 +387,7 @@ window.plugin.portalslist.getPortalLink = function(portal,guid) {
var latlng = [portal.locationE6.latE6/1E6, portal.locationE6.lngE6/1E6].join();
var jsSingleClick = 'window.renderPortalDetails(\''+guid+'\');return false';
var jsDoubleClick = 'window.zoomToAndShowPortal(\''+guid+'\', ['+latlng+']);return false';
var perma = 'https://ingress.com/intel?latE6='+portal.locationE6.latE6+'&lngE6='+portal.locationE6.lngE6+'&z=17&pguid='+guid;
var perma = '/intel?latE6='+portal.locationE6.latE6+'&lngE6='+portal.locationE6.lngE6+'&z=17&pguid='+guid;
//Use Jquery to create the link, which escape characters in TITLE and ADDRESS of portal
var a = $('<a>',{
@ -403,8 +403,7 @@ window.plugin.portalslist.getPortalLink = function(portal,guid) {
}
var setup = function() {
$('body').append('<div id="portalslist" style="display:none;"></div>');
$('#toolbox').append('<a onclick="window.plugin.portalslist.displayPL(0)">Portals List</a>');
$('#toolbox').append(' <a onclick="window.plugin.portalslist.displayPL(0)" title="Display a list of portals in the current view">Portals list</a>');
$('head').append('<style>' +
'.ui-dialog-portalslist {position: absolute !important; top: 10px !important; left: 30px !important;max-width:800px !important; width:733px !important;}' +
'#portalslist table {margin-top:5px; border-collapse: collapse; empty-cells: show; width:100%; clear: both;}' +

View File

@ -1,7 +1,7 @@
// ==UserScript==
// @id iitc-plugin-scoreboard@vita10gy
// @name IITC plugin: show a localized scoreboard.
// @version 0.1.5.@@DATETIMEVERSION@@
// @version 0.1.6.@@DATETIMEVERSION@@
// @namespace https://github.com/jonatkins/ingress-intel-total-conversion
// @updateURL @@UPDATEURL@@
// @downloadURL @@DOWNLOADURL@@
@ -362,7 +362,7 @@ window.plugin.scoreboard.display = function() {
scoreHtml += 'You need something in view.';
}
alert('<div id="scoreboard">' + scoreHtml + '</div>');
alert('<div id="scoreboard">' + scoreHtml + '</div>', true, function() {$(".ui-dialog").removeClass('ui-dialog-scoreboard');});
$(".ui-dialog").addClass('ui-dialog-scoreboard');
// Setup sorting
@ -389,8 +389,7 @@ window.plugin.scoreboard.fieldArea = function(field) {
}
var setup = function() {
$('body').append('<div id="scoreboard" style="display:none;"></div>');
$('#toolbox').append('<a onclick="window.plugin.scoreboard.display()">scoreboard</a>');
$('#toolbox').append(' <a onclick="window.plugin.scoreboard.display()" title="Display a scoreboard per team for the current view">Scoreboard</a>');
$('head').append('<style>' +
'.ui-dialog-scoreboard {max-width:600px !important; width:600px !important;}' +
'#scoreboard table {margin-top:10px; border-collapse: collapse; empty-cells: show; width:100%; clear: both;}' +

View File

@ -1,7 +1,7 @@
// ==UserScript==
// @id iitc-plugin-show-linked-portals@fstopienski
// @name IITC plugin: Show linked portals
// @version 0.0.3.@@DATETIMEVERSION@@
// @version 0.0.4.@@DATETIMEVERSION@@
// @namespace https://github.com/jonatkins/ingress-intel-total-conversion
// @updateURL @@UPDATEURL@@
// @downloadURL @@DOWNLOADURL@@
@ -100,10 +100,10 @@ var setup = function () {
'.showLinkedPortalLink9,.showLinkedPortalLink10,.showLinkedPortalLink11,.showLinkedPortalLink12 {left: 59px}' +
'.showLinkedPortalLink13,.showLinkedPortalLink14,.showLinkedPortalLink15,.showLinkedPortalLink16 {right: 65px}' +
'.showLinkedPortalLink1,.showLinkedPortalLink5,.showLinkedPortalLink9,.showLinkedPortalLink13 {top: 100px; }' +
'.showLinkedPortalLink2,.showLinkedPortalLink6,.showLinkedPortalLink10,.showLinkedPortalLink14 {top: 144px; }' +
'.showLinkedPortalLink3,.showLinkedPortalLink7,.showLinkedPortalLink11,.showLinkedPortalLink15 {top: 188px; }' +
'.showLinkedPortalLink4,.showLinkedPortalLink8,.showLinkedPortalLink12,.showLinkedPortalLink16 {top: 232px; }' +
'.showLinkedPortalLink1,.showLinkedPortalLink5,.showLinkedPortalLink9,.showLinkedPortalLink13 {top: 25px; }' +
'.showLinkedPortalLink2,.showLinkedPortalLink6,.showLinkedPortalLink10,.showLinkedPortalLink14 {top: 69px; }' +
'.showLinkedPortalLink3,.showLinkedPortalLink7,.showLinkedPortalLink11,.showLinkedPortalLink15 {top: 113px; }' +
'.showLinkedPortalLink4,.showLinkedPortalLink8,.showLinkedPortalLink12,.showLinkedPortalLink16 {top: 157px; }' +
'#level{text-align:center; margin-right: 0px;}' +
'</style>');
window.plugin.showLinkedPortal.setupCallback();