fix(chase): band/mode/slot needs finally dim — 'worked' is not ''
spotEntityStatus says 'worked' when every grain is in the log; the unconfirmed check compared its all-ledger verdict against the empty string, so no band/mode/slot need ever dimmed however many unconfirmed QSOs stood behind it — only the entity-level NEW, tested by map presence, behaved. The check now runs for exactly the four needy statuses and asks for 'worked'.
This commit is contained in:
@@ -20590,13 +20590,20 @@ func (a *App) ClusterSpotStatuses(spots []SpotQuery) []SpotStatus {
|
||||
// A need judged against the confirmed ledger that the all-QSO ledger
|
||||
// says was already worked is a missing QSL, and its badge should read
|
||||
// as one. Judged at the SAME grain as the status itself.
|
||||
if idx.chaseUnconf && out[i].Status != "" {
|
||||
if eAll, ok := entities[dxccNum]; ok {
|
||||
_, bAll := eAll.Bands[out[i].Band]
|
||||
_, mAll := eAll.Modes[checkMode]
|
||||
_, sAll := eAll.Slots[out[i].Band][checkMode]
|
||||
if spotEntityStatus(true, bAll, mAll, sAll, out[i].Mode) == "" {
|
||||
out[i].UnconfStatus = true
|
||||
switch out[i].Status {
|
||||
case "new-band-mode", "new-band", "new-mode", "new-slot":
|
||||
if idx.chaseUnconf {
|
||||
if eAll, ok := entities[dxccNum]; ok {
|
||||
_, bAll := eAll.Bands[out[i].Band]
|
||||
_, mAll := eAll.Modes[checkMode]
|
||||
_, sAll := eAll.Slots[out[i].Band][checkMode]
|
||||
// "worked", not "": that is what the verdict function says
|
||||
// when every grain is in the log — the first version
|
||||
// compared against empty and no band/mode/slot need ever
|
||||
// dimmed, however many unconfirmed QSOs stood behind it.
|
||||
if spotEntityStatus(true, bAll, mAll, sAll, out[i].Mode) == "worked" {
|
||||
out[i].UnconfStatus = true
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user