mirror of
https://github.com/wavelog/wavelog.git
synced 2026-03-22 10:24:14 +00:00
Merge pull request #61 from phl0/fixAdifFence
Apply LoTW verifications to eQSL also
This commit is contained in:
@@ -4717,8 +4717,6 @@ class Logbook_model extends CI_Model {
|
||||
$input_lotw_qslrdate = $record['lotw_qslrdate'];
|
||||
} else {
|
||||
$input_lotw_qslrdate = NULL;
|
||||
$my_error .= "Error QSO: Date: " . $time_on . " Callsign: " . $record['call'] . " ".__("the lotw_qslrdate is invalid (YYYYMMDD)").": " . $record['lotw_qslrdate'] . "; " . __("LoTW Rcvd status will be reset.") . "<br>";
|
||||
$input_lotw_qsl_rcvd = NULL;
|
||||
}
|
||||
} else {
|
||||
$input_lotw_qslrdate = NULL;
|
||||
@@ -4742,13 +4740,56 @@ class Logbook_model extends CI_Model {
|
||||
$input_lotw_qslsdate = $record['lotw_qslsdate'];
|
||||
} else {
|
||||
$input_lotw_qslsdate = NULL;
|
||||
$my_error .= "Error QSO: Date: " . $time_on . " Callsign: " . $record['call'] . " ".__("the lotw_qslsdate is invalid (YYYYMMDD)").": " . $record['lotw_qslsdate'] . "; " . __("LoTW Sent status will be reset.") . "<br>";
|
||||
$input_lotw_qsl_sent = NULL;
|
||||
}
|
||||
} else {
|
||||
$input_lotw_qslsdate = NULL;
|
||||
}
|
||||
|
||||
/**
|
||||
* Validate eQSL Fields
|
||||
*/
|
||||
if (isset($record['eqsl_qsl_rcvd'])) {
|
||||
$input_eqsl_qsl_rcvd = mb_strimwidth($record['eqsl_qsl_rcvd'], 0, 1);
|
||||
} else {
|
||||
$input_eqsl_qsl_rcvd = NULL;
|
||||
}
|
||||
|
||||
// eqsl_qslrdate can obly be valid if EQSL_QSL_RCVD is one of the following values
|
||||
// ref: https://www.adif.org.uk/316/ADIF_316.htm#QSO_Field_EQSL_QSLRDATE
|
||||
$valid_eqsl_rcvd = ['Y', 'I', 'V'];
|
||||
if (($record['eqsl_qslrdate'] ?? '') != '' && in_array(strtoupper($input_eqsl_qsl_rcvd ?? ''), $valid_eqsl_rcvd)) {
|
||||
if (validateADIFDate($record['eqsl_qslrdate']) == true) {
|
||||
$input_eqsl_qslrdate = $record['eqsl_qslrdate'];
|
||||
} else {
|
||||
$input_eqsl_qslrdate = NULL;
|
||||
}
|
||||
} else {
|
||||
$input_eqsl_qslrdate = NULL;
|
||||
}
|
||||
|
||||
if ($markEqsl != NULL) {
|
||||
$input_eqsl_qsl_sent = 'Y';
|
||||
} elseif (isset($record['eqsl_qsl_sent'])) {
|
||||
$input_eqsl_qsl_sent = mb_strimwidth($record['eqsl_qsl_sent'], 0, 1);
|
||||
} else {
|
||||
$input_eqsl_qsl_sent = NULL;
|
||||
}
|
||||
|
||||
// eqsl_qslsdate can obly be valid if eqsl_qsl_sent is one of the following values
|
||||
// ref: https://www.adif.org.uk/316/ADIF_316.htm#QSO_Field_EQSL_QSLSDATE
|
||||
$valid_eqsl_sent = ['Y', 'Q', 'I'];
|
||||
if ($markEqsl != NULL) {
|
||||
$input_eqsl_qslsdate = $date = date("Y-m-d H:i:s", strtotime("now"));
|
||||
} elseif (($record['eqsl_qslsdate'] ?? '') != '' && in_array(strtoupper($input_eqsl_qsl_sent), $valid_eqsl_sent)) {
|
||||
if (validateADIFDate($record['eqsl_qslsdate']) == true) {
|
||||
$input_eqsl_qslsdate = $record['eqsl_qslsdate'];
|
||||
} else {
|
||||
$input_eqsl_qslsdate = NULL;
|
||||
}
|
||||
} else {
|
||||
$input_eqsl_qslsdate = NULL;
|
||||
}
|
||||
|
||||
// Get active station_id from station profile if one hasn't been provided
|
||||
if ($station_id == "" || $station_id == "0") {
|
||||
$this->load->model('stations');
|
||||
@@ -4779,28 +4820,6 @@ class Logbook_model extends CI_Model {
|
||||
$input_qrzcom_qso_upload_status = (!empty($record['qrzcom_qso_upload_status'])) ? $record['qrzcom_qso_upload_status'] : '';
|
||||
}
|
||||
|
||||
if ($markEqsl != null) {
|
||||
$input_eqsl_qso_upload_status = 'Y';
|
||||
$input_eqsl_qso_upload_date = $date = date("Y-m-d H:i:s", strtotime("now"));
|
||||
} else {
|
||||
if (validateADIFDate($record['eqsl_qslsdate'] ?? '') == false) {
|
||||
$input_eqsl_qso_upload_date = null;
|
||||
$my_error .= "Error QSO: Date: " . $time_on . " Callsign: " . $record['call'] . " ".__("the eqsl_qslsdate is invalid (YYYYMMDD)").": " . ($record['eqsl_qslsdate'] ?? '') . "<br>";
|
||||
} else {
|
||||
$input_eqsl_qso_upload_date = (!empty($record['eqsl_qslsdate'])) ? $record['eqsl_qslsdate'] : null;
|
||||
}
|
||||
$input_eqsl_qso_upload_status = (!empty($record['eqsl_qsl_sent'])) ? $record['eqsl_qsl_sent'] : '';
|
||||
}
|
||||
|
||||
if (validateADIFDate($record['eqsl_qslrdate'] ?? '') == false) {
|
||||
$input_eqsl_qslrdate = null;
|
||||
$my_error .= "Error QSO: Date: " . $time_on . " Callsign: " . $record['call'] . " ".__("the eqsl_qslrdate is invalid (YYYYMMDD)").": " . ($record['eqsl_qslrdate'] ?? '') . "<br>";
|
||||
} else {
|
||||
$input_eqsl_qslrdate = (!empty($record['eqsl_qslrdate'])) ? $record['eqsl_qslrdate'] : null;
|
||||
}
|
||||
|
||||
|
||||
|
||||
if ($markDcl != null) {
|
||||
$input_dcl_qso_upload_status = 'Y';
|
||||
$input_dcl_qso_upload_date = $date = date("Y-m-d H:i:s", strtotime("now"));
|
||||
@@ -4853,10 +4872,10 @@ class Logbook_model extends CI_Model {
|
||||
'COL_DXCC' => $dxcc[0],
|
||||
'COL_EMAIL' => (!empty($record['email'])) ? $record['email'] : '',
|
||||
'COL_EQ_CALL' => (!empty($record['eq_call'])) ? $record['eq_call'] : '',
|
||||
'COL_EQSL_QSL_RCVD' => (!empty($record['eqsl_qsl_rcvd'])) ? $record['eqsl_qsl_rcvd'] : null,
|
||||
'COL_EQSL_QSL_SENT' => $input_eqsl_qso_upload_status,
|
||||
'COL_EQSL_QSL_RCVD' => $input_eqsl_qsl_rcvd,
|
||||
'COL_EQSL_QSL_SENT' => $input_eqsl_qsl_sent,
|
||||
'COL_EQSL_QSLRDATE' => $input_eqsl_qslrdate,
|
||||
'COL_EQSL_QSLSDATE' => $input_eqsl_qso_upload_date,
|
||||
'COL_EQSL_QSLSDATE' => $input_eqsl_qslsdate,
|
||||
'COL_EQSL_STATUS' => (!empty($record['eqsl_status'])) ? $record['eqsl_status'] : '',
|
||||
'COL_EQSL_AG' => (!empty($record['eqsl_ag'])) ? $record['eqsl_ag'] : '',
|
||||
'COL_FISTS' => (!empty($record['fists'])) ? $record['fists'] : null,
|
||||
|
||||
Reference in New Issue
Block a user