From cfb0229c3dc7d186055d2e2efbc8a906d0a8ace8 Mon Sep 17 00:00:00 2001 From: phl0 Date: Sun, 23 Nov 2025 18:33:12 +0100 Subject: [PATCH 1/9] Refactor eQSL colors for arrows --- .../views/view_log/partial/log_ajax.php | 65 ++++++++++++++++--- 1 file changed, 57 insertions(+), 8 deletions(-) diff --git a/application/views/view_log/partial/log_ajax.php b/application/views/view_log/partial/log_ajax.php index ca50e5794..4aeec94a6 100644 --- a/application/views/view_log/partial/log_ajax.php +++ b/application/views/view_log/partial/log_ajax.php @@ -356,14 +356,63 @@ function echoQrbCalcLink($mygrid, $grid, $vucc, $isVisitor = false) { session->userdata('user_default_confirmation'),'E') !== false && ($this->session->userdata('user_eqsl_name') != "")){ ?> - 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">▼ - - ▼ - - + COL_EQSL_QSLSDATE != null) { + $timestamp = date($custom_date_format, strtotime($row->COL_EQSL_QSLSDATE)); + } + switch ($row->COL_EQSL_QSL_SENT) { + case "Y": + echo "title=\"".__("Sent"); + echo $timestamp != '' ? " ".$timestamp : ''; + echo "\" data-bs-toggle=\"tooltip\" class=\"eqsl-green\""; + break; + case "I": + echo "title=\"".__("Invalid (Ignore)"); + echo $timestamp != '' ? " ".$timestamp : ''; + echo "\" data-bs-toggle=\"tooltip\" class=\"eqsl-grey\""; + break; + case "R": + echo "title=\"".__("Requested"); + echo $timestamp != '' ? " ".$timestamp : ''; + echo "\" data-bs-toggle=\"tooltip\" class=\"eqsl-yellow\""; + break; + default: + echo " class=\"eqsl-red\""; + break; + } + ?>>▲ + COL_EQSL_QSLRDATE != null) { + $timestamp = date($custom_date_format, strtotime($row->COL_EQSL_QSLRDATE)); + } + switch ($row->COL_EQSL_QSL_RCVD) { + case "Y": + echo "title=\"".__("Received"); + echo $timestamp != '' ? " ".$timestamp : ''; + echo "\" data-bs-toggle=\"tooltip\" class=\"eqsl-green\""; + break; + case "I": + echo "title=\"".__("Invalid (Ignore)"); + echo $timestamp != '' ? " ".$timestamp : ''; + echo "\" data-bs-toggle=\"tooltip\" class=\"eqsl-grey\""; + break; + case "R": + echo "title=\"".__("Requested"); + echo $timestamp != '' ? " ".$timestamp : ''; + echo "\" data-bs-toggle=\"tooltip\" class=\"eqsl-yellow\""; + break; + default: + echo " class=\"eqsl-red\""; + break; + }?>> + COL_EQSL_QSL_RCVD =='Y') { ?> + COL_PRIMARY_KEY); ?>" data-fancybox="images" data-width="528" data-height="336">▼ + + ▼ + + From 79e251183e731db7ea85836f549597069615da7d Mon Sep 17 00:00:00 2001 From: phl0 Date: Sun, 23 Nov 2025 21:59:03 +0100 Subject: [PATCH 2/9] QRZ QSL stati refactored according to ADIF v3.1.6 --- application/views/qso/edit_ajax.php | 5 -- .../views/view_log/partial/log_ajax.php | 47 +++++++++++++++++-- src/QSLManager/QSO.php | 31 +++++++----- 3 files changed, 61 insertions(+), 22 deletions(-) diff --git a/application/views/qso/edit_ajax.php b/application/views/qso/edit_ajax.php index 0ab7b78af..225b37e4d 100644 --- a/application/views/qso/edit_ajax.php +++ b/application/views/qso/edit_ajax.php @@ -577,9 +577,6 @@ @@ -591,9 +588,7 @@ diff --git a/application/views/view_log/partial/log_ajax.php b/application/views/view_log/partial/log_ajax.php index 4aeec94a6..03e42b74a 100644 --- a/application/views/view_log/partial/log_ajax.php +++ b/application/views/view_log/partial/log_ajax.php @@ -473,14 +473,53 @@ function echoQrbCalcLink($mygrid, $grid, $vucc, $isVisitor = false) { - session->userdata('user_default_confirmation'),'Z') !== false && ($this->session->userdata('hasQrzKey') != "") ) { ?> + session->userdata('user_default_confirmation'),'Z') !== false && ($this->session->userdata('hasQrzKey') != "") ) { ?> - COL_QRZCOM_QSO_UPLOAD_STATUS == "Y") { echo 'title="'.__("Sent").($row->COL_QRZCOM_QSO_UPLOAD_DATE != null ? " ".date($custom_date_format, strtotime($row->COL_QRZCOM_QSO_UPLOAD_DATE)) : '').'" data-bs-toggle="tooltip"'; } elseif ($row->COL_QRZCOM_QSO_UPLOAD_STATUS == 'M' && $row->COL_QRZCOM_QSO_UPLOAD_DATE != NULL) { echo 'title="'.__("Modified")."
(".__("last sent")." ".date($custom_date_format, strtotime($row->COL_QRZCOM_QSO_UPLOAD_DATE)).")".'" data-bs-toggle="tooltip" data-bs-html="true"'; } elseif ($row->COL_QRZCOM_QSO_UPLOAD_STATUS == 'I') { echo 'title="'.__("Invalid (Ignore)").'" data-bs-toggle="tooltip"'; }?> class="qrz-COL_QRZCOM_QSO_UPLOAD_STATUS == 'Y') { echo 'green'; } elseif ($row->COL_QRZCOM_QSO_UPLOAD_STATUS == 'M' && $row->COL_QRZCOM_QSO_UPLOAD_DATE != NULL) { echo 'yellow'; } elseif ($row->COL_QRZCOM_QSO_UPLOAD_STATUS == 'I') { echo 'grey'; } else { echo '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'?>">▼ + COL_QRZCOM_QSO_UPLOAD_DATE != null) { + $timestamp = date($custom_date_format, strtotime($row->COL_QRZCOM_QSO_UPLOAD_DATE)); + } + switch ($row->COL_QRZCOM_QSO_UPLOAD_STATUS) { + case "Y": + echo "title=\"".__("Sent"); + echo $timestamp != '' ? " ".$timestamp : ''; + echo "\" data-bs-toggle=\"tooltip\" class=\"qrz-green\""; + break; + case "M": + echo 'title="'.__("Modified")."
(".__("last sent")." ".date($custom_date_format, strtotime($row->COL_QRZCOM_QSO_UPLOAD_DATE)).")"; + echo $timestamp != '' ? " ".$timestamp : ''; + echo "\" data-bs-toggle=\"tooltip\" data-bs-html=\"true\" class=\"qrz-yellow\""; + break; + default: + echo " class=\"qrz-red\""; + break; + } + ?>>▲
+ COL_QRZCOM_QSO_DOWNLOAD_STATUS != null) { + $timestamp = date($custom_date_format, strtotime($row->COL_QRZCOM_QSO_DOWNLOAD_DATE)); + } + switch ($row->COL_QRZCOM_QSO_DOWNLOAD_STATUS) { + case "Y": + echo "title=\"".__("Received"); + echo $timestamp != '' ? " ".$timestamp : ''; + echo "\" data-bs-toggle=\"tooltip\" class=\"qrz-green\""; + break; + case "I": + echo "title=\"".__("Invalid (Ignore)"); + echo $timestamp != '' ? " ".$timestamp : ''; + echo "\" data-bs-toggle=\"tooltip\" class=\"qrz-grey\""; + break; + default: + echo " class=\"qrz-red\""; + break; + } + ?>>▼ - session->userdata('user_default_confirmation'),'C') !== false ) { ?> '; - - $qrzstring .= ''; + $qrzstring .= ' class="qrz-'; + if ($data['COL_QRZCOM_QSO_DOWNLOAD_STATUS'] =='Y') { + $qrzstring .= 'green'; + } elseif ($data['COL_QRZCOM_QSO_DOWNLOAD_STATUS'] == 'I') { + $qrzstring .= 'grey'; + } else { + $qrzstring .= 'red'; + } + $qrzstring .= '">▼'; return $qrzstring; } From ff987696b899282d4a6b2818bacce7b94cb8b925 Mon Sep 17 00:00:00 2001 From: phl0 Date: Sun, 23 Nov 2025 22:18:54 +0100 Subject: [PATCH 3/9] Adjust DCL colors --- .../views/view_log/partial/log_ajax.php | 85 +++++++++++-------- 1 file changed, 50 insertions(+), 35 deletions(-) diff --git a/application/views/view_log/partial/log_ajax.php b/application/views/view_log/partial/log_ajax.php index 03e42b74a..ae839f9b4 100644 --- a/application/views/view_log/partial/log_ajax.php +++ b/application/views/view_log/partial/log_ajax.php @@ -555,42 +555,57 @@ function echoQrbCalcLink($mygrid, $grid, $vucc, $isVisitor = false) { } ?> class="clublog-COL_CLUBLOG_QSO_DOWNLOAD_STATUS=='Y')?'green':'red'?>">▼ - session->userdata('user_default_confirmation'),'D') !== false ) { ?> - - COL_DCL_QSL_SENT == "Y") { - echo 'title="'.__("Sent").($row->COL_DCL_QSLSDATE != null ? " ".date($custom_date_format, strtotime($row->COL_DCL_QSLSDATE)) : '').'" data-bs-toggle="tooltip"'; - } elseif ($row->COL_DCL_QSL_SENT == 'M') { - echo 'title="'.__("Modified"); - if ($row->COL_DCL_QSLSDATE != null) { - echo "
(".__("last sent")." ".date($custom_date_format, strtotime($row->COL_DCL_QSLSDATE)).")"; - } - echo '" data-bs-toggle="tooltip" data-bs-html="true"'; - } elseif ($row->COL_DCL_QSL_SENT == 'I') { - echo 'title="'.__("Invalid (Ignore)").'" data-bs-toggle="tooltip"'; - }?> class="dcl- - if ($row->COL_DCL_QSL_SENT == 'Y') { - echo 'green'; - } elseif ($row->COL_DCL_QSL_SENT == 'M') { - echo 'yellow'; - } elseif ($row->COL_DCL_QSL_SENT == 'I') { - echo 'grey'; - } else { - echo 'red'; - } ?>">▲
- COL_DCL_QSL_RCVD == "Y") { - echo "title=\"".__("Received"); - if ($row->COL_DCL_QSLRDATE != null) { - $timestamp = strtotime($row->COL_DCL_QSLRDATE); - echo " ".($timestamp!=''?date($custom_date_format, $timestamp):''); - } - echo "\" data-bs-toggle=\"tooltip\""; - } ?> class="dcl-COL_DCL_QSL_RCVD=='Y')?'green':'red'?>">▼ - + session->userdata('user_default_confirmation'),'D') !== false ) { ?> + + COL_DCL_QSL_SENT != "N") { + switch ($row->COL_DCL_QSL_SENT) { + case "Y": + echo "class=\"qsl-green\" data-bs-toggle=\"tooltip\" title=\"".__("Sent"); + break; + case "Q": + echo "class=\"qsl-yellow\" data-bs-toggle=\"tooltip\" title=\"".__("Queued"); + break; + case "R": + echo "class=\"qsl-yellow\" data-bs-toggle=\"tooltip\" title=\"".__("Requested"); + break; + case "I": + echo "class=\"qsl-grey\" data-bs-toggle=\"tooltip\" title=\"".__("Invalid (Ignore)"); + break; + default: + echo "class=\"qsl-red"; + break; + } + if ($row->COL_DCL_QSLSDATE != null) { + $timestamp = strtotime($row->COL_DCL_QSLSDATE); echo " " .($timestamp != '' ? date($custom_date_format, $timestamp) : ''); + } + } else { echo "class=\"qsl-red"; } + echo "\">▲"; ?> + COL_DCL_QSL_RCVD != "N") { + switch ($row->COL_DCL_QSL_RCVD) { + case "Y": + echo "class=\"qsl-green\" data-bs-toggle=\"tooltip\" title=\"".__("Received"); + break; + case "Q": + echo "class=\"qsl-yellow\" data-bs-toggle=\"tooltip\" title=\"".__("Queued"); + break; + case "R": + echo "class=\"qsl-yellow\" data-bs-toggle=\"tooltip\" title=\"".__("Requested"); + break; + case "I": + echo "class=\"qsl-grey\" data-bs-toggle=\"tooltip\" title=\"".__("Invalid (Ignore)"); + break; + default: + echo "class=\"qsl-red"; + break; + } + if ($row->COL_DCL_QSLRDATE != null) { + $timestamp = strtotime($row->COL_DCL_QSLRDATE); echo " " .($timestamp != '' ? date($custom_date_format, $timestamp) : ''); + } + } else { echo "class=\"qsl-red"; } + echo "\">▼"; ?> + From 4c50817c367d221497c750cea65e8111415b1c88 Mon Sep 17 00:00:00 2001 From: phl0 Date: Mon, 24 Nov 2025 08:48:31 +0100 Subject: [PATCH 4/9] Fix null passing error --- application/views/view_log/partial/log_ajax.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/application/views/view_log/partial/log_ajax.php b/application/views/view_log/partial/log_ajax.php index ae839f9b4..a8d9703f7 100644 --- a/application/views/view_log/partial/log_ajax.php +++ b/application/views/view_log/partial/log_ajax.php @@ -498,7 +498,7 @@ function echoQrbCalcLink($mygrid, $grid, $vucc, $isVisitor = false) { ?>>▲ COL_QRZCOM_QSO_DOWNLOAD_STATUS != null) { + if ($row->COL_QRZCOM_QSO_DOWNLOAD_STATUS != null && $row->COL_QRZCOM_QSO_DOWNLOAD_DATE != null) { $timestamp = date($custom_date_format, strtotime($row->COL_QRZCOM_QSO_DOWNLOAD_DATE)); } switch ($row->COL_QRZCOM_QSO_DOWNLOAD_STATUS) { From 83f0c6d93f854944dc4e9af7cb246b6fc86f0042 Mon Sep 17 00:00:00 2001 From: phl0 Date: Mon, 24 Nov 2025 09:00:46 +0100 Subject: [PATCH 5/9] Adjust DCL stati/colors in LBA --- src/QSLManager/QSO.php | 92 +++++++++++++++++++++--------------------- 1 file changed, 46 insertions(+), 46 deletions(-) diff --git a/src/QSLManager/QSO.php b/src/QSLManager/QSO.php index abe72938b..5cc57b7a6 100644 --- a/src/QSLManager/QSO.php +++ b/src/QSLManager/QSO.php @@ -603,59 +603,59 @@ class QSO function getDclString($data, $custom_date_format): string { $dclstring = ''; - - $dclstring .= ''; - + $dclstring .= '">▼'; return $dclstring; } From b2d4c3559b2095cc7d99a315833c6e6fe44dfe89 Mon Sep 17 00:00:00 2001 From: phl0 Date: Mon, 24 Nov 2025 09:14:34 +0100 Subject: [PATCH 6/9] Adjust clublog QSL colors --- application/views/qso/edit_ajax.php | 6 +- .../views/view_log/partial/log_ajax.php | 76 +++++++++++-------- assets/css/color_impaired/overrides.css | 10 ++- assets/css/general.css | 5 ++ src/QSLManager/QSO.php | 39 ++++++---- 5 files changed, 84 insertions(+), 52 deletions(-) diff --git a/application/views/qso/edit_ajax.php b/application/views/qso/edit_ajax.php index 225b37e4d..b2dbb1e4f 100644 --- a/application/views/qso/edit_ajax.php +++ b/application/views/qso/edit_ajax.php @@ -626,9 +626,7 @@ @@ -638,9 +636,7 @@ diff --git a/application/views/view_log/partial/log_ajax.php b/application/views/view_log/partial/log_ajax.php index a8d9703f7..0bc4829f8 100644 --- a/application/views/view_log/partial/log_ajax.php +++ b/application/views/view_log/partial/log_ajax.php @@ -520,40 +520,50 @@ function echoQrbCalcLink($mygrid, $grid, $vucc, $isVisitor = false) { - session->userdata('user_default_confirmation'),'C') !== false ) { ?> + session->userdata('user_default_confirmation'),'C') !== false ) { ?> - COL_CLUBLOG_QSO_UPLOAD_STATUS == "Y") { - echo 'title="'.__("Sent").($row->COL_CLUBLOG_QSO_UPLOAD_DATE != null ? " ".date($custom_date_format, strtotime($row->COL_CLUBLOG_QSO_UPLOAD_DATE)) : '').'" data-bs-toggle="tooltip"'; - } elseif ($row->COL_CLUBLOG_QSO_UPLOAD_STATUS == 'M') { - echo 'title="'.__("Modified"); - if ($row->COL_CLUBLOG_QSO_UPLOAD_DATE != null) { - echo "
(".__("last sent")." ".date($custom_date_format, strtotime($row->COL_CLUBLOG_QSO_UPLOAD_DATE)).")"; - } - echo '" data-bs-toggle="tooltip" data-bs-html="true"'; - } elseif ($row->COL_CLUBLOG_QSO_UPLOAD_STATUS == 'I') { - echo 'title="'.__("Invalid (Ignore)").'" data-bs-toggle="tooltip"'; - }?> class="clublog-COL_CLUBLOG_QSO_UPLOAD_STATUS == 'Y') { - echo 'green'; - } elseif ($row->COL_CLUBLOG_QSO_UPLOAD_STATUS == 'M') { - echo 'yellow'; - } elseif ($row->COL_CLUBLOG_QSO_UPLOAD_STATUS == 'I') { - echo 'grey'; - } else { - echo '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'?>">▼ + COL_CLUBLOG_QSO_UPLOAD_DATE != null) { + $timestamp = date($custom_date_format, strtotime($row->COL_CLUBLOG_QSO_UPLOAD_DATE)); + } + switch ($row->COL_CLUBLOG_QSO_UPLOAD_STATUS) { + case "Y": + echo "title=\"".__("Sent"); + echo $timestamp != '' ? " ".$timestamp : ''; + echo "\" data-bs-toggle=\"tooltip\" class=\"clublog-green\""; + break; + case "M": + echo 'title="'.__("Modified")."
(".__("last sent")." ".date($custom_date_format, strtotime($row->COL_CLUBLOG_QSO_UPLOAD_DATE)).")"; + echo $timestamp != '' ? " ".$timestamp : ''; + echo "\" data-bs-toggle=\"tooltip\" data-bs-html=\"true\" class=\"clublog-yellow\""; + break; + default: + echo " class=\"clublog-red\""; + break; + } + ?>>▲
+ COL_CLUBLOG_QSO_DOWNLOAD_STATUS != null && $row->COL_CLUBLOG_QSO_DOWNLOAD_DATE != null) { + $timestamp = date($custom_date_format, strtotime($row->COL_CLUBLOG_QSO_DOWNLOAD_DATE)); + } + switch ($row->COL_CLUBLOG_QSO_DOWNLOAD_STATUS) { + case "Y": + echo "title=\"".__("Received"); + echo $timestamp != '' ? " ".$timestamp : ''; + echo "\" data-bs-toggle=\"tooltip\" class=\"clublog-green\""; + break; + case "I": + echo "title=\"".__("Invalid (Ignore)"); + echo $timestamp != '' ? " ".$timestamp : ''; + echo "\" data-bs-toggle=\"tooltip\" class=\"clublog-grey\""; + break; + default: + echo " class=\"clublog-red\""; + break; + } + ?>>▼ diff --git a/assets/css/color_impaired/overrides.css b/assets/css/color_impaired/overrides.css index c98e8d4fb..21bde0a1b 100644 --- a/assets/css/color_impaired/overrides.css +++ b/assets/css/color_impaired/overrides.css @@ -52,6 +52,14 @@ color: #A95AA1 !important; } +.clublog-yellow { + color: #FFFF00 !important; +} + +.clublog-grey { + color: #C0C0C0 !important; +} + .qrz-green { color: #F5793A !important; } @@ -97,4 +105,4 @@ span.grid-text-unworked > font { span.grid-text-worked > font { color: rgb(255, 255, 255) !important; font-weight: 400 !important; -} \ No newline at end of file +} diff --git a/assets/css/general.css b/assets/css/general.css index 0066ed66c..0a8e9f9c7 100644 --- a/assets/css/general.css +++ b/assets/css/general.css @@ -364,6 +364,11 @@ TD.clublog { font-size: 1.1em; } +.clublog-grey { + color: #dddddd !important; + font-size: 1.1em; +} + TD.dcl { width: 33px; white-space: nowrap; diff --git a/src/QSLManager/QSO.php b/src/QSLManager/QSO.php index 5cc57b7a6..d78e1d0fb 100644 --- a/src/QSLManager/QSO.php +++ b/src/QSLManager/QSO.php @@ -557,8 +557,8 @@ class QSO $timestamp = strtotime($data['COL_CLUBLOG_QSO_UPLOAD_DATE']); $clublogstring .= " ".($timestamp!=''?date($custom_date_format, $timestamp):''); } + $clublogstring .= "\" data-bs-toggle=\"tooltip\""; - $clublogstring .= ' class="clublog-green'; } elseif ($data['COL_CLUBLOG_QSO_UPLOAD_STATUS'] == "M") { $clublogstring .= "title=\"".__("Modified"); @@ -566,16 +566,31 @@ class QSO $timestamp = strtotime($data['COL_CLUBLOG_QSO_UPLOAD_DATE']); $clublogstring .= "
(".__("last sent")." ".($timestamp!=''?date($custom_date_format, $timestamp):'').")"; } + $clublogstring .= "\" data-bs-toggle=\"tooltip\" data-bs-html=\"true\""; - $clublogstring .= ' class="clublog-yellow'; - } else { - $clublogstring .= ' class="clublog-red'; } - $clublogstring.= '">▲ Date: Thu, 27 Nov 2025 13:32:01 +0100 Subject: [PATCH 7/9] Restore previsous (incompliant) stati for QRZ and Clublog --- application/views/qso/edit_ajax.php | 15 +++++++++++--- .../views/view_log/partial/log_ajax.php | 10 ++++++++++ src/QSLManager/QSO.php | 20 +++++++++++++++++++ 3 files changed, 42 insertions(+), 3 deletions(-) diff --git a/application/views/qso/edit_ajax.php b/application/views/qso/edit_ajax.php index b2dbb1e4f..fbd2d5c9a 100644 --- a/application/views/qso/edit_ajax.php +++ b/application/views/qso/edit_ajax.php @@ -577,6 +577,9 @@ @@ -588,12 +591,14 @@ -
+
@@ -619,14 +624,16 @@
-
+
@@ -636,7 +643,9 @@
diff --git a/application/views/view_log/partial/log_ajax.php b/application/views/view_log/partial/log_ajax.php index 0bc4829f8..7f7952b27 100644 --- a/application/views/view_log/partial/log_ajax.php +++ b/application/views/view_log/partial/log_ajax.php @@ -486,6 +486,11 @@ function echoQrbCalcLink($mygrid, $grid, $vucc, $isVisitor = false) { echo $timestamp != '' ? " ".$timestamp : ''; echo "\" data-bs-toggle=\"tooltip\" class=\"qrz-green\""; break; + case "I": + echo "title=\"".__("Invalid (Ignore)"); + echo $timestamp != '' ? " ".$timestamp : ''; + echo "\" data-bs-toggle=\"tooltip\" class=\"qrz-grey\""; + break; case "M": echo 'title="'.__("Modified")."
(".__("last sent")." ".date($custom_date_format, strtotime($row->COL_QRZCOM_QSO_UPLOAD_DATE)).")"; echo $timestamp != '' ? " ".$timestamp : ''; @@ -533,6 +538,11 @@ function echoQrbCalcLink($mygrid, $grid, $vucc, $isVisitor = false) { echo $timestamp != '' ? " ".$timestamp : ''; echo "\" data-bs-toggle=\"tooltip\" class=\"clublog-green\""; break; + case "I": + echo "title=\"".__("Invalid (Ignore)"); + echo $timestamp != '' ? " ".$timestamp : ''; + echo "\" data-bs-toggle=\"tooltip\" class=\"clublog-grey\""; + break; case "M": echo 'title="'.__("Modified")."
(".__("last sent")." ".date($custom_date_format, strtotime($row->COL_CLUBLOG_QSO_UPLOAD_DATE)).")"; echo $timestamp != '' ? " ".$timestamp : ''; diff --git a/src/QSLManager/QSO.php b/src/QSLManager/QSO.php index d78e1d0fb..24882bbc9 100644 --- a/src/QSLManager/QSO.php +++ b/src/QSLManager/QSO.php @@ -558,6 +558,14 @@ class QSO $clublogstring .= " ".($timestamp!=''?date($custom_date_format, $timestamp):''); } + $clublogstring .= "\" data-bs-toggle=\"tooltip\""; + } elseif ($data['COL_CLUBLOG_QSO_UPLOAD_STATUS'] == "I") { + $clublogstring .= "title=\"".__("Invalid (Ignore)"); + + if ($data['COL_CLUBLOG_QSO_UPLOAD_DATE'] != null) { + $timestamp = strtotime($data['COL_CLUBLOG_QSO_UPLOAD_DATE']); + $clublogstring .= " ".($timestamp!=''?date($custom_date_format, $timestamp):''); + } $clublogstring .= "\" data-bs-toggle=\"tooltip\""; } elseif ($data['COL_CLUBLOG_QSO_UPLOAD_STATUS'] == "M") { $clublogstring .= "title=\"".__("Modified"); @@ -573,6 +581,8 @@ class QSO $clublogstring .= ' class="clublog-'; if ($data['COL_CLUBLOG_QSO_UPLOAD_STATUS'] =='Y') { $clublogstring .= 'green'; + } elseif ($data['COL_CLUBLOG_QSO_UPLOAD_STATUS'] == 'I') { + $clublogstring .= 'grey'; } elseif ($data['COL_CLUBLOG_QSO_UPLOAD_STATUS'] == 'M') { $clublogstring .= 'yellow'; } else { @@ -684,6 +694,14 @@ class QSO $qrzstring .= " ".($timestamp!=''?date($custom_date_format, $timestamp):''); } + $qrzstring .= "\" data-bs-toggle=\"tooltip\""; + } elseif ($data['COL_QRZCOM_QSO_UPLOAD_STATUS'] == "I") { + $qrzstring .= "title=\"".__("Invalid (Ignore)"); + + if ($data['COL_QRZCOM_QSO_UPLOAD_DATE'] != null) { + $timestamp = strtotime($data['COL_QRZCOM_QSO_UPLOAD_DATE']); + $qrzstring .= " ".($timestamp!=''?date($custom_date_format, $timestamp):''); + } $qrzstring .= "\" data-bs-toggle=\"tooltip\""; } elseif ($data['COL_QRZCOM_QSO_UPLOAD_STATUS'] == "M") { $qrzstring .= "title=\"".__("Modified"); @@ -699,6 +717,8 @@ class QSO $qrzstring .= ' class="qrz-'; if ($data['COL_QRZCOM_QSO_UPLOAD_STATUS'] =='Y') { $qrzstring .= 'green'; + } elseif ($data['COL_QRZCOM_QSO_UPLOAD_STATUS'] == 'I') { + $qrzstring .= 'grey'; } elseif ($data['COL_QRZCOM_QSO_UPLOAD_STATUS'] == 'M') { $qrzstring .= 'yellow'; } else { From 54e26c9e26b63302cec984951edf356c0702f161 Mon Sep 17 00:00:00 2001 From: phl0 Date: Thu, 27 Nov 2025 13:36:25 +0100 Subject: [PATCH 8/9] lign colors --- assets/css/color_impaired/overrides.css | 8 ++++++++ assets/css/general.css | 5 +++++ 2 files changed, 13 insertions(+) diff --git a/assets/css/color_impaired/overrides.css b/assets/css/color_impaired/overrides.css index 21bde0a1b..d0e68f326 100644 --- a/assets/css/color_impaired/overrides.css +++ b/assets/css/color_impaired/overrides.css @@ -12,6 +12,10 @@ color: #A95AA1 !important; } +.eqsl-yellow { + color: #FFFF00 !important; +} + .eqsl-grey { color: #C0C0C0 !important; } @@ -40,6 +44,10 @@ color: #A95AA1 !important; } +.lotw-yellow { + color: #FFFF00 !important; +} + .lotw-grey { color: #C0C0C0 !important; } diff --git a/assets/css/general.css b/assets/css/general.css index 0a8e9f9c7..9340d69fa 100644 --- a/assets/css/general.css +++ b/assets/css/general.css @@ -314,6 +314,11 @@ TD.eqsl { font-size: 1.1em; } +.eqsl-yellow { + color: #d39e00 !important; + font-size: 1.1em; +} + .eqsl-grey { color: #dddddd !important; font-size: 1.1em; From 2f505a7ac74949cedc107fba1eeeb48dd66fabb8 Mon Sep 17 00:00:00 2001 From: phl0 Date: Thu, 27 Nov 2025 13:42:28 +0100 Subject: [PATCH 9/9] Align colors for requested --- .../views/view_log/partial/log_ajax.php | 20 +++++++++++++ src/QSLManager/QSO.php | 28 +++++++++++++++++++ 2 files changed, 48 insertions(+) diff --git a/application/views/view_log/partial/log_ajax.php b/application/views/view_log/partial/log_ajax.php index 7f7952b27..0a8d01b3a 100644 --- a/application/views/view_log/partial/log_ajax.php +++ b/application/views/view_log/partial/log_ajax.php @@ -377,6 +377,11 @@ function echoQrbCalcLink($mygrid, $grid, $vucc, $isVisitor = false) { echo $timestamp != '' ? " ".$timestamp : ''; echo "\" data-bs-toggle=\"tooltip\" class=\"eqsl-yellow\""; break; + case "Q": + echo "title=\"".__("Queued"); + echo $timestamp != '' ? " ".$timestamp : ''; + echo "\" data-bs-toggle=\"tooltip\" class=\"eqsl-yellow\""; + break; default: echo " class=\"eqsl-red\""; break; @@ -439,6 +444,11 @@ function echoQrbCalcLink($mygrid, $grid, $vucc, $isVisitor = false) { echo $timestamp != '' ? " ".$timestamp : ''; echo "\" data-bs-toggle=\"tooltip\" class=\"lotw-yellow\""; break; + case "Q": + echo "title=\"".__("Queued"); + echo $timestamp != '' ? " ".$timestamp : ''; + echo "\" data-bs-toggle=\"tooltip\" class=\"lotw-yellow\""; + break; default: echo " class=\"lotw-red\""; break; @@ -491,6 +501,11 @@ function echoQrbCalcLink($mygrid, $grid, $vucc, $isVisitor = false) { echo $timestamp != '' ? " ".$timestamp : ''; echo "\" data-bs-toggle=\"tooltip\" class=\"qrz-grey\""; break; + case "Q": + echo "title=\"".__("Queued"); + echo $timestamp != '' ? " ".$timestamp : ''; + echo "\" data-bs-toggle=\"tooltip\" class=\"qrz-yellow\""; + break; case "M": echo 'title="'.__("Modified")."
(".__("last sent")." ".date($custom_date_format, strtotime($row->COL_QRZCOM_QSO_UPLOAD_DATE)).")"; echo $timestamp != '' ? " ".$timestamp : ''; @@ -543,6 +558,11 @@ function echoQrbCalcLink($mygrid, $grid, $vucc, $isVisitor = false) { echo $timestamp != '' ? " ".$timestamp : ''; echo "\" data-bs-toggle=\"tooltip\" class=\"clublog-grey\""; break; + case "Q": + echo "title=\"".__("Queued"); + echo $timestamp != '' ? " ".$timestamp : ''; + echo "\" data-bs-toggle=\"tooltip\" class=\"clublog-yellow\""; + break; case "M": echo 'title="'.__("Modified")."
(".__("last sent")." ".date($custom_date_format, strtotime($row->COL_CLUBLOG_QSO_UPLOAD_DATE)).")"; echo $timestamp != '' ? " ".$timestamp : ''; diff --git a/src/QSLManager/QSO.php b/src/QSLManager/QSO.php index 24882bbc9..999dffbf0 100644 --- a/src/QSLManager/QSO.php +++ b/src/QSLManager/QSO.php @@ -508,6 +508,10 @@ class QSO $lotwstring .= "title=\"" . __("Invalid (Ignore)"); $lotwstring .= $timestamp != '' ? " ".$timestamp : ''; $lotwstring .= "\" data-bs-toggle=\"tooltip\" class=\"lotw-grey\""; + } elseif ($data['COL_LOTW_QSL_SENT'] == "Q") { + $lotwstring .= "title=\"" . __("Queued"); + $lotwstring .= $timestamp != '' ? " ".$timestamp : ''; + $lotwstring .= "\" data-bs-toggle=\"tooltip\" class=\"lotw-yellow\""; } elseif ($data['COL_LOTW_QSL_SENT'] == "R") { $lotwstring .= "title=\"" . __("Requested"); $lotwstring .= $timestamp != '' ? " ".$timestamp : ''; @@ -562,6 +566,14 @@ class QSO } elseif ($data['COL_CLUBLOG_QSO_UPLOAD_STATUS'] == "I") { $clublogstring .= "title=\"".__("Invalid (Ignore)"); + if ($data['COL_CLUBLOG_QSO_UPLOAD_DATE'] != null) { + $timestamp = strtotime($data['COL_CLUBLOG_QSO_UPLOAD_DATE']); + $clublogstring .= " ".($timestamp!=''?date($custom_date_format, $timestamp):''); + } + $clublogstring .= "\" data-bs-toggle=\"tooltip\""; + } elseif ($data['COL_CLUBLOG_QSO_UPLOAD_STATUS'] == "Q") { + $clublogstring .= "title=\"".__("Queued"); + if ($data['COL_CLUBLOG_QSO_UPLOAD_DATE'] != null) { $timestamp = strtotime($data['COL_CLUBLOG_QSO_UPLOAD_DATE']); $clublogstring .= " ".($timestamp!=''?date($custom_date_format, $timestamp):''); @@ -583,6 +595,8 @@ class QSO $clublogstring .= 'green'; } elseif ($data['COL_CLUBLOG_QSO_UPLOAD_STATUS'] == 'I') { $clublogstring .= 'grey'; + } elseif ($data['COL_CLUBLOG_QSO_UPLOAD_STATUS'] == 'Q') { + $clublogstring .= 'yellow'; } elseif ($data['COL_CLUBLOG_QSO_UPLOAD_STATUS'] == 'M') { $clublogstring .= 'yellow'; } else { @@ -698,6 +712,14 @@ class QSO } elseif ($data['COL_QRZCOM_QSO_UPLOAD_STATUS'] == "I") { $qrzstring .= "title=\"".__("Invalid (Ignore)"); + if ($data['COL_QRZCOM_QSO_UPLOAD_DATE'] != null) { + $timestamp = strtotime($data['COL_QRZCOM_QSO_UPLOAD_DATE']); + $qrzstring .= " ".($timestamp!=''?date($custom_date_format, $timestamp):''); + } + $qrzstring .= "\" data-bs-toggle=\"tooltip\""; + } elseif ($data['COL_QRZCOM_QSO_UPLOAD_STATUS'] == "Q") { + $qrzstring .= "title=\"".__("Queued"); + if ($data['COL_QRZCOM_QSO_UPLOAD_DATE'] != null) { $timestamp = strtotime($data['COL_QRZCOM_QSO_UPLOAD_DATE']); $qrzstring .= " ".($timestamp!=''?date($custom_date_format, $timestamp):''); @@ -719,6 +741,8 @@ class QSO $qrzstring .= 'green'; } elseif ($data['COL_QRZCOM_QSO_UPLOAD_STATUS'] == 'I') { $qrzstring .= 'grey'; + } elseif ($data['COL_QRZCOM_QSO_UPLOAD_STATUS'] == 'Q') { + $qrzstring .= 'yellow'; } elseif ($data['COL_QRZCOM_QSO_UPLOAD_STATUS'] == 'M') { $qrzstring .= 'yellow'; } else { @@ -773,6 +797,10 @@ class QSO $eqslstring .= "title=\"" . __("Invalid (Ignore)"); $eqslstring .= $timestamp != '' ? " ".$timestamp : ''; $eqslstring .= "\" data-bs-toggle=\"tooltip\" class=\"eqsl-grey\""; + } elseif ($data['COL_EQSL_QSL_SENT'] == "Q") { + $eqslstring .= "title=\"" . __("Queued"); + $eqslstring .= $timestamp != '' ? " ".$timestamp : ''; + $eqslstring .= "\" data-bs-toggle=\"tooltip\" class=\"eqsl-yellow\""; } elseif ($data['COL_EQSL_QSL_SENT'] == "R") { $eqslstring .= "title=\"" . __("Requested"); $eqslstring .= $timestamp != '' ? " ".$timestamp : '';