Use QSLRDATE provided by eqsl.cc (current date only as fallback)

This commit is contained in:
phl0
2024-10-10 08:27:54 +02:00
parent 83a2a0d0a8
commit 0a901dc979
2 changed files with 10 additions and 3 deletions

View File

@@ -163,6 +163,13 @@ class EqslImporter
$record['qsl_sent'] = $config['eqsl_rcvd_mark'];
}
// eQSL now provides EQSL_QSLRDATE so we can use it if it is present
if ((array_key_exists('eqsl_qslrdate', $record)) && ($record['eqsl_qslrdate'] != '')) {
$eqsl_qslrdate = $record['eqsl_qslrdate'];
} else {
$eqsl_qslrdate = date('Y-m-d');
}
$status = $this->CI->logbook_model->import_check($time_on, $record['call'], $record['band'], $record['mode'], $station_callsign, $station_id);
$qsoid = 0;
if ($status[0] == "Found") {
@@ -170,7 +177,7 @@ class EqslImporter
$dupe = $this->CI->eqslmethods_model->eqsl_dupe_check($time_on, $record['call'], $record['band'], $record['mode'], $config['eqsl_rcvd_mark'], $station_callsign, $station_id);
if ($dupe == false) {
$updated += 1;
$eqsl_status = $this->CI->eqslmethods_model->eqsl_update($time_on, $record['call'], $record['band'], $record['mode'], $config['eqsl_rcvd_mark'], $station_callsign, $station_id);
$eqsl_status = $this->CI->eqslmethods_model->eqsl_update($time_on, $record['call'], $record['band'], $record['mode'], $config['eqsl_rcvd_mark'], $station_callsign, $station_id, $eqsl_qslrdate);
} else {
$dupes += 1;
$eqsl_status = "Already received an eQSL for this QSO.";

View File

@@ -505,9 +505,9 @@ class Eqslmethods_model extends CI_Model {
// We could also probably use this:
// https://eqsl.cc/qslcard/VerifyQSO.txt
// https://www.eqsl.cc/qslcard/ImportADIF.txt
function eqsl_update($datetime, $callsign, $band, $mode, $qsl_status, $station_callsign, $station_id) {
function eqsl_update($datetime, $callsign, $band, $mode, $qsl_status, $station_callsign, $station_id, $eqsl_qslrdate = null) {
$data = array(
'COL_EQSL_QSLRDATE' => date('Y-m-d H:i:s'), // eQSL doesn't give us a date, so let's use current
'COL_EQSL_QSLRDATE' => $eqsl_qslrdate ?? date('Y-m-d'), // eQSL gives a date now. Use current date as fallback only
'COL_EQSL_QSL_RCVD' => $qsl_status
);