mirror of
https://github.com/wavelog/wavelog.git
synced 2026-03-22 10:24:14 +00:00
Refactor EQSL-Logic to qso-ID
This commit is contained in:
@@ -183,10 +183,10 @@ class EqslImporter
|
||||
$qsoid = 0;
|
||||
if ($status[0] == "Found") {
|
||||
$qsoid = $status[1];
|
||||
$dupe = $this->CI->eqslmethods_model->eqsl_dupe_check($time_on, $record['call'], $record['band'], $record['mode'], $config['eqsl_rcvd_mark'], $station_callsign, $station_id);
|
||||
$dupe = $this->CI->eqslmethods_model->eqsl_dupe_check($qsoid,$config['eqsl_rcvd_mark']);
|
||||
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_qslrdate, ($record['qslmsg'] ?? null));
|
||||
$eqsl_status = $this->CI->eqslmethods_model->eqsl_update($qsoid, $config['eqsl_rcvd_mark'], $eqsl_qslrdate, ($record['qslmsg'] ?? null));
|
||||
} else {
|
||||
$dupes += 1;
|
||||
$eqsl_status = "Already received an eQSL for this QSO.";
|
||||
|
||||
@@ -505,7 +505,7 @@ 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, $eqsl_qslrdate = null, $qslmsg = null) {
|
||||
function eqsl_update($qsoid, $qsl_status, $eqsl_qslrdate = null, $qslmsg = null) {
|
||||
$data = array(
|
||||
'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,
|
||||
@@ -513,13 +513,7 @@ class Eqslmethods_model extends CI_Model {
|
||||
'COL_QSLMSG_RCVD' => $qslmsg ?? ''
|
||||
);
|
||||
|
||||
$this->db->where('COL_TIME_ON >= DATE_ADD(DATE_FORMAT("' . $datetime . '", \'%Y-%m-%d %H:%i\' ), INTERVAL -15 MINUTE )');
|
||||
$this->db->where('COL_TIME_ON <= DATE_ADD(DATE_FORMAT("' . $datetime . '", \'%Y-%m-%d %H:%i\' ), INTERVAL 15 MINUTE )');
|
||||
$this->db->where('COL_CALL', $callsign);
|
||||
$this->db->where('COL_STATION_CALLSIGN', $station_callsign);
|
||||
$this->db->where('COL_BAND', $band);
|
||||
$this->db->where('COL_MODE', $mode);
|
||||
$this->db->where('station_id', $station_id);
|
||||
$this->db->where('COL_PRIMARY_KEY', $qsoid);
|
||||
|
||||
$this->db->update($this->config->item('table_name'), $data);
|
||||
|
||||
@@ -527,16 +521,10 @@ class Eqslmethods_model extends CI_Model {
|
||||
}
|
||||
|
||||
// Determine if we've already received an eQSL for this QSO
|
||||
function eqsl_dupe_check($datetime, $callsign, $band, $mode, $qsl_status, $station_callsign, $station_id) {
|
||||
function eqsl_dupe_check($qsoid, $qsl_status) {
|
||||
$this->db->select('COL_EQSL_QSLRDATE');
|
||||
$this->db->where('COL_TIME_ON >= DATE_ADD(DATE_FORMAT("' . $datetime . '", \'%Y-%m-%d %H:%i\' ), INTERVAL -15 MINUTE )');
|
||||
$this->db->where('COL_TIME_ON <= DATE_ADD(DATE_FORMAT("' . $datetime . '", \'%Y-%m-%d %H:%i\' ), INTERVAL 15 MINUTE )');
|
||||
$this->db->where('COL_CALL', $callsign);
|
||||
$this->db->where('COL_BAND', $band);
|
||||
$this->db->where('COL_MODE', $mode);
|
||||
$this->db->where('COL_STATION_CALLSIGN', $station_callsign);
|
||||
$this->db->where('COL_PRIMARY_KEY', $qsoid);
|
||||
$this->db->where('COL_EQSL_QSL_RCVD', $qsl_status);
|
||||
$this->db->where('station_id', $station_id);
|
||||
$this->db->limit(1);
|
||||
|
||||
$query = $this->db->get($this->config->item('table_name'));
|
||||
|
||||
Reference in New Issue
Block a user