From 23dddb682cccac66318718b490cce3ece6fe73c5 Mon Sep 17 00:00:00 2001
From: Andreas Kristiansen <6977712+AndreasK79@users.noreply.github.com>
Date: Fri, 26 Jul 2024 09:55:26 +0200
Subject: [PATCH 1/4] [Logbookadvanced] Added LoTW sent/received to batch edit
---
application/models/Logbookadvanced_model.php | 16 ++++++++++++++++
application/views/logbookadvanced/edit.php | 10 ++++++++++
assets/js/sections/logbookadvanced_edit.js | 6 ++++++
3 files changed, 32 insertions(+)
diff --git a/application/models/Logbookadvanced_model.php b/application/models/Logbookadvanced_model.php
index 69ad4d41f..cf7e6952f 100644
--- a/application/models/Logbookadvanced_model.php
+++ b/application/models/Logbookadvanced_model.php
@@ -526,6 +526,8 @@ class Logbookadvanced_model extends CI_Model {
case "qslvia": $column = 'COL_QSL_VIA'; break;
case "satellite": $column = 'COL_SAT_NAME'; break;
case "contest": $column = 'COL_CONTEST_ID'; break;
+ case "lotwsent": $column = 'COL_LOTW_QSL_SENT'; break;
+ case "lotwreceived": $column = 'COL_LOTW_QSL_RCVD'; break;
default: return;
}
@@ -637,6 +639,20 @@ class Logbookadvanced_model extends CI_Model {
" WHERE " . $this->config->item('table_name').".col_primary_key in ? and station_profile.user_id = ?";
$query = $this->db->query($sql, array($value, $propmode, $satmode, json_decode($ids, true), $this->session->userdata('user_id')));
+ } else if ($column == 'COL_LOTW_QSL_SENT') {
+
+ $sql = "UPDATE ".$this->config->item('table_name')." JOIN station_profile ON ". $this->config->item('table_name').".station_id = station_profile.station_id" .
+ " SET " . $this->config->item('table_name').".COL_LOTW_QSL_SENT = ?, " . $this->config->item('table_name').".COL_LOTW_QSLSDATE = now()" .
+ " WHERE " . $this->config->item('table_name').".col_primary_key in ? and station_profile.user_id = ?";
+
+ $query = $this->db->query($sql, array($value, json_decode($ids, true), $this->session->userdata('user_id')));
+ } else if ($column == 'COL_LOTW_QSL_RCVD') {
+
+ $sql = "UPDATE ".$this->config->item('table_name')." JOIN station_profile ON ". $this->config->item('table_name').".station_id = station_profile.station_id" .
+ " SET " . $this->config->item('table_name').".COL_LOTW_QSL_RCVD = ?, " . $this->config->item('table_name').".COL_LOTW_QSLRDATE = now()" .
+ " WHERE " . $this->config->item('table_name').".col_primary_key in ? and station_profile.user_id = ?";
+
+ $query = $this->db->query($sql, array($value, json_decode($ids, true), $this->session->userdata('user_id')));
} else {
$sql = "UPDATE ".$this->config->item('table_name')." JOIN station_profile ON ".$this->config->item('table_name').".station_id = station_profile.station_id SET " . $this->config->item('table_name').".".$column . " = ? WHERE " . $this->config->item('table_name').".col_primary_key in ? and station_profile.user_id = ?";
diff --git a/application/views/logbookadvanced/edit.php b/application/views/logbookadvanced/edit.php
index 2eb143cbd..7b03c81e5 100644
--- a/application/views/logbookadvanced/edit.php
+++ b/application/views/logbookadvanced/edit.php
@@ -19,6 +19,8 @@
+
+
@@ -125,4 +127,12 @@
}
?>
+
+
diff --git a/assets/js/sections/logbookadvanced_edit.js b/assets/js/sections/logbookadvanced_edit.js
index 07961b1cd..d14125123 100644
--- a/assets/js/sections/logbookadvanced_edit.js
+++ b/assets/js/sections/logbookadvanced_edit.js
@@ -171,6 +171,9 @@ function saveBatchEditQsos(id_list) {
if (column == 'contest') {
value = $("#editContest").val();
}
+ if (column == 'lotwsent' || column == 'lotwreceived') {
+ value = $("#editLoTW").val();
+ }
if (column == 'sota' || column == 'pota' || column == 'wwff' || column == 'gridsquare' || column == 'comment' || column == 'operator' || column == 'qslvia' || column == 'contest') {
value = $("#editTextInput").val();
}
@@ -216,6 +219,7 @@ function changeEditType(type) {
$('#editDxccStateList').hide();
$('#editDxccStateListLabel').hide();
$('#editContest').hide();
+ $('#editLoTW').hide();
editDxccStateListLabel
if (type == "dxcc") {
$('#editDxcc').show();
@@ -247,6 +251,8 @@ function changeEditType(type) {
$('#editSatelliteModeLabel').show();
} else if (type == "contest") {
$('#editContest').show();
+ } else if (type == "lotwsent" || type == "lotwreceived") {
+ $('#editLoTW').show();
} else if (type == "gridsquare" || type == "sota" || type == "wwff" || type == "operator" || type == "pota" || type == "comment" || type == "qslvia" || type == "contest") {
$('#editTextInput').show();
}
From b7f6d3c341a04000b2ac45f8633b5031671aca88 Mon Sep 17 00:00:00 2001
From: Andreas Kristiansen <6977712+AndreasK79@users.noreply.github.com>
Date: Fri, 26 Jul 2024 10:00:59 +0200
Subject: [PATCH 2/4] Added dialog to inform that you need to select at least 1
row
---
assets/js/sections/logbookadvanced_edit.js | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/assets/js/sections/logbookadvanced_edit.js b/assets/js/sections/logbookadvanced_edit.js
index d14125123..1baa86099 100644
--- a/assets/js/sections/logbookadvanced_edit.js
+++ b/assets/js/sections/logbookadvanced_edit.js
@@ -2,6 +2,15 @@ function editQsos() {
var elements = $('#qsoList tbody input:checked');
var nElements = elements.length;
if (nElements == 0) {
+ BootstrapDialog.alert({
+ title: 'INFO',
+ message: 'You need to select at least 1 row to use batch edit!',
+ type: BootstrapDialog.TYPE_INFO,
+ closable: false,
+ draggable: false,
+ callback: function (result) {
+ }
+ });
return;
}
var id_list=[];
From 9cf3385a2d5a9e2565bc844b5d15b15f68de6483 Mon Sep 17 00:00:00 2001
From: phl0
Date: Fri, 26 Jul 2024 14:23:14 +0200
Subject: [PATCH 3/4] Add color for LoTW Requested state and remove redundant
wording
---
.../views/view_log/partial/log_ajax.php | 58 ++++++++++++-------
assets/css/general.css | 7 ++-
src/QSLManager/QSO.php | 47 +++++++++------
3 files changed, 74 insertions(+), 38 deletions(-)
diff --git a/application/views/view_log/partial/log_ajax.php b/application/views/view_log/partial/log_ajax.php
index 3766daf7d..1525af49f 100644
--- a/application/views/view_log/partial/log_ajax.php
+++ b/application/views/view_log/partial/log_ajax.php
@@ -214,8 +214,8 @@ function echo_table_col($row, $name) {
session->userdata('user_default_confirmation'),'E') !== false && ($this->session->userdata('user_eqsl_name') != "")){ ?>
- COL_EQSL_QSL_SENT == "Y") { echo "title=\"".__("eQSL")." ".__("Sent"); if ($row->COL_EQSL_QSLSDATE != null) { $timestamp = strtotime($row->COL_EQSL_QSLSDATE); echo " ".($timestamp!=''?date($custom_date_format, $timestamp):''); } echo "\" data-bs-toggle=\"tooltip\""; } ?> class="eqsl-COL_EQSL_QSL_SENT=='Y')?'green':'red'?>">▲
- COL_EQSL_QSL_RCVD == "Y") { echo "title=\"".__("eQSL")." ".__("Received"); if ($row->COL_EQSL_QSLRDATE != null) { $timestamp = strtotime($row->COL_EQSL_QSLRDATE); echo " ".($timestamp!=''?date($custom_date_format, $timestamp):''); } echo "\" data-bs-toggle=\"tooltip\""; } ?> class="eqsl-COL_EQSL_QSL_RCVD=='Y')?'green':'red'?>">
+ COL_EQSL_QSL_SENT == "Y") { echo "title=\"".__("Sent"); if ($row->COL_EQSL_QSLSDATE != null) { $timestamp = strtotime($row->COL_EQSL_QSLSDATE); echo " ".($timestamp!=''?date($custom_date_format, $timestamp):''); } echo "\" data-bs-toggle=\"tooltip\""; } ?> class="eqsl-COL_EQSL_QSL_SENT=='Y')?'green':'red'?>">▲
+ COL_EQSL_QSL_RCVD == "Y") { echo "title=\"".__("Received"); if ($row->COL_EQSL_QSLRDATE != null) { $timestamp = strtotime($row->COL_EQSL_QSLRDATE); echo " ".($timestamp!=''?date($custom_date_format, $timestamp):''); } echo "\" data-bs-toggle=\"tooltip\""; } ?> class="eqsl-COL_EQSL_QSL_RCVD=='Y')?'green':'red'?>">
COL_EQSL_QSL_RCVD =='Y') { ?>
COL_PRIMARY_KEY); ?>" data-fancybox="images" data-width="528" data-height="336">▼
@@ -227,34 +227,52 @@ function echo_table_col($row, $name) {
session->userdata('user_default_confirmation'),'L') !== false && ($this->session->userdata('user_lotw_name') != "") ) { ?>
|
- COL_LOTW_QSL_SENT) {
+ COL_LOTW_QSLSDATE != null) {
+ $timestamp = date($custom_date_format, strtotime($row->COL_LOTW_QSLSDATE));
+ }
+ switch ($row->COL_LOTW_QSL_SENT) {
case "Y":
- echo "title=\"".__("LoTW")." ".__("Sent");
- if ($row->COL_LOTW_QSLSDATE != null) {
- $timestamp = strtotime($row->COL_LOTW_QSLSDATE);
- echo " ".($timestamp!=''?date($custom_date_format, $timestamp):'');
- }
+ echo "title=\"".__("Sent");
+ echo $timestamp != '' ? " ".$timestamp : '';
echo "\" data-bs-toggle=\"tooltip\" class=\"lotw-green\"";
break;
case "I":
- echo " class=\"lotw-grey\" data-bs-toggle=\"tooltip\" title=\"".__("Invalid (Ignore)")."\"";
+ echo "title=\"".__("Invalid (Ignore)");
+ echo $timestamp != '' ? " ".$timestamp : '';
+ echo "\" data-bs-toggle=\"tooltip\" class=\"lotw-grey\"";
+ break;
+ case "R":
+ echo "title=\"".__("Requested");
+ echo $timestamp != '' ? " ".$timestamp : '';
+ echo "\" data-bs-toggle=\"tooltip\" class=\"lotw-yellow\"";
break;
default:
echo " class=\"lotw-red\"";
break;
}
?>>▲
- COL_LOTW_QSL_RCVD) {
+ COL_LOTW_QSLRDATE != null) {
+ $timestamp = date($custom_date_format, strtotime($row->COL_LOTW_QSLRDATE));
+ }
+ switch ($row->COL_LOTW_QSL_RCVD) {
case "Y":
- echo "title=\"".__("LoTW")." ".__("Received");
- if ($row->COL_LOTW_QSLRDATE != null) {
- $timestamp = strtotime($row->COL_LOTW_QSLRDATE);
- echo " ".($timestamp!=''?date($custom_date_format, $timestamp):'');
- }
+ echo "title=\"".__("Received");
+ echo $timestamp != '' ? " ".$timestamp : '';
echo "\" data-bs-toggle=\"tooltip\" class=\"lotw-green\"";
break;
case "I":
- echo " class=\"lotw-grey\" data-bs-toggle=\"tooltip\" title=\"".__("Invalid (Ignore)")."\"";
+ echo "title=\"".__("Invalid (Ignore)");
+ echo $timestamp != '' ? " ".$timestamp : '';
+ echo "\" data-bs-toggle=\"tooltip\" class=\"lotw-grey\"";
+ break;
+ case "R":
+ echo "title=\"".__("Requested");
+ echo $timestamp != '' ? " ".$timestamp : '';
+ echo "\" data-bs-toggle=\"tooltip\" class=\"lotw-yellow\"";
break;
default:
echo " class=\"lotw-red\"";
@@ -266,16 +284,16 @@ function echo_table_col($row, $name) {
session->userdata('user_default_confirmation'),'Z') !== false && ($this->session->userdata('hasQrzKey') != "") ) { ?>
|
- COL_QRZCOM_QSO_UPLOAD_STATUS == "Y") { echo "title=\"QRZ ".__("Sent"); if ($row->COL_QRZCOM_QSO_UPLOAD_DATE != null) { $timestamp = strtotime($row->COL_QRZCOM_QSO_UPLOAD_DATE); echo " ".($timestamp!=''?date($custom_date_format, $timestamp):''); } echo "\" data-bs-toggle=\"tooltip\""; } ?> class="qrz-COL_QRZCOM_QSO_UPLOAD_STATUS=='Y')?'green':'red'?>">▲
- COL_QRZCOM_QSO_DOWNLOAD_STATUS == "Y") { echo "title=\"QRZ ".__("Received"); if ($row->COL_QRZCOM_QSO_DOWNLOAD_DATE != null) { $timestamp = strtotime($row->COL_QRZCOM_QSO_DOWNLOAD_DATE); echo " ".($timestamp!=''?date($custom_date_format, $timestamp):''); } echo "\" data-bs-toggle=\"tooltip\""; } ?> class="qrz-COL_QRZCOM_QSO_DOWNLOAD_STATUS=='Y')?'green':'red'?>">▼
+ COL_QRZCOM_QSO_UPLOAD_STATUS == "Y") { echo "title=\"".__("Sent"); if ($row->COL_QRZCOM_QSO_UPLOAD_DATE != null) { $timestamp = strtotime($row->COL_QRZCOM_QSO_UPLOAD_DATE); echo " ".($timestamp!=''?date($custom_date_format, $timestamp):''); } echo "\" data-bs-toggle=\"tooltip\""; } ?> class="qrz-COL_QRZCOM_QSO_UPLOAD_STATUS=='Y')?'green':'red'?>">▲
+ COL_QRZCOM_QSO_DOWNLOAD_STATUS == "Y") { echo "title=\"".__("Received"); if ($row->COL_QRZCOM_QSO_DOWNLOAD_DATE != null) { $timestamp = strtotime($row->COL_QRZCOM_QSO_DOWNLOAD_DATE); echo " ".($timestamp!=''?date($custom_date_format, $timestamp):''); } echo "\" data-bs-toggle=\"tooltip\""; } ?> class="qrz-COL_QRZCOM_QSO_DOWNLOAD_STATUS=='Y')?'green':'red'?>">▼
|
session->userdata('user_default_confirmation'),'C') !== false ) { ?>
- COL_CLUBLOG_QSO_UPLOAD_STATUS == "Y") { echo "title=\"Clublog ".__("Sent"); if ($row->COL_CLUBLOG_QSO_UPLOAD_DATE != null) { $timestamp = strtotime($row->COL_CLUBLOG_QSO_UPLOAD_DATE); echo " ".($timestamp!=''?date($custom_date_format, $timestamp):''); } echo "\" data-bs-toggle=\"tooltip\""; } ?> class="clublog-COL_CLUBLOG_QSO_UPLOAD_STATUS=='Y')?'green':'red'?>">▲
- COL_CLUBLOG_QSO_DOWNLOAD_STATUS == "Y") { echo "title=\"Clublog ".__("Received"); if ($row->COL_CLUBLOG_QSO_DOWNLOAD_DATE != null) { $timestamp = strtotime($row->COL_CLUBLOG_QSO_DOWNLOAD_DATE); echo " ".($timestamp!=''?date($custom_date_format, $timestamp):''); } echo "\" data-bs-toggle=\"tooltip\""; } ?> class="clublog-COL_CLUBLOG_QSO_DOWNLOAD_STATUS=='Y')?'green':'red'?>">▼
+ COL_CLUBLOG_QSO_UPLOAD_STATUS == "Y") { echo "title=\"".__("Sent"); if ($row->COL_CLUBLOG_QSO_UPLOAD_DATE != null) { $timestamp = strtotime($row->COL_CLUBLOG_QSO_UPLOAD_DATE); echo " ".($timestamp!=''?date($custom_date_format, $timestamp):''); } echo "\" data-bs-toggle=\"tooltip\""; } ?> class="clublog-COL_CLUBLOG_QSO_UPLOAD_STATUS=='Y')?'green':'red'?>">▲
+ COL_CLUBLOG_QSO_DOWNLOAD_STATUS == "Y") { echo "title=\"".__("Received"); if ($row->COL_CLUBLOG_QSO_DOWNLOAD_DATE != null) { $timestamp = strtotime($row->COL_CLUBLOG_QSO_DOWNLOAD_DATE); echo " ".($timestamp!=''?date($custom_date_format, $timestamp):''); } echo "\" data-bs-toggle=\"tooltip\""; } ?> class="clublog-COL_CLUBLOG_QSO_DOWNLOAD_STATUS=='Y')?'green':'red'?>">▼
|
diff --git a/assets/css/general.css b/assets/css/general.css
index 2e59fa8af..0dd274458 100644
--- a/assets/css/general.css
+++ b/assets/css/general.css
@@ -409,6 +409,11 @@ TD.lotw {
font-size: 1.1em;
}
+.lotw-yellow {
+ color: #d39e00 !important;
+ font-size: 1.1em;
+}
+
.qso-edit-box {
padding: 10px;
}
@@ -1041,4 +1046,4 @@ label {
.uppercase {
text-transform: uppercase;
-}
\ No newline at end of file
+}
diff --git a/src/QSLManager/QSO.php b/src/QSLManager/QSO.php
index c7d4137ee..3e524dead 100644
--- a/src/QSLManager/QSO.php
+++ b/src/QSLManager/QSO.php
@@ -363,15 +363,22 @@ class QSO
$lotwstring = '▲▲
Date: Fri, 26 Jul 2024 14:02:31 +0000
Subject: [PATCH 4/4] po/mo updates
---
.../locale/bg_BG/LC_MESSAGES/messages.po | 79 ++++++++++---------
.../locale/cs_CZ/LC_MESSAGES/messages.po | 79 ++++++++++---------
.../locale/de_DE/LC_MESSAGES/messages.po | 79 ++++++++++---------
.../locale/el_GR/LC_MESSAGES/messages.po | 79 ++++++++++---------
.../locale/es_ES/LC_MESSAGES/messages.po | 79 ++++++++++---------
.../locale/fi_FI/LC_MESSAGES/messages.po | 79 ++++++++++---------
.../locale/fr_FR/LC_MESSAGES/messages.po | 79 ++++++++++---------
.../locale/it_IT/LC_MESSAGES/messages.po | 79 ++++++++++---------
.../locale/nl_NL/LC_MESSAGES/messages.po | 79 ++++++++++---------
.../locale/pl_PL/LC_MESSAGES/messages.po | 79 ++++++++++---------
.../locale/pt_PT/LC_MESSAGES/messages.po | 79 ++++++++++---------
.../locale/ru_RU/LC_MESSAGES/messages.po | 79 ++++++++++---------
.../locale/sv_SE/LC_MESSAGES/messages.po | 79 ++++++++++---------
.../locale/tr_TR/LC_MESSAGES/messages.po | 79 ++++++++++---------
.../locale/zh_CN/LC_MESSAGES/messages.po | 79 ++++++++++---------
assets/lang_src/messages.pot | 79 ++++++++++---------
.../includes/gettext/lang_src/installer.pot | 2 +-
17 files changed, 657 insertions(+), 609 deletions(-)
diff --git a/application/locale/bg_BG/LC_MESSAGES/messages.po b/application/locale/bg_BG/LC_MESSAGES/messages.po
index 1e5c6720e..79208d086 100644
--- a/application/locale/bg_BG/LC_MESSAGES/messages.po
+++ b/application/locale/bg_BG/LC_MESSAGES/messages.po
@@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Report-Msgid-Bugs-To: translations@wavelog.org\n"
-"POT-Creation-Date: 2024-07-26 09:13+0000\n"
+"POT-Creation-Date: 2024-07-26 14:02+0000\n"
"PO-Revision-Date: 2024-07-09 13:25+0000\n"
"Last-Translator: Anonymous \n"
"Language-Team: Bulgarian \n"
"Language-Team: Czech \n"
"Language-Team: German \n"
"Language-Team: Greek \n"
"Language-Team: Spanish \n"
"Language-Team: Finnish \n"
"Language-Team: French \n"
"Language-Team: Italian \n"
"Language-Team: Dutch \n"
"Language-Team: Polish \n"
"Language-Team: Portuguese (Portugal) \n"
"Language-Team: Russian \n"
"Language-Team: Swedish \n"
"Language-Team: Turkish \n"
"Language-Team: Chinese (Simplified) \n"
"Language-Team: LANGUAGE \n"
@@ -829,11 +829,7 @@ msgstr ""
#: application/views/search/search_result_ajax.php:298
#: application/views/search/search_result_ajax.php:313
#: application/views/timeline/index.php:60 application/views/user/edit.php:563
-#: application/views/user/edit.php:659
-#: application/views/view_log/partial/log_ajax.php:232
-#: application/views/view_log/partial/log_ajax.php:249
-#: application/views/view_log/qso.php:408 src/QSLManager/QSO.php:367
-#: src/QSLManager/QSO.php:383
+#: application/views/user/edit.php:659 application/views/view_log/qso.php:408
msgid "LoTW"
msgstr ""
@@ -864,9 +860,6 @@ msgstr ""
#: application/views/station_profile/edit.php:278
#: application/views/timeline/index.php:64 application/views/user/edit.php:564
#: application/views/user/edit.php:667 application/views/user/edit.php:731
-#: application/views/view_log/partial/log_ajax.php:217
-#: application/views/view_log/partial/log_ajax.php:218
-#: src/QSLManager/QSO.php:446 src/QSLManager/QSO.php:459
msgid "eQSL"
msgstr ""
@@ -882,8 +875,7 @@ msgstr ""
#: application/views/update/index.php:20 application/views/user/edit.php:566
#: application/views/user/edit.php:683
#: application/views/view_log/partial/log_ajax.php:83
-#: application/views/view_log/qso.php:423 src/QSLManager/QSO.php:410
-#: src/QSLManager/QSO.php:423
+#: application/views/view_log/qso.php:423
msgid "Clublog"
msgstr ""
@@ -1071,7 +1063,7 @@ msgstr ""
#: application/views/contesting/index.php:173
#: application/views/dashboard/index.php:12
#: application/views/logbookadvanced/edit.php:20
-#: application/views/logbookadvanced/edit.php:62
+#: application/views/logbookadvanced/edit.php:64
#: application/views/logbookadvanced/index.php:162
#: application/views/logbookadvanced/index.php:583
#: application/views/logbookadvanced/qslcarousel.php:36
@@ -5053,15 +5045,15 @@ msgstr ""
#: application/views/statistics/custom_result.php:89
#: application/views/view_log/partial/log_ajax.php:140
#: application/views/view_log/partial/log_ajax.php:217
-#: application/views/view_log/partial/log_ajax.php:232
-#: application/views/view_log/partial/log_ajax.php:269
-#: application/views/view_log/partial/log_ajax.php:277
+#: application/views/view_log/partial/log_ajax.php:237
+#: application/views/view_log/partial/log_ajax.php:287
+#: application/views/view_log/partial/log_ajax.php:295
#: application/views/visitor/index.php:287
#: application/views/visitor/index.php:310
#: application/views/visitor/index.php:328
#: application/views/widgets/qsos.php:30 src/QSLManager/QSO.php:268
-#: src/QSLManager/QSO.php:367 src/QSLManager/QSO.php:410
-#: src/QSLManager/QSO.php:446
+#: src/QSLManager/QSO.php:371 src/QSLManager/QSO.php:423
+#: src/QSLManager/QSO.php:459
msgid "Sent"
msgstr ""
@@ -5084,14 +5076,14 @@ msgstr ""
#: application/views/search/search_result_ajax.php:375
#: application/views/view_log/partial/log_ajax.php:178
#: application/views/view_log/partial/log_ajax.php:218
-#: application/views/view_log/partial/log_ajax.php:249
-#: application/views/view_log/partial/log_ajax.php:270
-#: application/views/view_log/partial/log_ajax.php:278
+#: application/views/view_log/partial/log_ajax.php:263
+#: application/views/view_log/partial/log_ajax.php:288
+#: application/views/view_log/partial/log_ajax.php:296
#: application/views/visitor/index.php:292
#: application/views/visitor/index.php:315
#: application/views/visitor/index.php:333 src/QSLManager/QSO.php:313
-#: src/QSLManager/QSO.php:383 src/QSLManager/QSO.php:423
-#: src/QSLManager/QSO.php:459
+#: src/QSLManager/QSO.php:394 src/QSLManager/QSO.php:436
+#: src/QSLManager/QSO.php:472
msgid "Received"
msgstr ""
@@ -5117,8 +5109,11 @@ msgstr ""
#: application/views/search/search_result_ajax.php:228
#: application/views/view_log/partial/log_ajax.php:146
#: application/views/view_log/partial/log_ajax.php:184
+#: application/views/view_log/partial/log_ajax.php:247
+#: application/views/view_log/partial/log_ajax.php:273
#: application/views/visitor/index.php:297 src/QSLManager/QSO.php:274
-#: src/QSLManager/QSO.php:319
+#: src/QSLManager/QSO.php:319 src/QSLManager/QSO.php:379
+#: src/QSLManager/QSO.php:402
msgid "Requested"
msgstr ""
@@ -5863,7 +5858,7 @@ msgstr ""
#: application/views/interface_assets/footer.php:31
#: application/views/search/search_result_ajax.php:404
#: application/views/view_log/partial/log.php:135
-#: application/views/view_log/partial/log_ajax.php:300
+#: application/views/view_log/partial/log_ajax.php:318
#: application/views/view_log/qso.php:434
msgid "Edit QSO"
msgstr ""
@@ -6417,11 +6412,19 @@ msgstr ""
msgid "QSL via"
msgstr ""
-#: application/views/logbookadvanced/edit.php:71
+#: application/views/logbookadvanced/edit.php:22
+msgid "LoTW Sent"
+msgstr ""
+
+#: application/views/logbookadvanced/edit.php:23
+msgid "LoTW Received"
+msgstr ""
+
+#: application/views/logbookadvanced/edit.php:73
msgid "SAT Mode"
msgstr ""
-#: application/views/logbookadvanced/edit.php:85
+#: application/views/logbookadvanced/edit.php:87
msgid "Band RX"
msgstr ""
@@ -6576,10 +6579,10 @@ msgstr ""
#: application/views/search/search_result_ajax.php:320
#: application/views/view_log/partial/log_ajax.php:149
#: application/views/view_log/partial/log_ajax.php:187
-#: application/views/view_log/partial/log_ajax.php:240
-#: application/views/view_log/partial/log_ajax.php:257
+#: application/views/view_log/partial/log_ajax.php:242
+#: application/views/view_log/partial/log_ajax.php:268
#: src/QSLManager/QSO.php:277 src/QSLManager/QSO.php:322
-#: src/QSLManager/QSO.php:374 src/QSLManager/QSO.php:391
+#: src/QSLManager/QSO.php:375 src/QSLManager/QSO.php:398
msgid "Invalid (Ignore)"
msgstr ""
@@ -8056,7 +8059,7 @@ msgstr ""
#: application/views/qso/edit_ajax.php:593
#: application/views/search/search_result_ajax.php:432
#: application/views/view_log/partial/log.php:156
-#: application/views/view_log/partial/log_ajax.php:328
+#: application/views/view_log/partial/log_ajax.php:346
msgid "Delete QSO"
msgstr ""
@@ -8444,50 +8447,50 @@ msgstr ""
#: application/views/search/search_result_ajax.php:409
#: application/views/view_log/partial/log.php:140
-#: application/views/view_log/partial/log_ajax.php:305
+#: application/views/view_log/partial/log_ajax.php:323
msgid "Mark QSL Sent (Bureau)"
msgstr ""
#: application/views/search/search_result_ajax.php:410
#: application/views/view_log/partial/log.php:141
-#: application/views/view_log/partial/log_ajax.php:306
+#: application/views/view_log/partial/log_ajax.php:324
msgid "Mark QSL Sent (Direct)"
msgstr ""
#: application/views/search/search_result_ajax.php:417
#: application/views/view_log/partial/log.php:148
-#: application/views/view_log/partial/log_ajax.php:315
+#: application/views/view_log/partial/log_ajax.php:333
#: application/views/view_log/qso.php:652
msgid "Mark QSL Received (Bureau)"
msgstr ""
#: application/views/search/search_result_ajax.php:418
#: application/views/view_log/partial/log.php:149
-#: application/views/view_log/partial/log_ajax.php:316
+#: application/views/view_log/partial/log_ajax.php:334
#: application/views/view_log/qso.php:654
msgid "Mark QSL Received (Direct)"
msgstr ""
#: application/views/search/search_result_ajax.php:419
#: application/views/view_log/partial/log.php:150
-#: application/views/view_log/partial/log_ajax.php:307
+#: application/views/view_log/partial/log_ajax.php:325
msgid "Mark QSL Card Requested"
msgstr ""
#: application/views/search/search_result_ajax.php:420
#: application/views/view_log/partial/log.php:151
-#: application/views/view_log/partial/log_ajax.php:308
+#: application/views/view_log/partial/log_ajax.php:326
#: application/views/view_log/qso.php:666
msgid "Mark QSL Card Not Required"
msgstr ""
#: application/views/search/search_result_ajax.php:426
-#: application/views/view_log/partial/log_ajax.php:322
+#: application/views/view_log/partial/log_ajax.php:340
msgid "Lookup on QRZ.com"
msgstr ""
#: application/views/search/search_result_ajax.php:428
-#: application/views/view_log/partial/log_ajax.php:324
+#: application/views/view_log/partial/log_ajax.php:342
msgid "Lookup on HamQTH"
msgstr ""
diff --git a/install/includes/gettext/lang_src/installer.pot b/install/includes/gettext/lang_src/installer.pot
index 169c2170d..5636139fb 100644
--- a/install/includes/gettext/lang_src/installer.pot
+++ b/install/includes/gettext/lang_src/installer.pot
@@ -6,7 +6,7 @@
msgid ""
msgstr ""
"Report-Msgid-Bugs-To: translations@wavelog.org\n"
-"POT-Creation-Date: 2024-07-26 09:21+0000\n"
+"POT-Creation-Date: 2024-07-26 14:02+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME \n"
"Language-Team: LANGUAGE \n"