diff --git a/application/models/Logbookadvanced_model.php b/application/models/Logbookadvanced_model.php
index ecb0a3eed..93051dbea 100644
--- a/application/models/Logbookadvanced_model.php
+++ b/application/models/Logbookadvanced_model.php
@@ -2042,7 +2042,7 @@ class Logbookadvanced_model extends CI_Model {
$dxcc['adif'] = (isset($dxcc['adif'])) ? $dxcc['adif'] : 0;
$dxcc['entity'] = (isset($dxcc['entity'])) ? $dxcc['entity'] : 'None';
- if ($call->col_dxcc != $dxcc['adif']) {
+ if (($call->col_dxcc ?? 'Unset') != $dxcc['adif']) {
$result[] = array(
'callsign' => $call->col_call,
'qso_date' => $call->date,
diff --git a/application/views/logbookadvanced/checkresult.php b/application/views/logbookadvanced/checkresult.php
index ffeac9109..4241b51e4 100644
--- a/application/views/logbookadvanced/checkresult.php
+++ b/application/views/logbookadvanced/checkresult.php
@@ -260,7 +260,14 @@ function check_incorrect_cq_zones($result, $custom_date_format) { ?>
= __("Fix Continent") ?>
@@ -52,7 +51,6 @@
-
= __("Fix State") ?>
@@ -64,7 +62,6 @@
-
= __("Update Distances") ?>
@@ -76,19 +73,6 @@
-
-
-
-
= __("Check QSOs missing DXCC data") ?>
-
= __("Identify QSOs that are missing DXCC information") ?>
-
-
-
-
= __("Check all QSOs in the logbook for incorrect DXCC") ?>
diff --git a/assets/js/sections/logbookadvanced.js b/assets/js/sections/logbookadvanced.js
index b7876832c..22c2c3fc4 100644
--- a/assets/js/sections/logbookadvanced.js
+++ b/assets/js/sections/logbookadvanced.js
@@ -2611,6 +2611,13 @@ function saveOptions() {
});
});
rebind_checkbox_trigger_cq_zone();
+
+ $('#forceMultiZoneUpdateCq').on('change', function() {
+ $('#incorrectcqzonetable').DataTable().column(8).search('').draw();
+ $('#checkBoxAllCqZones').prop('checked', false);
+ $('#incorrectcqzonetable tbody input[type="checkbox"]').prop('checked', false);
+ $('#incorrectcqzonetable tbody tr.activeRow').removeClass('activeRow');
+ });
},
});
},
@@ -2672,6 +2679,13 @@ function saveOptions() {
},
});
+ $('#forceMultiZoneUpdate').on('change', function() {
+ $('#incorrectituzonetable').DataTable().column(8).search('').draw();
+ $('#checkBoxAllItuZones').prop('checked', false);
+ $('#incorrectituzonetable tbody input[type="checkbox"]').prop('checked', false);
+ $('#incorrectituzonetable tbody tr.activeRow').removeClass('activeRow');
+ });
+
},
error: function(xhr, status, error) {
$('#checkIncorrectItuZonesBtn').prop("disabled", false).removeClass("running");
@@ -2711,12 +2725,18 @@ function saveOptions() {
$('#checkBoxAllCqZones').change(function (event) {
if (this.checked) {
$('#incorrectcqzonetable tbody tr').each(function (i) {
- selectQsoIdDxcc($(this).first().closest('tr').attr('id')?.replace(/\D/g, ''), 'incorrectcqzonetable');
+ if (!$(this).first().closest('tr').find("td[id='cqZones']").text().includes(',') || $('#forceMultiZoneUpdateCq').prop("checked")) {
+ selectQsoIdDxcc($(this).first().closest('tr').attr('id')?.replace(/\D/g, ''), 'incorrectcqzonetable');
+ }
});
+ if (!$('#forceMultiZoneUpdateCq').prop("checked")) {
+ $('#incorrectcqzonetable').DataTable().column(8).search('^[^,]*$', true, false).draw();
+ }
} else {
$('#incorrectcqzonetable tbody tr').each(function (i) {
unselectQsoIdDxcc($(this).first().closest('tr').attr('id')?.replace(/\D/g, ''), 'incorrectcqzonetable');
});
+ $('#incorrectcqzonetable').DataTable().column(8).search('').draw();
}
});
}
@@ -2761,6 +2781,8 @@ function saveOptions() {
return;
}
+ let table = $('#dxccCheckTable').DataTable();
+
$('#fixSelectedDxccBtn').prop("disabled", true).addClass("running");
$('#closeButton').prop("disabled", true);
@@ -2773,7 +2795,8 @@ function saveOptions() {
$('#closeButton').prop("disabled", false);
id_list.forEach(function(id) {
let row = $("#dxccCheckTable tbody tr#qsoID-" + id);
- row.remove();
+ table.row(row).remove();
+ table.draw(false);
});
$('.dxcctablediv').html(data.message);
},
@@ -2862,7 +2885,10 @@ function saveOptions() {
let id_list = [];
$('#incorrectcqzonetable tbody input:checked').each(function () {
let id = $(this).closest('tr').attr('id')?.replace(/\D/g, '');
- id_list.push(id);
+ // Skip entry if DXCC covers multiple CQ zones as the matching one cannot be identified automagically atm or force update
+ if (!$(this).closest('tr').find("td[id='cqZones']").text().includes(',') || $('#forceMultiZoneUpdate').prop("checked")) {
+ id_list.push(id);
+ }
});
if (id_list.length === 0) {
@@ -2878,6 +2904,8 @@ function saveOptions() {
return;
}
+ let table = $('#incorrectcqzonetable').DataTable();
+
$('#fixSelectedCqZoneBtn').prop("disabled", true).addClass("running");
$('#closeButton').prop("disabled", true);
@@ -2890,7 +2918,8 @@ function saveOptions() {
$('#closeButton').prop("disabled", false);
id_list.forEach(function(id) {
let row = $("#incorrectcqzonetable tbody tr#qsoID-" + id);
- row.remove();
+ table.row(row).remove();
+ table.draw(false);
});
$('.dxcctablediv').html(data.message);
},