diff --git a/templates/dashboard.html b/templates/dashboard.html
index 5f8543c..f26f28f 100644
--- a/templates/dashboard.html
+++ b/templates/dashboard.html
@@ -70,6 +70,7 @@
+
@@ -224,6 +225,7 @@
var selectAll = document.getElementById('select-all');
var toolbar = document.getElementById('bulk-toolbar');
var countEl = document.getElementById('selected-count');
+var selectAllBtn = document.getElementById('select-all-btn');
function visibleCbs() {
return Array.prototype.filter.call(
@@ -241,6 +243,18 @@ function updateToolbar() {
var visChecked = vis.filter(function(cb) { return cb.checked; });
selectAll.indeterminate = visChecked.length > 0 && visChecked.length < vis.length;
selectAll.checked = vis.length > 0 && visChecked.length === vis.length;
+ if (selectAllBtn) {
+ selectAllBtn.style.display = vis.length > 0 ? '' : 'none';
+ selectAllBtn.textContent = (vis.length > 0 && visChecked.length === vis.length)
+ ? 'Deselect all' : 'Select all';
+ }
+}
+
+function mobileSelectAll() {
+ var vis = visibleCbs();
+ var allChecked = vis.length > 0 && vis.every(function(cb) { return cb.checked; });
+ vis.forEach(function(cb) { cb.checked = !allChecked; });
+ updateToolbar();
}
document.querySelectorAll('.row-cb').forEach(function(cb) {
@@ -340,6 +354,7 @@ function updateBulkField(sel) {
}
// initialise disabled state on page load
document.getElementById('bulk-field-value-brand').disabled = true;
+updateToolbar();
// Column picker
var COL_KEY = 'battery_cols';