From d6ff837163d6d886d8fc70c6085985263b83cbc9 Mon Sep 17 00:00:00 2001 From: DB4SCW Date: Fri, 12 Sep 2025 11:36:49 +0000 Subject: [PATCH] add switch for band/freq --- application/models/Qslprint_model.php | 2 +- application/views/qslprint/index.php | 9 +++++++++ application/views/qslprint/qslprint.php | 7 +++++-- assets/js/sections/qslprint.js | 27 +++++++++++++++++++++++++ 4 files changed, 42 insertions(+), 3 deletions(-) diff --git a/application/models/Qslprint_model.php b/application/models/Qslprint_model.php index 2d2c21054..83ee7552c 100644 --- a/application/models/Qslprint_model.php +++ b/application/models/Qslprint_model.php @@ -70,7 +70,7 @@ class Qslprint_model extends CI_Model { function get_qsos_for_print($station_id = 'All') { $binding=[]; $binding[]=$this->session->userdata('user_id'); - $sql="SELECT count(distinct oldlog.col_primary_key) as previous_qsl, log.COL_QSL_SENT, log.COL_PRIMARY_KEY, log.COL_DXCC, log.COL_CALL, log.COL_SAT_NAME, log.COL_SAT_MODE, log.COL_BAND_RX, log.COL_TIME_ON, log.COL_MODE, log.COL_RST_SENT, log.COL_RST_RCVD, log.COL_QSL_VIA, log.COL_QSL_SENT_VIA, log.COL_SUBMODE, log.COL_BAND, sp.station_id, sp.station_callsign, sp.station_profile_name, o.qsoid + $sql="SELECT count(distinct oldlog.col_primary_key) as previous_qsl, log.COL_QSL_SENT, log.COL_PRIMARY_KEY, log.COL_DXCC, log.COL_CALL, log.COL_SAT_NAME, log.COL_SAT_MODE, log.COL_BAND_RX, COALESCE(log.COL_FREQ_RX, log.COL_FREQ) as frequency, log.COL_TIME_ON, log.COL_MODE, log.COL_RST_SENT, log.COL_RST_RCVD, log.COL_QSL_VIA, log.COL_QSL_SENT_VIA, log.COL_SUBMODE, log.COL_BAND, sp.station_id, sp.station_callsign, sp.station_profile_name, o.qsoid FROM ".$this->config->item('table_name')." log INNER JOIN station_profile sp ON sp.`station_id` = log.`station_id` LEFT OUTER JOIN oqrs o ON o.`qsoid` = log.`COL_PRIMARY_KEY` diff --git a/application/views/qslprint/index.php b/application/views/qslprint/index.php index 81fdca290..91d34bc3e 100644 --- a/application/views/qslprint/index.php +++ b/application/views/qslprint/index.php @@ -26,6 +26,15 @@ +
+ + +
+


diff --git a/application/views/qslprint/qslprint.php b/application/views/qslprint/qslprint.php index ccb436767..7e222d3fd 100644 --- a/application/views/qslprint/qslprint.php +++ b/application/views/qslprint/qslprint.php @@ -1,4 +1,5 @@ result() != NULL) { ' . __("Date") . ' '. __("Time") .' ' . __("Mode") . ' -' . __("Band") . ' +' . __("Band") . ' +' . __("Frequency") . ' ' . __("RST (S)") . ' ' . __("RST (R)") . ' ' . __("QSL") . ' ' . __("Via") . ' @@ -52,7 +54,8 @@ if ($qsos->result() != NULL) { echo ''; $timestamp = strtotime($qsl->COL_TIME_ON); echo date($custom_date_format, $timestamp); echo ''; echo ''; $timestamp = strtotime($qsl->COL_TIME_ON); echo date('H:i', $timestamp); echo ''; echo ''; echo $qsl->COL_SUBMODE==null?$qsl->COL_MODE:$qsl->COL_SUBMODE; echo ''; - echo ''; if($qsl->COL_SAT_NAME != null) { echo $qsl->COL_SAT_NAME; } else { echo strtolower($qsl->COL_BAND); }; echo ''; + echo ''; if($qsl->COL_SAT_NAME != null) { echo $qsl->COL_SAT_NAME; } else { echo strtolower($qsl->COL_BAND); }; echo ''; + echo ''; if($qsl->COL_SAT_NAME != null) { echo $qsl->COL_SAT_NAME; } else { echo $ci->frequency->qrg_conversion($qsl->frequency); }; echo ''; echo '' . $qsl->COL_RST_SENT . ''; echo '' . $qsl->COL_RST_RCVD . ''; echo '' . $qsl->COL_QSL_VIA . ''; diff --git a/assets/js/sections/qslprint.js b/assets/js/sections/qslprint.js index 27f5adf28..1e4e40431 100644 --- a/assets/js/sections/qslprint.js +++ b/assets/js/sections/qslprint.js @@ -332,3 +332,30 @@ function exportSelectedQsos() { $('.exportselected').prop("disabled", false); } + +document.getElementById('frequency_or_band').addEventListener('change', function (event) { + //get selected option + const selectedValue = event.target.value; + + //react to the different states + if (selectedValue === "band") { + bandcols = document.querySelectorAll('.col-band'); + bandcols.forEach(cell => { cell.style.display = '';}); + freqcols = document.querySelectorAll('.col-freq'); + freqcols.forEach(cell => { cell.style.display = 'none';}); + } + + if (selectedValue === "frequency") { + bandcols = document.querySelectorAll('.col-band'); + bandcols.forEach(cell => { cell.style.display = 'none';}); + freqcols = document.querySelectorAll('.col-freq'); + freqcols.forEach(cell => { cell.style.display = '';}); + } + + if (selectedValue === "both") { + bandcols = document.querySelectorAll('.col-band'); + bandcols.forEach(cell => { cell.style.display = '';}); + freqcols = document.querySelectorAll('.col-freq'); + freqcols.forEach(cell => { cell.style.display = '';}); + } +}); \ No newline at end of file