From 9a5b136351b1c0acb91a933f0abbbb7f518181f5 Mon Sep 17 00:00:00 2001 From: Thomas Werzmirzowsky Date: Mon, 15 Nov 2021 20:38:17 +0100 Subject: [PATCH] added "mark qsl sent" options to qso cog menu --- application/controllers/Qso.php | 21 +++++++++++ .../language/english/general_words_lang.php | 2 ++ application/models/Logbook_model.php | 35 +++++++++++++------ application/views/interface_assets/footer.php | 22 +++++++++++- .../views/search/search_result_ajax.php | 22 ++++++++---- application/views/view_log/partial/log.php | 31 ++++++++++------ .../views/view_log/partial/log_ajax.php | 22 ++++++++---- 7 files changed, 119 insertions(+), 36 deletions(-) diff --git a/application/controllers/Qso.php b/application/controllers/Qso.php index c852bd14..51fa6e2a 100755 --- a/application/controllers/Qso.php +++ b/application/controllers/Qso.php @@ -218,6 +218,27 @@ class QSO extends CI_Controller { } } + function qsl_sent_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 Sent + $this->logbook_model->paperqsl_update_sent($id, $method); + + echo json_encode(array('message' => 'OK')); + } + } + function qsl_requested_ajax() { $id = str_replace('"', "", $this->input->post("id")); $method = str_replace('"', "", $this->input->post("method")); diff --git a/application/language/english/general_words_lang.php b/application/language/english/general_words_lang.php index 4501b673..178d3e40 100644 --- a/application/language/english/general_words_lang.php +++ b/application/language/english/general_words_lang.php @@ -48,6 +48,8 @@ $lang['general_word_qslcard_via'] = 'Via'; $lang['general_edit_qso'] = 'Edit QSO'; $lang['general_mark_qsl_rx_bureau'] = 'Mark QSL Received (Bureau)'; $lang['general_mark_qsl_rx_direct'] = 'Mark QSL Received (Direct)'; +$lang['general_mark_qsl_tx_bureau'] = 'Mark QSL Sent (Bureau)'; +$lang['general_mark_qsl_tx_direct'] = 'Mark QSL Sent (Direct)'; $lang['general_delete_qso'] = 'Delete QSO'; diff --git a/application/models/Logbook_model.php b/application/models/Logbook_model.php index 94961fbc..d7323b10 100755 --- a/application/models/Logbook_model.php +++ b/application/models/Logbook_model.php @@ -759,20 +759,35 @@ class Logbook_model extends CI_Model { return $this->db->get($this->config->item('table_name')); } - - + + // Set Paper to recived function paperqsl_update($qso_id, $method) { + + $data = array( + 'COL_QSLRDATE' => date('Y-m-d'), + 'COL_QSL_RCVD' => 'Y', + 'COL_QSL_RCVD_VIA' => $method + ); + + $this->db->where('COL_PRIMARY_KEY', $qso_id); + + $this->db->update($this->config->item('table_name'), $data); + } - $data = array( - 'COL_QSLRDATE' => date('Y-m-d'), - 'COL_QSL_RCVD' => 'Y', - 'COL_QSL_RCVD_VIA' => $method - ); - $this->db->where('COL_PRIMARY_KEY', $qso_id); - - $this->db->update($this->config->item('table_name'), $data); + // Set Paper to sent + function paperqsl_update_sent($qso_id, $method) { + + $data = array( + 'COL_QSLSDATE' => date('Y-m-d'), + 'COL_QSL_SENT' => 'Y', + 'COL_QSL_SENT_VIA' => $method + ); + + $this->db->where('COL_PRIMARY_KEY', $qso_id); + + $this->db->update($this->config->item('table_name'), $data); } diff --git a/application/views/interface_assets/footer.php b/application/views/interface_assets/footer.php index 592930c0..9164df77 100644 --- a/application/views/interface_assets/footer.php +++ b/application/views/interface_assets/footer.php @@ -1410,7 +1410,27 @@ $(document).ready(function(){ success: function(data) { if (data.message == 'OK') { $("#qso_" + id).find("td:eq(8)").find("span:eq(1)").attr('class', 'qsl-green'); // Paints arrow green - $(".qsl_" + id).remove(); // removes choice from menu + $(".qsl_rcvd_" + id).remove(); // removes choice from menu + } + else { + $(".bootstrap-dialog-message").append('
×You are not allowed to update QSL status!
'); + } + } + }); + } + + function qsl_sent(id, method) { + var baseURL= ""; + $.ajax({ + url: baseURL + 'index.php/qso/qsl_sent_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-green'); // Paints arrow green + $(".qsl_sent_" + id).remove(); // removes choice from menu } else { $(".bootstrap-dialog-message").append('
×You are not allowed to update QSL status!
'); diff --git a/application/views/search/search_result_ajax.php b/application/views/search/search_result_ajax.php index 081121d6..6a7dbe6d 100644 --- a/application/views/search/search_result_ajax.php +++ b/application/views/search/search_result_ajax.php @@ -262,16 +262,24 @@