Merge pull request #35 from aprsme/fix-packet-spidering-issue

Fix packet spidering to only include most recent markers with icons
This commit is contained in:
Graham McIntire 2025-07-29 12:01:15 -05:00 committed by GitHub
commit 6a8836c962
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -502,8 +502,13 @@ let MapAPRSMap = {
if (self.oms) {
// Clear and re-add all markers to OMS on zoom change
self.oms.clearMarkers();
self.markers.forEach((marker) => {
if (marker && !marker._isHistorical && !marker._isClusterMarker) {
self.markers.forEach((marker, id) => {
const markerState = self.markerStates.get(String(id));
// Only add most recent markers (those with icons) to OMS for spidering
// Fallback: if is_most_recent_for_callsign is undefined, exclude historical markers as before
const shouldAddToOms = markerState?.is_most_recent_for_callsign === true ||
(markerState?.is_most_recent_for_callsign == null && !marker._isHistorical);
if (marker && !marker._isClusterMarker && markerState && shouldAddToOms) {
self.oms.addMarker(marker);
}
});
@ -1547,8 +1552,11 @@ let MapAPRSMap = {
marker.openPopup();
}
// Add to OMS for overlapping marker handling (only non-historical markers)
if (self.oms && marker && self.map && !marker._isClusterMarker && !(marker as APRSMarker)._isHistorical) {
// Add to OMS for overlapping marker handling (only most recent packets with icons)
// Fallback: if is_most_recent_for_callsign is undefined, exclude historical markers as before
const shouldAddToOms = data.is_most_recent_for_callsign === true ||
(data.is_most_recent_for_callsign == null && !(marker as APRSMarker)._isHistorical);
if (self.oms && marker && self.map && !marker._isClusterMarker && shouldAddToOms) {
self.oms.addMarker(marker);
}
},