From 67de9fcb5a2a09998ee8f929732b44c8dcaed425 Mon Sep 17 00:00:00 2001 From: Andreas Kristiansen <6977712+AndreasK79@users.noreply.github.com> Date: Sun, 21 Apr 2024 09:02:18 +0200 Subject: [PATCH] Added list to award --- application/controllers/Awards.php | 33 +++++++++++- application/models/Wab.php | 36 ++++++++++++++ application/views/awards/wab/index.php | 5 +- application/views/awards/wab/list.php | 19 +++++++ assets/js/sections/wab.js | 69 +++++++++++++++++++++++--- 5 files changed, 151 insertions(+), 11 deletions(-) create mode 100644 application/views/awards/wab/list.php diff --git a/application/controllers/Awards.php b/application/controllers/Awards.php index a3e8d80cb..ac3a0d618 100644 --- a/application/controllers/Awards.php +++ b/application/controllers/Awards.php @@ -1538,7 +1538,6 @@ class Awards extends CI_Controller { $qrz = $this->security->xss_clean($this->input->post('qrz')); $sat = $this->security->xss_clean($this->input->post('sat')); $orbit = $this->security->xss_clean($this->input->post('orbit')); - $this->load->model('gridmap_model'); $this->load->model('logbooks_model'); $logbooks_locations_array = $this->logbooks_model->list_logbook_relationships($this->session->userdata('active_station_logbook')); @@ -1557,4 +1556,36 @@ class Awards extends CI_Controller { echo json_encode($wab_array); } + public function wab_list() { + $band = $this->security->xss_clean($this->input->post('band')); + $mode = $this->security->xss_clean($this->input->post('mode')); + $qsl = $this->security->xss_clean($this->input->post('qsl')); + $lotw = $this->security->xss_clean($this->input->post('lotw')); + $eqsl = $this->security->xss_clean($this->input->post('eqsl')); + $qrz = $this->security->xss_clean($this->input->post('qrz')); + $sat = $this->security->xss_clean($this->input->post('sat')); + $orbit = $this->security->xss_clean($this->input->post('orbit')); + + $this->load->model('logbooks_model'); + $logbooks_locations_array = $this->logbooks_model->list_logbook_relationships($this->session->userdata('active_station_logbook')); + + $this->load->model('wab'); + + if ($logbooks_locations_array) { + $location_list = "'".implode("','",$logbooks_locations_array)."'"; + $wab_array = $this->wab->get_wab_list($band, $location_list, $mode, $qsl, $lotw, $eqsl, $qrz, $sat, $orbit); + } else { + $location_list = null; + $wab_array = null; + } + + $data['wab_array'] = $wab_array; + $data['postdata']['band'] = $band; + $data['postdata']['mode'] = $mode; + $data['postdata']['sat'] = $sat; + $data['postdata']['orbit'] = $orbit; + + $this->load->view('awards/wab/list', $data); + } + } diff --git a/application/models/Wab.php b/application/models/Wab.php index 0a917ddbd..e97980da3 100644 --- a/application/models/Wab.php +++ b/application/models/Wab.php @@ -40,6 +40,42 @@ class Wab extends CI_Model { return $wabarray; } + function get_wab_list($band, $location_list, $mode, $qsl, $lotw, $eqsl, $qrz, $sat, $orbit) { + $worked = array(); + $confirmed = array(); + + $worked = $this->getWabWorked($location_list, $band, $mode, $sat, $orbit); + + $confirmed = $this->getWabConfirmed($location_list, $band, $mode, $qsl, $lotw, $eqsl, $qrz, $sat, $orbit); + + $wabarray = array(); + + $workedGridArray = array(); + foreach ($worked as $w) { + array_push($workedGridArray, $w->col_sig_info); + $wabarray += array( + $w->col_sig_info => 'W' + ); + } + + $confirmedGridArray = array(); + foreach ($confirmed as $c) { + array_push($confirmedGridArray, $c->col_sig_info); + + if(array_key_exists($c->col_sig_info, $wabarray)){ + $wabarray[$c->col_sig_info] = 'C'; + } else { + $wabarray += array( + $c->col_sig_info => 'C' + ); + } + } + + ksort($wabarray); + + return $wabarray; + } + /* * Function returns all worked, but not confirmed states * $postdata contains data from the form, in this case Lotw or QSL are used diff --git a/application/views/awards/wab/index.php b/application/views/awards/wab/index.php index 001e7b694..858d69c89 100644 --- a/application/views/awards/wab/index.php +++ b/application/views/awards/wab/index.php @@ -88,7 +88,7 @@
| WAB Square | +Confirmed | +
|---|---|
| '. $wab; ?> | ++ |