fix(dxcc): /MM and /AM belong to no entity
RI1FJL/MM resolved to Franz Josef Land while the expedition was still sailing there, telling the operator they had worked an entity they had not. The old behaviour was deliberate — the comment read "strict DXCC says no entity, but the log should still show the operator's country" — and that is wrong for exactly this reason. A home country on a maritime mobile is not extra information; it is a false claim about where the contact happened, and it is the kind of false claim that gets a QSO submitted for an award it cannot win. Trailing only. A LEADING "MM" is the Scotland prefix and "AM" is Spain, so MM0ABC and AM5X keep their entities — getting that wrong would be a far larger error than the one being fixed. /P, /M and /B are unaffected: a portable station is still ashore. In the cluster the column says "Maritime mobile — no DXCC" rather than going blank, because blank is what an UNRESOLVED spot looks like and the two mean opposite things — one is "we don't know yet", this is "there is nothing to know". Display only: the QSO's own Country stays empty, since that field holds a DXCC entity name and there is none.
This commit is contained in:
@@ -17452,6 +17452,16 @@ func (a *App) ClusterSpotStatuses(spots []SpotQuery) []SpotStatus {
|
||||
if a.dxcc == nil {
|
||||
continue
|
||||
}
|
||||
// Say WHY a maritime/aeronautical mobile has no entity, rather than
|
||||
// leaving the column blank — blank is what an unresolved spot looks like,
|
||||
// and the two mean opposite things: one is "we don't know yet", this is
|
||||
// "there is nothing to know, the station is at sea". Display only: the
|
||||
// QSO's own Country stays empty, because it is a DXCC entity name and
|
||||
// there is none.
|
||||
if dxcc.IsMobileNoEntity(q.Call) {
|
||||
out[i].Country = "Maritime mobile — no DXCC"
|
||||
continue
|
||||
}
|
||||
m, ok := a.dxcc.Lookup(q.Call)
|
||||
if !ok || m.Entity == nil {
|
||||
continue
|
||||
|
||||
Reference in New Issue
Block a user