fix: prevent silent muting from hiding pager messages

The "Mute" button on pager cards persists muted addresses to
localStorage with no visible indicator, making it easy to
accidentally hide an address and forget about it. This caused
flag fragment messages on RIC 1337 to silently disappear.

- Add "X muted source(s) — Unmute All" indicator to sidebar
- Stop persisting hideToneOnly filter across sessions so the
  default (show all) always applies on page load
- Remove default checked state from Tone Only filter checkbox

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
ribs
2026-03-03 15:59:42 -08:00
parent 302b150c36
commit ec62cd9083
3 changed files with 42 additions and 2 deletions

View File

@@ -1492,6 +1492,7 @@ const SignalCards = (function() {
muted.push(address);
localStorage.setItem('mutedAddresses', JSON.stringify(muted));
showToast(`Source ${address} hidden from view`);
updateMutedIndicator();
// Hide existing cards with this address
document.querySelectorAll(`.signal-card[data-address="${address}"], .signal-card[data-callsign="${address}"], .signal-card[data-sensor-id="${address}"]`).forEach(card => {
@@ -1510,6 +1511,30 @@ const SignalCards = (function() {
return muted.includes(address);
}
/**
* Unmute all addresses and refresh display
*/
function unmuteAll() {
localStorage.setItem('mutedAddresses', '[]');
updateMutedIndicator();
showToast('All sources unmuted');
// Reload to re-display previously muted messages
location.reload();
}
/**
* Update the muted address count indicator in the sidebar
*/
function updateMutedIndicator() {
const muted = JSON.parse(localStorage.getItem('mutedAddresses') || '[]');
const info = document.getElementById('mutedAddressInfo');
const count = document.getElementById('mutedAddressCount');
if (info && count) {
count.textContent = muted.length;
info.style.display = muted.length > 0 ? 'block' : 'none';
}
}
/**
* Show location on map (for APRS)
*/
@@ -2262,6 +2287,8 @@ const SignalCards = (function() {
copyMessage,
muteAddress,
isAddressMuted,
unmuteAll,
updateMutedIndicator,
showOnMap,
showStationRawData,
showSignalDetails,