From 31ef5565b95ac9c2f1803fd0ace6a6531efc0e90 Mon Sep 17 00:00:00 2001 From: Peter Goodhall Date: Fri, 11 Jun 2021 16:14:34 +0100 Subject: [PATCH] [Logbook] Added dropdown item to mark QSL Card as not required. --- application/controllers/Qso.php | 21 +++++++++++++++++++ application/models/Logbook_model.php | 13 ++++++++++++ application/views/interface_assets/footer.php | 21 +++++++++++++++++++ .../views/view_log/partial/log_ajax.php | 2 ++ 4 files changed, 57 insertions(+) diff --git a/application/controllers/Qso.php b/application/controllers/Qso.php index 0bcd6b22..e8e2f957 100755 --- a/application/controllers/Qso.php +++ b/application/controllers/Qso.php @@ -237,6 +237,27 @@ class QSO extends CI_Controller { } } + function qsl_ignore_ajax() { + $id = str_replace('"', "", $this->input->post("id")); + $method = str_replace('"', "", $this->input->post("method")); + + $this->load->model('logbook_model'); + $this->load->model('user_model'); + + header('Content-Type: application/json'); + + if(!$this->user_model->authorize(2)) { + echo json_encode(array('message' => 'Error')); + + } + else { + // Update Logbook to Mark Paper Card Received + $this->logbook_model->paperqsl_ignore($id, $method); + + echo json_encode(array('message' => 'OK')); + } + } + /* Delete QSO */ function delete($id) { $this->load->model('logbook_model'); diff --git a/application/models/Logbook_model.php b/application/models/Logbook_model.php index 12d5b2b1..c4881033 100755 --- a/application/models/Logbook_model.php +++ b/application/models/Logbook_model.php @@ -768,6 +768,19 @@ class Logbook_model extends CI_Model { $this->db->update($this->config->item('table_name'), $data); } + + function paperqsl_ignore($qso_id, $method) { + + $data = array( + 'COL_QSLSDATE' => date('Y-m-d'), + 'COL_QSL_SENT' => 'I' + ); + + $this->db->where('COL_PRIMARY_KEY', $qso_id); + + $this->db->update($this->config->item('table_name'), $data); + } + function get_qsos_for_printing() { $CI =& get_instance(); $CI->load->model('Stations'); diff --git a/application/views/interface_assets/footer.php b/application/views/interface_assets/footer.php index 81d4b96a..1815ea9e 100644 --- a/application/views/interface_assets/footer.php +++ b/application/views/interface_assets/footer.php @@ -1333,6 +1333,27 @@ $(document).ready(function(){ }); } + // Function: qsl_ignore + // Marks QSL card ignore against the QSO. + function qsl_ignore(id, method) { + var baseURL= ""; + $.ajax({ + url: baseURL + 'index.php/qso/qsl_ignore_ajax', + type: 'post', + data: {'id': id, + 'method': method + }, + success: function(data) { + if (data.message == 'OK') { + $("#qso_" + id).find("td:eq(8)").find("span:eq(0)").attr('class', 'qsl-red'); // Paints arrow green + } + else { + $(".bootstrap-dialog-message").append('
×You are not allowed to update QSL status!
'); + } + } + }); + } + function qso_delete(id, call) { BootstrapDialog.confirm({ title: 'DANGER', diff --git a/application/views/view_log/partial/log_ajax.php b/application/views/view_log/partial/log_ajax.php index 4ebb61e8..ea6a248c 100644 --- a/application/views/view_log/partial/log_ajax.php +++ b/application/views/view_log/partial/log_ajax.php @@ -248,6 +248,8 @@ Mark QSL Card Requested + Mark QSL Card Not Required + lang->line('general_delete_qso'); ?>