From 1023ffafab4fc34e71ba55dcac958364048fecdb Mon Sep 17 00:00:00 2001 From: int2001 Date: Wed, 22 Nov 2023 06:04:58 +0000 Subject: [PATCH 1/4] Splitted VUCC into real VUCC and SAT-VUCC at Dashboard --- application/controllers/Dashboard.php | 1 + application/models/Vucc.php | 77 ++++++++++++++------------- application/views/dashboard/index.php | 9 ++-- 3 files changed, 46 insertions(+), 41 deletions(-) diff --git a/application/controllers/Dashboard.php b/application/controllers/Dashboard.php index 6f4f1b36..8a238d6f 100644 --- a/application/controllers/Dashboard.php +++ b/application/controllers/Dashboard.php @@ -110,6 +110,7 @@ class Dashboard extends CI_Controller { $data['last_five_qsos'] = $this->logbook_model->get_last_qsos('18', $logbooks_locations_array); $data['vucc'] = $this->vucc->fetchVuccSummary(); + $data['vuccSAT'] = $this->vucc->fetchVuccSummary('SAT'); $data['page_title'] = "Dashboard"; diff --git a/application/models/Vucc.php b/application/models/Vucc.php index 148feb60..feb4da43 100644 --- a/application/models/Vucc.php +++ b/application/models/Vucc.php @@ -144,43 +144,44 @@ class VUCC extends CI_Model * $confirmationMethod - qsl, lotw or both, use anything else to skip confirmed */ function get_vucc_summary($band, $confirmationMethod) { - $CI =& get_instance(); - $CI->load->model('logbooks_model'); - $logbooks_locations_array = $CI->logbooks_model->list_logbook_relationships($this->session->userdata('active_station_logbook')); + $CI =& get_instance(); + $CI->load->model('logbooks_model'); + $logbooks_locations_array = $CI->logbooks_model->list_logbook_relationships($this->session->userdata('active_station_logbook')); - if (!$logbooks_locations_array) { - return null; - } + if (!$logbooks_locations_array) { + return null; + } - $location_list = "'".implode("','",$logbooks_locations_array)."'"; + $location_list = "'".implode("','",$logbooks_locations_array)."'"; - $sql = "select distinct upper(substring(col_gridsquare, 1, 4)) gridsquare - from " . $this->config->item('table_name') . - " where station_id in (" . $location_list . ")" . - " and col_gridsquare <> ''"; + $sql = "select distinct upper(substring(log.col_gridsquare, 1, 4)) gridsquare + from " . $this->config->item('table_name') . " log". + " inner join bands b on (b.band = log.col_band) ". + " where log.station_id in (" . $location_list . ")" . + " and log.col_gridsquare <> ''". + " and b.bandgroup in ('vhf','uhf','shf','sat')"; - if ($confirmationMethod == 'both') { - $sql .= " and (col_qsl_rcvd='Y' or col_lotw_qsl_rcvd='Y')"; - } - else if ($confirmationMethod == 'qsl') { - $sql .= " and col_qsl_rcvd='Y'"; - } - else if ($confirmationMethod == 'lotw') { - $sql .= " and col_lotw_qsl_rcvd='Y'"; - } + if ($confirmationMethod == 'both') { + $sql .= " and (log.col_qsl_rcvd='Y' or log.col_lotw_qsl_rcvd='Y')"; + } else if ($confirmationMethod == 'qsl') { + $sql .= " and log.col_qsl_rcvd='Y'"; + } else if ($confirmationMethod == 'lotw') { + $sql .= " and log.col_lotw_qsl_rcvd='Y'"; + } - if ($band != 'All') { - if ($band == 'SAT') { - $sql .= " and col_prop_mode ='" . $band . "'"; - } else { - $sql .= " and col_prop_mode !='SAT'"; - $sql .= " and col_band ='" . $band . "'"; - } - } + if ($band != 'All') { + if ($band == 'SAT') { + $sql .= " and log.col_prop_mode ='" . $band . "'"; + } else { + $sql .= " and log.col_prop_mode !='SAT'"; + $sql .= " and log.col_band ='" . $band . "'"; + } + } else { + $sql .= " and log.col_prop_mode !='SAT'"; + } + $query = $this->db->query($sql); - $query = $this->db->query($sql); - - return $query->result_array(); + return $query->result_array(); } /* @@ -333,12 +334,12 @@ class VUCC extends CI_Model /* * Builds the array to display worked/confirmed vucc on dashboard page */ - function fetchVuccSummary() { + function fetchVuccSummary($band = 'All') { $totalGridConfirmed = array(); $totalGridWorked = array(); // Getting all the worked grids - $col_gridsquare_worked = $this->get_vucc_summary('All', 'none'); + $col_gridsquare_worked = $this->get_vucc_summary($band, 'none'); $workedGridArray = array(); if ($col_gridsquare_worked != null) { @@ -350,7 +351,7 @@ class VUCC extends CI_Model } } - $col_vucc_grids_worked = $this->get_vucc_summary_col_vucc('All', 'none'); + $col_vucc_grids_worked = $this->get_vucc_summary_col_vucc($band, 'none'); if ($col_vucc_grids_worked != null) { foreach ($col_vucc_grids_worked as $gridSplit) { @@ -370,7 +371,7 @@ class VUCC extends CI_Model } // Getting all the confirmed grids - $col_gridsquare_confirmed = $this->get_vucc_summary('All', 'both'); + $col_gridsquare_confirmed = $this->get_vucc_summary($band, 'both'); if ($col_gridsquare_confirmed != null) { $confirmedGridArray = array(); @@ -382,7 +383,7 @@ class VUCC extends CI_Model } } - $col_vucc_grids_confirmed = $this->get_vucc_summary_col_vucc('All', 'both'); + $col_vucc_grids_confirmed = $this->get_vucc_summary_col_vucc($band, 'both'); if ($col_vucc_grids_confirmed != null) { foreach ($col_vucc_grids_confirmed as $gridSplit) { @@ -401,8 +402,8 @@ class VUCC extends CI_Model } } - $vuccArray['All']['worked'] = count($totalGridWorked); - $vuccArray['All']['confirmed'] = count($totalGridConfirmed); + $vuccArray[$band]['worked'] = count($totalGridWorked); + $vuccArray[$band]['confirmed'] = count($totalGridConfirmed); return $vuccArray; } diff --git a/application/views/dashboard/index.php b/application/views/dashboard/index.php index 2e66e543..21a5593a 100644 --- a/application/views/dashboard/index.php +++ b/application/views/dashboard/index.php @@ -308,17 +308,20 @@ function echoQrbCalcLink($mygrid, $grid, $vucc) { config->item('use_auth') && ($this->session->userdata('user_type') >= 2)) || $this->config->item('use_auth') === FALSE)) { ?> - + + - + + - + +
VHF/UHF Century Club (VUCC) VUCC-GridsSAT
From b674dd21fda45232d7f2e22f8ae5463c8f791b9a Mon Sep 17 00:00:00 2001 From: int2001 Date: Wed, 22 Nov 2023 06:40:19 +0000 Subject: [PATCH 2/4] Suppress Bands without QSOs (since the SQL doesn't deliver them) --- application/views/awards/vucc/index.php | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/application/views/awards/vucc/index.php b/application/views/awards/vucc/index.php index cf3b8f3e..02773306 100644 --- a/application/views/awards/vucc/index.php +++ b/application/views/awards/vucc/index.php @@ -25,11 +25,13 @@ $vucc) { - echo ''; - echo ''. $band .''; - echo ''. $vucc['worked'] .''; - echo ''. $vucc['confirmed'] .''; - echo ''; + if ($vucc['worked'] > 0) { + echo ''; + echo ''. $band .''; + echo ''. $vucc['worked'] .''; + echo ''. $vucc['confirmed'] .''; + echo ''; + } } ?> @@ -38,4 +40,4 @@ ×Nothing found!'; } ?> - \ No newline at end of file + From 71c884ee54766f7331f510c04d9bb07baff1c511 Mon Sep 17 00:00:00 2001 From: HB9HIL Date: Wed, 22 Nov 2023 07:53:38 +0100 Subject: [PATCH 3/4] fix vucc link --- application/language/bulgarian/awards_lang.php | 2 +- application/language/chinese_simplified/awards_lang.php | 2 +- application/language/czech/awards_lang.php | 2 +- application/language/dutch/awards_lang.php | 2 +- application/language/english/awards_lang.php | 2 +- application/language/finnish/awards_lang.php | 2 +- application/language/french/awards_lang.php | 2 +- application/language/greek/awards_lang.php | 2 +- application/language/italian/awards_lang.php | 2 +- application/language/polish/awards_lang.php | 2 +- application/language/russian/awards_lang.php | 2 +- application/language/spanish/awards_lang.php | 2 +- application/language/swedish/awards_lang.php | 2 +- application/language/turkish/awards_lang.php | 2 +- 14 files changed, 14 insertions(+), 14 deletions(-) diff --git a/application/language/bulgarian/awards_lang.php b/application/language/bulgarian/awards_lang.php index 611ee016..00bf3286 100644 --- a/application/language/bulgarian/awards_lang.php +++ b/application/language/bulgarian/awards_lang.php @@ -156,7 +156,7 @@ ________________________________________________________________________________ $lang['awards_vucc_description_ln1'] = "VUCC - VHF/UHF Century Club Award"; $lang['awards_vucc_description_ln2'] = "The VHF/UHF Century Club Award is given for a minimum number of worked and confirmed gridsquares on a desired band."; -$lang['awards_vucc_description_ln3'] = "Official information and the rules can be found in this document: Click here."; +$lang['awards_vucc_description_ln3'] = "Official information and the rules can be found in this document: Click here."; $lang['awards_vucc_description_ln4'] = "Only VHF/UHF bands are relevant."; diff --git a/application/language/chinese_simplified/awards_lang.php b/application/language/chinese_simplified/awards_lang.php index 611ee016..00bf3286 100644 --- a/application/language/chinese_simplified/awards_lang.php +++ b/application/language/chinese_simplified/awards_lang.php @@ -156,7 +156,7 @@ ________________________________________________________________________________ $lang['awards_vucc_description_ln1'] = "VUCC - VHF/UHF Century Club Award"; $lang['awards_vucc_description_ln2'] = "The VHF/UHF Century Club Award is given for a minimum number of worked and confirmed gridsquares on a desired band."; -$lang['awards_vucc_description_ln3'] = "Official information and the rules can be found in this document: Click here."; +$lang['awards_vucc_description_ln3'] = "Official information and the rules can be found in this document: Click here."; $lang['awards_vucc_description_ln4'] = "Only VHF/UHF bands are relevant."; diff --git a/application/language/czech/awards_lang.php b/application/language/czech/awards_lang.php index 611ee016..00bf3286 100644 --- a/application/language/czech/awards_lang.php +++ b/application/language/czech/awards_lang.php @@ -156,7 +156,7 @@ ________________________________________________________________________________ $lang['awards_vucc_description_ln1'] = "VUCC - VHF/UHF Century Club Award"; $lang['awards_vucc_description_ln2'] = "The VHF/UHF Century Club Award is given for a minimum number of worked and confirmed gridsquares on a desired band."; -$lang['awards_vucc_description_ln3'] = "Official information and the rules can be found in this document: Click here."; +$lang['awards_vucc_description_ln3'] = "Official information and the rules can be found in this document: Click here."; $lang['awards_vucc_description_ln4'] = "Only VHF/UHF bands are relevant."; diff --git a/application/language/dutch/awards_lang.php b/application/language/dutch/awards_lang.php index 611ee016..00bf3286 100644 --- a/application/language/dutch/awards_lang.php +++ b/application/language/dutch/awards_lang.php @@ -156,7 +156,7 @@ ________________________________________________________________________________ $lang['awards_vucc_description_ln1'] = "VUCC - VHF/UHF Century Club Award"; $lang['awards_vucc_description_ln2'] = "The VHF/UHF Century Club Award is given for a minimum number of worked and confirmed gridsquares on a desired band."; -$lang['awards_vucc_description_ln3'] = "Official information and the rules can be found in this document: Click here."; +$lang['awards_vucc_description_ln3'] = "Official information and the rules can be found in this document: Click here."; $lang['awards_vucc_description_ln4'] = "Only VHF/UHF bands are relevant."; diff --git a/application/language/english/awards_lang.php b/application/language/english/awards_lang.php index 611ee016..00bf3286 100644 --- a/application/language/english/awards_lang.php +++ b/application/language/english/awards_lang.php @@ -156,7 +156,7 @@ ________________________________________________________________________________ $lang['awards_vucc_description_ln1'] = "VUCC - VHF/UHF Century Club Award"; $lang['awards_vucc_description_ln2'] = "The VHF/UHF Century Club Award is given for a minimum number of worked and confirmed gridsquares on a desired band."; -$lang['awards_vucc_description_ln3'] = "Official information and the rules can be found in this document: Click here."; +$lang['awards_vucc_description_ln3'] = "Official information and the rules can be found in this document: Click here."; $lang['awards_vucc_description_ln4'] = "Only VHF/UHF bands are relevant."; diff --git a/application/language/finnish/awards_lang.php b/application/language/finnish/awards_lang.php index 611ee016..00bf3286 100644 --- a/application/language/finnish/awards_lang.php +++ b/application/language/finnish/awards_lang.php @@ -156,7 +156,7 @@ ________________________________________________________________________________ $lang['awards_vucc_description_ln1'] = "VUCC - VHF/UHF Century Club Award"; $lang['awards_vucc_description_ln2'] = "The VHF/UHF Century Club Award is given for a minimum number of worked and confirmed gridsquares on a desired band."; -$lang['awards_vucc_description_ln3'] = "Official information and the rules can be found in this document: Click here."; +$lang['awards_vucc_description_ln3'] = "Official information and the rules can be found in this document: Click here."; $lang['awards_vucc_description_ln4'] = "Only VHF/UHF bands are relevant."; diff --git a/application/language/french/awards_lang.php b/application/language/french/awards_lang.php index 6da125f3..ed0b29d5 100644 --- a/application/language/french/awards_lang.php +++ b/application/language/french/awards_lang.php @@ -156,7 +156,7 @@ ________________________________________________________________________________ $lang['awards_vucc_description_ln1'] = "VUCC - VHF/UHF Century Club Award"; $lang['awards_vucc_description_ln2'] = "The VHF/UHF Century Club Award is given for a minimum number of worked and confirmed gridsquares on a desired band."; -$lang['awards_vucc_description_ln3'] = "Official information and the rules can be found in this document: Click here."; +$lang['awards_vucc_description_ln3'] = "Official information and the rules can be found in this document: Click here."; $lang['awards_vucc_description_ln4'] = "Only VHF/UHF bands are relevant."; diff --git a/application/language/greek/awards_lang.php b/application/language/greek/awards_lang.php index 611ee016..00bf3286 100644 --- a/application/language/greek/awards_lang.php +++ b/application/language/greek/awards_lang.php @@ -156,7 +156,7 @@ ________________________________________________________________________________ $lang['awards_vucc_description_ln1'] = "VUCC - VHF/UHF Century Club Award"; $lang['awards_vucc_description_ln2'] = "The VHF/UHF Century Club Award is given for a minimum number of worked and confirmed gridsquares on a desired band."; -$lang['awards_vucc_description_ln3'] = "Official information and the rules can be found in this document: Click here."; +$lang['awards_vucc_description_ln3'] = "Official information and the rules can be found in this document: Click here."; $lang['awards_vucc_description_ln4'] = "Only VHF/UHF bands are relevant."; diff --git a/application/language/italian/awards_lang.php b/application/language/italian/awards_lang.php index 611ee016..00bf3286 100644 --- a/application/language/italian/awards_lang.php +++ b/application/language/italian/awards_lang.php @@ -156,7 +156,7 @@ ________________________________________________________________________________ $lang['awards_vucc_description_ln1'] = "VUCC - VHF/UHF Century Club Award"; $lang['awards_vucc_description_ln2'] = "The VHF/UHF Century Club Award is given for a minimum number of worked and confirmed gridsquares on a desired band."; -$lang['awards_vucc_description_ln3'] = "Official information and the rules can be found in this document: Click here."; +$lang['awards_vucc_description_ln3'] = "Official information and the rules can be found in this document: Click here."; $lang['awards_vucc_description_ln4'] = "Only VHF/UHF bands are relevant."; diff --git a/application/language/polish/awards_lang.php b/application/language/polish/awards_lang.php index 611ee016..00bf3286 100644 --- a/application/language/polish/awards_lang.php +++ b/application/language/polish/awards_lang.php @@ -156,7 +156,7 @@ ________________________________________________________________________________ $lang['awards_vucc_description_ln1'] = "VUCC - VHF/UHF Century Club Award"; $lang['awards_vucc_description_ln2'] = "The VHF/UHF Century Club Award is given for a minimum number of worked and confirmed gridsquares on a desired band."; -$lang['awards_vucc_description_ln3'] = "Official information and the rules can be found in this document: Click here."; +$lang['awards_vucc_description_ln3'] = "Official information and the rules can be found in this document: Click here."; $lang['awards_vucc_description_ln4'] = "Only VHF/UHF bands are relevant."; diff --git a/application/language/russian/awards_lang.php b/application/language/russian/awards_lang.php index 611ee016..00bf3286 100644 --- a/application/language/russian/awards_lang.php +++ b/application/language/russian/awards_lang.php @@ -156,7 +156,7 @@ ________________________________________________________________________________ $lang['awards_vucc_description_ln1'] = "VUCC - VHF/UHF Century Club Award"; $lang['awards_vucc_description_ln2'] = "The VHF/UHF Century Club Award is given for a minimum number of worked and confirmed gridsquares on a desired band."; -$lang['awards_vucc_description_ln3'] = "Official information and the rules can be found in this document: Click here."; +$lang['awards_vucc_description_ln3'] = "Official information and the rules can be found in this document: Click here."; $lang['awards_vucc_description_ln4'] = "Only VHF/UHF bands are relevant."; diff --git a/application/language/spanish/awards_lang.php b/application/language/spanish/awards_lang.php index 611ee016..00bf3286 100644 --- a/application/language/spanish/awards_lang.php +++ b/application/language/spanish/awards_lang.php @@ -156,7 +156,7 @@ ________________________________________________________________________________ $lang['awards_vucc_description_ln1'] = "VUCC - VHF/UHF Century Club Award"; $lang['awards_vucc_description_ln2'] = "The VHF/UHF Century Club Award is given for a minimum number of worked and confirmed gridsquares on a desired band."; -$lang['awards_vucc_description_ln3'] = "Official information and the rules can be found in this document: Click here."; +$lang['awards_vucc_description_ln3'] = "Official information and the rules can be found in this document: Click here."; $lang['awards_vucc_description_ln4'] = "Only VHF/UHF bands are relevant."; diff --git a/application/language/swedish/awards_lang.php b/application/language/swedish/awards_lang.php index 611ee016..00bf3286 100644 --- a/application/language/swedish/awards_lang.php +++ b/application/language/swedish/awards_lang.php @@ -156,7 +156,7 @@ ________________________________________________________________________________ $lang['awards_vucc_description_ln1'] = "VUCC - VHF/UHF Century Club Award"; $lang['awards_vucc_description_ln2'] = "The VHF/UHF Century Club Award is given for a minimum number of worked and confirmed gridsquares on a desired band."; -$lang['awards_vucc_description_ln3'] = "Official information and the rules can be found in this document: Click here."; +$lang['awards_vucc_description_ln3'] = "Official information and the rules can be found in this document: Click here."; $lang['awards_vucc_description_ln4'] = "Only VHF/UHF bands are relevant."; diff --git a/application/language/turkish/awards_lang.php b/application/language/turkish/awards_lang.php index 611ee016..00bf3286 100644 --- a/application/language/turkish/awards_lang.php +++ b/application/language/turkish/awards_lang.php @@ -156,7 +156,7 @@ ________________________________________________________________________________ $lang['awards_vucc_description_ln1'] = "VUCC - VHF/UHF Century Club Award"; $lang['awards_vucc_description_ln2'] = "The VHF/UHF Century Club Award is given for a minimum number of worked and confirmed gridsquares on a desired band."; -$lang['awards_vucc_description_ln3'] = "Official information and the rules can be found in this document: Click here."; +$lang['awards_vucc_description_ln3'] = "Official information and the rules can be found in this document: Click here."; $lang['awards_vucc_description_ln4'] = "Only VHF/UHF bands are relevant."; From 8b1646f4309d0138667ade3df0d925876a3a2d0d Mon Sep 17 00:00:00 2001 From: int2001 Date: Wed, 22 Nov 2023 06:56:19 +0000 Subject: [PATCH 4/4] Display HF too at VUCC-Awards-page --- application/models/Vucc.php | 7 +++++-- application/views/awards/vucc/index.php | 2 -- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/application/models/Vucc.php b/application/models/Vucc.php index feb4da43..8aba12a1 100644 --- a/application/models/Vucc.php +++ b/application/models/Vucc.php @@ -158,8 +158,11 @@ class VUCC extends CI_Model from " . $this->config->item('table_name') . " log". " inner join bands b on (b.band = log.col_band) ". " where log.station_id in (" . $location_list . ")" . - " and log.col_gridsquare <> ''". - " and b.bandgroup in ('vhf','uhf','shf','sat')"; + " and log.col_gridsquare <> ''"; + + if (($band == 'SAT') || ($band == 'All')) { + $sql.=" and b.bandgroup in ('vhf','uhf','shf','sat')"; + } if ($confirmationMethod == 'both') { $sql .= " and (log.col_qsl_rcvd='Y' or log.col_lotw_qsl_rcvd='Y')"; diff --git a/application/views/awards/vucc/index.php b/application/views/awards/vucc/index.php index 02773306..df02817f 100644 --- a/application/views/awards/vucc/index.php +++ b/application/views/awards/vucc/index.php @@ -25,13 +25,11 @@ $vucc) { - if ($vucc['worked'] > 0) { echo ''; echo ''. $band .''; echo ''. $vucc['worked'] .''; echo ''. $vucc['confirmed'] .''; echo ''; - } } ?>