feat(hamlog): mark an already-uploaded log through bulk edit

A log sent to hamlog.online by hand — an ADIF exported from OpsLog and dropped
on their site — had no way of being marked as sent afterwards. The QSL Manager
then listed every one of those contacts as backlog and offered to upload them a
second time.

Both HAMLOG keys join the bulk-editable extras, so a selection (or the whole
log) can be stamped in one pass. They are DATES rather than Y/N flags because
that is the shape the sent stamp already uses: the QSL Manager's backlog asks
whether the key is present, and a date also says when it went.

The test pins that they are reachable through the extras path and NOT offered as
columns — a mapping claiming both would write to a table that has neither.
This commit is contained in:
2026-08-23 13:02:04 +02:00
parent cd557acf81
commit 3f82da3c18
5 changed files with 41 additions and 4 deletions
+7
View File
@@ -909,6 +909,13 @@ func (r *Repo) BulkSetField(ctx context.Context, ids []int64, column, value stri
// column and there is no owner_callsign column.
var bulkEditableExtras = map[string]string{
"owner_callsign": "OWNER_CALLSIGN",
// HAMLOG.online has no promoted column — the ADIF standard defines a field
// for hamlog.EU and none for hamlog.ONLINE. Both directions are editable in
// bulk because a log uploaded to their site BY HAND has to be markable
// afterwards: without it OpsLog would offer to send every one of those
// contacts again.
"hamlog_sent": "APP_OPSLOG_HAMLOG_SENT",
"hamlog_rcvd": "APP_OPSLOG_HAMLOG_QSL",
}
// BulkExtraKey maps a frontend field id to its ADIF key in extras_json, or "".