+
diff --git a/assets/js/sections/logbookadvanced.js b/assets/js/sections/logbookadvanced.js
index 16c76ea3f..5babec70c 100644
--- a/assets/js/sections/logbookadvanced.js
+++ b/assets/js/sections/logbookadvanced.js
@@ -188,6 +188,7 @@ $(document).ready(function () {
state: this.state.value,
qsoresults: this.qsoResults.value,
sats: this.sats.value,
+ cqzone: this.cqzone.value,
lotwSent: this.lotwSent.value,
lotwReceived: this.lotwReceived.value,
eqslSent: this.eqslSent.value,
@@ -359,6 +360,68 @@ $(document).ready(function () {
handleQslReceived('Y','D', 'receivedDirect');
});
+ $('#searchGridsquare').click(function (event) {
+ quickSearch('gridsquare');
+ });
+
+ $('#searchState').click(function (event) {
+ quickSearch('state');
+ });
+
+ $('#searchIota').click(function (event) {
+ quickSearch('iota');
+ });
+
+ $('#searchDxcc').click(function (event) {
+ quickSearch('dxcc');
+ });
+
+ $('#searchCallsign').click(function (event) {
+ quickSearch('dx');
+ });
+
+ $('#searchCqZone').click(function (event) {
+ quickSearch('cqzone');
+ });
+
+ $('#searchMode').click(function (event) {
+ quickSearch('mode');
+ });
+
+ $('#searchBand').click(function (event) {
+ quickSearch('band');
+ });
+
+ function quickSearch(type) {
+ var elements = $('#qsoList tbody input:checked');
+ var nElements = elements.length;
+ if (nElements == 0) {
+ return;
+ }
+ if (nElements > 1) {
+ alert("Only 1 row can be selected");
+ //popup message that only 1 row can be selected
+ }
+ elements.each(function() {
+ var currentRow = $(this).first().closest('tr');
+ var col1 = '';
+ switch (type) {
+ case 'dxcc': col1 = currentRow.find("td:eq(16)").html(); col1 = col1.match(/\d/g); col1 = col1.join("");break;
+ case 'dx': col1 = currentRow.find("td:eq(3)").text(); col1 = col1.match(/^([^\s]+)/gm); break;
+ case 'iota': col1 = currentRow.find("td:eq(19)").text(); col1 = col1.trim(); break;
+ case 'state': col1 = currentRow.find("td:eq(17)").text(); break;
+ case 'cqzone': col1 = currentRow.find("td:eq(18)").text(); break;
+ case 'gridsquare': col1 = $(currentRow).find('#dxgrid').text(); col1 = col1.substring(0, 4); break;
+ case 'mode': col1 = currentRow.find("td:eq(4)").text(); break;
+ case 'band': col1 = currentRow.find("td:eq(7)").text(); col1 = col1.match(/\S\w*/); break;
+ }
+ if (col1.length == 0) return;
+ $('#searchForm').trigger("reset");
+ $("#"+type).val(col1);
+ $('#searchForm').submit();
+ });
+ }
+
$('#printLabel').click(function (event) {
var elements = $('#qsoList tbody input:checked');
var nElements = elements.length;
diff --git a/src/QSLManager/QSO.php b/src/QSLManager/QSO.php
index 0e96988a3..472fe629f 100644
--- a/src/QSLManager/QSO.php
+++ b/src/QSLManager/QSO.php
@@ -841,9 +841,9 @@ class QSO
{
$refs = [];
if ($this->dxVUCCGridsquares !== '') {
- $refs[] = $this->dxVUCCGridsquares . ' ' .$this->getQrbLink($this->stationGridsquare, $this->dxVUCCGridsquares, $this->dxGridsquare);
+ $refs[] = '
' . $this->dxVUCCGridsquares . ' ' .$this->getQrbLink($this->stationGridsquare, $this->dxVUCCGridsquares, $this->dxGridsquare);
} else if ($this->dxGridsquare !== '') {
- $refs[] = $this->dxGridsquare . ' ' .$this->getQrbLink($this->stationGridsquare, $this->dxVUCCGridsquares, $this->dxGridsquare);
+ $refs[] = '
' . $this->dxGridsquare . ' ' .$this->getQrbLink($this->stationGridsquare, $this->dxVUCCGridsquares, $this->dxGridsquare);
}
if ($this->dxSOTAReference !== '') {
$refs[] = "SOTA:" . $this->dxSOTAReference;
From 4546fa8143914a22ec8ad9acd0b21165b5ee080d Mon Sep 17 00:00:00 2001
From: Luca <61653175+iu2frl@users.noreply.github.com>
Date: Wed, 5 Jul 2023 09:50:29 +0200
Subject: [PATCH 02/10] Removing index.php in directory and URL in case of
configuration error
---
install/index.php | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/install/index.php b/install/index.php
index 55d2ecdff..cc0e5d8bf 100644
--- a/install/index.php
+++ b/install/index.php
@@ -131,8 +131,8 @@ if($_POST) {
From 646bf737e0dd995e88e43f5df43d184b5d1e6934 Mon Sep 17 00:00:00 2001
From: Peter Goodhall
Date: Wed, 5 Jul 2023 11:34:00 +0100
Subject: [PATCH 03/10] [Update] Fixed Typo
---
application/controllers/Update.php | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/application/controllers/Update.php b/application/controllers/Update.php
index 59c914de2..cd56804c3 100644
--- a/application/controllers/Update.php
+++ b/application/controllers/Update.php
@@ -189,7 +189,7 @@ class Update extends CI_Controller {
gzclose($gz);
if (file_put_contents($this->make_update_path("cty.xml"), $data) === FALSE) {
- $this->update_status("FAILED: Could not write to LoTW users file");
+ $this->update_status("FAILED: Could not write to cty.xml file");
return;
}
From 6430ad56921b1767bfce48b3045ea4d1b3b0c536 Mon Sep 17 00:00:00 2001
From: Andreas <6977712+AndreasK79@users.noreply.github.com>
Date: Wed, 5 Jul 2023 12:51:49 +0200
Subject: [PATCH 04/10] [Advanced Logbook] Fixed Quickfilters if eQSL or LoTW
columns are hidden
---
assets/js/sections/logbookadvanced.js | 16 ++++++++++++----
src/QSLManager/QSO.php | 2 +-
2 files changed, 13 insertions(+), 5 deletions(-)
diff --git a/assets/js/sections/logbookadvanced.js b/assets/js/sections/logbookadvanced.js
index 5babec70c..f8a8397f5 100644
--- a/assets/js/sections/logbookadvanced.js
+++ b/assets/js/sections/logbookadvanced.js
@@ -402,15 +402,23 @@ $(document).ready(function () {
alert("Only 1 row can be selected");
//popup message that only 1 row can be selected
}
+ var offset = 0;
+
+ if (!$(".eqslconfirmation")[0]){
+ offset--;
+ }
+ if (!$(".lotwconfirmation")[0]){
+ offset--;
+ }
elements.each(function() {
var currentRow = $(this).first().closest('tr');
var col1 = '';
switch (type) {
- case 'dxcc': col1 = currentRow.find("td:eq(16)").html(); col1 = col1.match(/\d/g); col1 = col1.join("");break;
+ case 'dxcc': var tdoffset = (offset + 16); col1 = currentRow.find("td:eq("+tdoffset+")").html(); col1 = col1.match(/\d/g); col1 = col1.join(""); break;
+ case 'cqzone': var tdoffset = (offset + 18); col1 = currentRow.find("td:eq("+tdoffset+")").text(); break;
+ case 'iota': var tdoffset = (offset + 19); col1 = currentRow.find("td:eq("+tdoffset+")").text(); col1 = col1.trim(); break;
+ case 'state': var tdoffset = (offset + 17); col1 = currentRow.find("td:eq("+tdoffset+")").text(); break;
case 'dx': col1 = currentRow.find("td:eq(3)").text(); col1 = col1.match(/^([^\s]+)/gm); break;
- case 'iota': col1 = currentRow.find("td:eq(19)").text(); col1 = col1.trim(); break;
- case 'state': col1 = currentRow.find("td:eq(17)").text(); break;
- case 'cqzone': col1 = currentRow.find("td:eq(18)").text(); break;
case 'gridsquare': col1 = $(currentRow).find('#dxgrid').text(); col1 = col1.substring(0, 4); break;
case 'mode': col1 = currentRow.find("td:eq(4)").text(); break;
case 'band': col1 = currentRow.find("td:eq(7)").text(); col1 = col1.match(/\S\w*/); break;
diff --git a/src/QSLManager/QSO.php b/src/QSLManager/QSO.php
index 472fe629f..a86524610 100644
--- a/src/QSLManager/QSO.php
+++ b/src/QSLManager/QSO.php
@@ -15,7 +15,7 @@ class QSO
private string $dx;
private string $mode;
private string $submode;
- private string $band;
+ private ?string $band;
private string $bandRX;
private string $rstR;
private string $rstS;
From 982b4a4ce97dce554100784245db392891186738 Mon Sep 17 00:00:00 2001
From: Andreas <6977712+AndreasK79@users.noreply.github.com>
Date: Wed, 5 Jul 2023 13:03:10 +0200
Subject: [PATCH 05/10] [Advanced Logbook] Changed warning poup
---
assets/js/sections/logbookadvanced.js | 11 +++++++++--
1 file changed, 9 insertions(+), 2 deletions(-)
diff --git a/assets/js/sections/logbookadvanced.js b/assets/js/sections/logbookadvanced.js
index f8a8397f5..308821998 100644
--- a/assets/js/sections/logbookadvanced.js
+++ b/assets/js/sections/logbookadvanced.js
@@ -399,8 +399,15 @@ $(document).ready(function () {
return;
}
if (nElements > 1) {
- alert("Only 1 row can be selected");
- //popup message that only 1 row can be selected
+ BootstrapDialog.alert({
+ title: 'WARNING',
+ message: 'Only 1 row can be selected for Quickfilter!',
+ type: BootstrapDialog.TYPE_WARNING,
+ closable: false,
+ draggable: false,
+ callback: function (result) {
+ }
+ });
}
var offset = 0;
From 782857aef9f5b1b48950737a46c10354c9386397 Mon Sep 17 00:00:00 2001
From: int2001
Date: Wed, 5 Jul 2023 12:05:02 +0000
Subject: [PATCH 06/10] Fixes Issue 2198
---
application/controllers/Qrz.php | 7 ++++++-
application/models/Logbook_model.php | 3 ++-
2 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/application/controllers/Qrz.php b/application/controllers/Qrz.php
index 13d354217..1df7e2208 100644
--- a/application/controllers/Qrz.php
+++ b/application/controllers/Qrz.php
@@ -71,9 +71,14 @@ class Qrz extends CI_Controller {
$result = $this->logbook_model->push_qso_to_qrz($qrz_api_key, $adif);
}
- if ($result['status'] == 'OK') {
+ if ( ($result['status'] == 'OK') || ( ($result['status'] == 'error') && ($result['message'] == 'STATUS=FAIL&REASON=Unable to add QSO to database: duplicate&EXTENDED=')) ){
$this->markqso($qso->COL_PRIMARY_KEY);
$i++;
+ } elseif ( ($result['status']=='error') && (substr($result['message'],0,11) == 'STATUS=AUTH')) {
+ log_message('error', 'QRZ upload failed for qso: Call: ' . $qso->COL_CALL . ' Band: ' . $qso->COL_BAND . ' Mode: ' . $qso->COL_MODE . ' Time: ' . $qso->COL_TIME_ON);
+ log_message('error', 'QRZ upload failed with the following message: ' .$result['message']);
+ log_message('error', 'QRZ upload stopped for Station_ID: ' .$station_id);
+ break; /* If key is invalid, immediate stop syncing for more QSOs of this station */
} else {
log_message('error', 'QRZ upload failed for qso: Call: ' . $qso->COL_CALL . ' Band: ' . $qso->COL_BAND . ' Mode: ' . $qso->COL_MODE . ' Time: ' . $qso->COL_TIME_ON);
log_message('error', 'QRZ upload failed with the following message: ' .$result['message']);
diff --git a/application/models/Logbook_model.php b/application/models/Logbook_model.php
index 7900a6ca8..691cb3ba5 100755
--- a/application/models/Logbook_model.php
+++ b/application/models/Logbook_model.php
@@ -519,7 +519,8 @@ class Logbook_model extends CI_Model {
$adif = $CI->adifhelper->getAdifLine($qso[0]);
$result = $this->push_qso_to_qrz($result->qrzapikey, $adif);
- if ($result['status'] == 'OK') {
+ log_message("error","Oink: ".$result['message']);
+ if ( ($result['status'] == 'OK') || ( ($result['status'] == 'error') && ($result['message'] == 'STATUS=FAIL&REASON=Unable to add QSO to database: duplicate&EXTENDED=')) ){
$this->mark_qrz_qsos_sent($last_id);
}
}
From 8c04f5ecc27f7b2b7b7d681f895408553e3c6556 Mon Sep 17 00:00:00 2001
From: int2001
Date: Wed, 5 Jul 2023 12:07:00 +0000
Subject: [PATCH 07/10] Removed debug-Output
---
application/models/Logbook_model.php | 1 -
1 file changed, 1 deletion(-)
diff --git a/application/models/Logbook_model.php b/application/models/Logbook_model.php
index 691cb3ba5..c7b97e059 100755
--- a/application/models/Logbook_model.php
+++ b/application/models/Logbook_model.php
@@ -519,7 +519,6 @@ class Logbook_model extends CI_Model {
$adif = $CI->adifhelper->getAdifLine($qso[0]);
$result = $this->push_qso_to_qrz($result->qrzapikey, $adif);
- log_message("error","Oink: ".$result['message']);
if ( ($result['status'] == 'OK') || ( ($result['status'] == 'error') && ($result['message'] == 'STATUS=FAIL&REASON=Unable to add QSO to database: duplicate&EXTENDED=')) ){
$this->mark_qrz_qsos_sent($last_id);
}
From 5ffcc413e9daf6e0757c156163a72369a86678d1 Mon Sep 17 00:00:00 2001
From: int2001
Date: Wed, 5 Jul 2023 12:20:39 +0000
Subject: [PATCH 08/10] Added Errormessage for User in case of invalid/expired
key
---
application/controllers/Qrz.php | 1 +
1 file changed, 1 insertion(+)
diff --git a/application/controllers/Qrz.php b/application/controllers/Qrz.php
index 1df7e2208..68eb29db8 100644
--- a/application/controllers/Qrz.php
+++ b/application/controllers/Qrz.php
@@ -78,6 +78,7 @@ class Qrz extends CI_Controller {
log_message('error', 'QRZ upload failed for qso: Call: ' . $qso->COL_CALL . ' Band: ' . $qso->COL_BAND . ' Mode: ' . $qso->COL_MODE . ' Time: ' . $qso->COL_TIME_ON);
log_message('error', 'QRZ upload failed with the following message: ' .$result['message']);
log_message('error', 'QRZ upload stopped for Station_ID: ' .$station_id);
+ $errormessages[] = $result['message'] . ' Call: ' . $qso->COL_CALL . ' Band: ' . $qso->COL_BAND . ' Mode: ' . $qso->COL_MODE . ' Time: ' . $qso->COL_TIME_ON;
break; /* If key is invalid, immediate stop syncing for more QSOs of this station */
} else {
log_message('error', 'QRZ upload failed for qso: Call: ' . $qso->COL_CALL . ' Band: ' . $qso->COL_BAND . ' Mode: ' . $qso->COL_MODE . ' Time: ' . $qso->COL_TIME_ON);
From 355070438d26f9c0834fc2be2f7b4ae3124960f7 Mon Sep 17 00:00:00 2001
From: Peter Goodhall
Date: Wed, 5 Jul 2023 14:48:22 +0100
Subject: [PATCH 09/10] [API] Removed search_callsign()
Think search_callsign() is a left over from testing code but isn't used
---
application/controllers/Api.php | 33 +--------------------------------
1 file changed, 1 insertion(+), 32 deletions(-)
diff --git a/application/controllers/Api.php b/application/controllers/Api.php
index 2eaf99a71..b6573faa5 100644
--- a/application/controllers/Api.php
+++ b/application/controllers/Api.php
@@ -5,38 +5,7 @@ class API extends CI_Controller {
// Do absolutely nothing
function index()
{
- }
-
- /*
- TODOs
- - Search Callsign (Return Json)
- - Add QSO return json
- */
-
-
- function search_callsign($callsign) {
- $this->db->select('COL_PRIMARY_KEY, COL_CALL, COL_MODE, COL_SUBMODE, COL_BAND, COL_COUNTRY, COL_FREQ, COL_GRIDSQUARE, COL_RST_RCVD, COL_RST_SENT, COL_SAT_MODE, COL_SAT_NAME');
- //$this->db->select("DATE_FORMAT(COL_TIME_ON, '%H:%i') AS time_on", FALSE );
- //$this->db->select("DATE_FORMAT(COL_TIME_ON, '%d/%c/%Y') AS date_on", FALSE );
- $this->db->like('COL_CALL', $callsign);
- $this->db->or_like('COL_GRIDSQUARE', $callsign);
- $query = $this->db->get($this->config->item('table_name'));
-
-
- $results = array();
-
- foreach ($query->result() as $result)
- {
- $results[] = $result;
- }
-
- header('Content-type: application/json');
-
- //$arr = array ('a'=>1,'b'=>2,'c'=>3,'d'=>4,'e'=>5);
- echo $_GET['jsoncallback'].'('.json_encode($results).')'; //assign resulting code to $_GET['jsoncallback].
-
- //echo json_encode($results);
-
+ echo "nothing to see"
}
function help()
From cfa0a59156a2489673c0121f7d12fbd2d14b9a50 Mon Sep 17 00:00:00 2001
From: Peter Goodhall
Date: Wed, 5 Jul 2023 14:48:38 +0100
Subject: [PATCH 10/10] typo
---
application/controllers/Api.php | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/application/controllers/Api.php b/application/controllers/Api.php
index b6573faa5..a69bd561f 100644
--- a/application/controllers/Api.php
+++ b/application/controllers/Api.php
@@ -5,7 +5,7 @@ class API extends CI_Controller {
// Do absolutely nothing
function index()
{
- echo "nothing to see"
+ echo "nothing to see";
}
function help()