feat(confirmations): a HamQTH default, and the pending status stops meaning 'sent'
HamQTH joins the Confirmations page with a sent side only — the site publishes no confirmation feed, so there is nothing to receive — and it defaults to R, the same 'still to upload' the other online services get. That default could not have worked as written. HamQTH and HAMLOG.online keep their sent state in an ADIF extra, and eligibility blocked on the key being PRESENT — so an operator setting the natural R default would have stamped every new QSO 'already gone' and silently disabled the very auto-upload the default arms. Eligibility now reads the VALUE: the ADIF pending statuses mean pending, anything else means sent. Guard-tested both ways.
This commit is contained in:
@@ -1825,6 +1825,7 @@ function SettingsModalImpl({ onClose, onSaved, initialSection, onMainPaneChanged
|
||||
clublog_status: string; clublog_confirmed: string; hrdlog_status: string; qrzcom_status: string;
|
||||
qrzcom_confirmed: string;
|
||||
hamlog_status: string; hamlog_confirmed: string;
|
||||
hamqth_status: string;
|
||||
};
|
||||
const [qslDefaults, setQslDefaults] = useState<QSLDefaults>({
|
||||
qsl_sent: '', qsl_rcvd: '',
|
||||
@@ -1832,7 +1833,7 @@ function SettingsModalImpl({ onClose, onSaved, initialSection, onMainPaneChanged
|
||||
eqsl_sent: '', eqsl_rcvd: '',
|
||||
clublog_status: '', clublog_confirmed: '', hrdlog_status: '', qrzcom_status: '',
|
||||
qrzcom_confirmed: '',
|
||||
hamlog_status: '', hamlog_confirmed: '',
|
||||
hamlog_status: '', hamlog_confirmed: '', hamqth_status: '',
|
||||
});
|
||||
|
||||
// External services (logbook upload). One block per service; only QRZ is
|
||||
@@ -5755,6 +5756,15 @@ function SettingsModalImpl({ onClose, onSaved, initialSection, onMainPaneChanged
|
||||
{renderSelect('qrzcom_confirmed', FULL_OPTIONS)}
|
||||
</div>
|
||||
</div>
|
||||
{/* HamQTH — no received side: the site has no confirmation feed. */}
|
||||
<div className="grid grid-cols-[150px_1fr_1fr] gap-3 items-end">
|
||||
<Label className="text-sm font-medium pb-1.5">HamQTH</Label>
|
||||
<div>
|
||||
<Label className="text-[10px] text-muted-foreground uppercase tracking-wider mb-1 block">{t('conf.sent')}</Label>
|
||||
{renderSelect('hamqth_status', FULL_OPTIONS)}
|
||||
</div>
|
||||
<div />
|
||||
</div>
|
||||
{/* HAMLOG.online */}
|
||||
<div className="grid grid-cols-[150px_1fr_1fr] gap-3 items-end">
|
||||
<Label className="text-sm font-medium pb-1.5">HAMLOG.online</Label>
|
||||
|
||||
@@ -3302,6 +3302,7 @@ export namespace main {
|
||||
qrzcom_confirmed: string;
|
||||
hamlog_status: string;
|
||||
hamlog_confirmed: string;
|
||||
hamqth_status: string;
|
||||
|
||||
static createFrom(source: any = {}) {
|
||||
return new QSLDefaults(source);
|
||||
@@ -3322,6 +3323,7 @@ export namespace main {
|
||||
this.qrzcom_confirmed = source["qrzcom_confirmed"];
|
||||
this.hamlog_status = source["hamlog_status"];
|
||||
this.hamlog_confirmed = source["hamlog_confirmed"];
|
||||
this.hamqth_status = source["hamqth_status"];
|
||||
}
|
||||
}
|
||||
export class QSLEmailTemplates {
|
||||
|
||||
Reference in New Issue
Block a user