diff --git a/plugins/ap-list.css b/plugins/ap-list.css
index c4857820..ac50002b 100644
--- a/plugins/ap-list.css
+++ b/plugins/ap-list.css
@@ -66,14 +66,12 @@
width: 100%;
}
-.ap-list-checkbox-mid {
+.ap-list-checkbox-inner {
display: table-cell;
vertical-align: middle;
-}
-
-.ap-list-checkbox-inner {
- width: 10px;
- height: 10px;
+ text-align: center;
+ width: 12px;
+ height: 12px;
border: 1px solid rgb(32, 168, 177);
margin: 0 auto;
}
@@ -82,6 +80,13 @@
background-color: rgb(32, 168, 177);
}
+.ap-list-checkbox-header {
+ width: 8px;
+ height: 0px;
+ margin: auto;
+ border: 1px solid rgb(32, 168, 177);
+}
+
.ap-list-link {
white-space: nowrap;
overflow: hidden;
diff --git a/plugins/ap-list.user.js b/plugins/ap-list.user.js
index 3bc172a1..fffce8db 100644
--- a/plugins/ap-list.user.js
+++ b/plugins/ap-list.user.js
@@ -1,7 +1,7 @@
// ==UserScript==
// @id iitc-plugin-ap-list@xelio
// @name IITC plugin: AP List
-// @version 0.5.0.@@DATETIMEVERSION@@
+// @version 0.5.1.@@DATETIMEVERSION@@
// @namespace https://github.com/jonatkins/ingress-intel-total-conversion
// @updateURL @@UPDATEURL@@
// @downloadURL @@DOWNLOADURL@@
@@ -89,11 +89,12 @@ window.plugin.apList.tableHeaderBuilder = function(side) {
var cssClass = column.headerTooltip ? (column.cssClass + ' help') : column.cssClass;
var title = column.headerTooltip ? column.headerTooltip : '';
var onclick = column.headerOnClick ? column.headerOnClick: '';
+ var content = column.headerFunction ? column.headerFunction() : column.header;
headerRow += '
'
- + column.header
+ + content
+ ' | ';
});
@@ -115,17 +116,28 @@ window.plugin.apList.tableRowBuilder = function(side,portal) {
return row;
}
+window.plugin.apList.getHeaderCheckbox = function() {
+ var onClick = 'window.plugin.apList.clearDestroyPortals();';
+ var content = ''
+ var div = plugin.apList.getCheckbox(onClick, null, content);
+ return div;
+}
+
window.plugin.apList.getPortalDestroyCheckbox = function(portal) {
// Change background color to border color if portal selected for destroy
- var checkboxClass = plugin.apList.destroyPortalIndex(portal.guid) >= 0
- ? 'ap-list-checkbox-inner ap-list-checkbox-selected'
- : 'ap-list-checkbox-inner';
+ var addedClass = plugin.apList.destroyPortalIndex(portal.guid) >= 0
+ ? 'ap-list-checkbox-selected' : '';
var onClick = 'window.plugin.apList.destroyPortal(\'' + portal.guid + '\');';
- // 3 div for centering checkbox horizontally and vertically,
+ var div = plugin.apList.getCheckbox(onClick, addedClass, null);
+ return div;
+}
+
+window.plugin.apList.getCheckbox = function(onClick, addedClass, content) {
+ // 2 div for centering checkbox horizontally and vertically,
// click event on outest div for people with not so good aiming
- var div = ''
- + '
'
- + '
'
+ var div = '
'
+ + '
'
+ + (content || '')
+ '
'
+ '
';
return div;
@@ -682,6 +694,13 @@ window.plugin.apList.changeSorting = function(sortBy) {
}
}
+window.plugin.apList.clearDestroyPortals = function() {
+ plugin.apList.destroyPortalsGuid = new Array();
+
+ plugin.apList.updateSortedPortals();
+ plugin.apList.updatePortalTable(plugin.apList.displaySide);
+}
+
window.plugin.apList.destroyPortal = function(guid) {
// Add to destroyPortalsGuid if not yet added, remove if already added
var portalIndex = plugin.apList.destroyPortalIndex(guid);
@@ -796,8 +815,8 @@ window.plugin.apList.setupTableColumns = function() {
// Columns: Checkbox | Portal | AP | Eff. LV
enemyColumns.push({
- header: '',
- headerTooltip: 'Select checkbox to \nsimulating destruction',
+ headerFunction: plugin.apList.getHeaderCheckbox,
+ headerTooltip: 'Unselect all',
cssClass: 'ap-list-td-checkbox',
contentFunction: plugin.apList.getPortalDestroyCheckbox
});