From 43bacdc62a6a7953e73ba78f5491b1c48a299237 Mon Sep 17 00:00:00 2001 From: Peter Goodhall Date: Mon, 31 Jul 2023 15:52:32 +0100 Subject: [PATCH] Save and Update Macros from the Database --- application/controllers/Qso.php | 52 +++++++++- application/models/Winkey.php | 34 +++++++ .../views/qso/components/winkeysettings.php | 21 ++-- .../qso/components/winkeysettings_results.php | 96 +++++++++++++++++++ 4 files changed, 191 insertions(+), 12 deletions(-) create mode 100644 application/models/Winkey.php create mode 100644 application/views/qso/components/winkeysettings_results.php diff --git a/application/controllers/Qso.php b/application/controllers/Qso.php index 3e8a0839..b633c4be 100755 --- a/application/controllers/Qso.php +++ b/application/controllers/Qso.php @@ -152,11 +152,59 @@ class QSO extends CI_Controller { } function winkeysettings() { - $this->load->view('qso/components/winkeysettings'); + + // Load model Winkey + $this->load->model('winkey'); + + // call settings from model winkey + $data['result'] = $this->winkey->settings($this->session->userdata('user_id'), $this->session->userdata('station_profile_id')); + + if ($data['result'] == false) { + $this->load->view('qso/components/winkeysettings', $data); + } else { + $this->load->view('qso/components/winkeysettings_results', $data); + } } function cwmacrosave(){ - echo "lets save!"; + // Get the data from the form + $function1_name = xss_clean($this->input->post('function1_name')); + $function1_macro = xss_clean($this->input->post('function1_macro')); + + $function2_name = xss_clean($this->input->post('function2_name')); + $function2_macro = xss_clean($this->input->post('function2_macro')); + + $function3_name = xss_clean($this->input->post('function3_name')); + $function3_macro = xss_clean($this->input->post('function3_macro')); + + $function4_name = xss_clean($this->input->post('function4_name')); + $function4_macro = xss_clean($this->input->post('function4_macro')); + + $function5_name = xss_clean($this->input->post('function5_name')); + $function5_macro = xss_clean($this->input->post('function5_macro')); + + $data = [ + 'user_id' => $this->session->userdata('user_id'), + 'station_location_id' => $this->session->userdata('station_profile_id'), + 'function1_name' => $function1_name, + 'function1_macro' => $function1_macro, + 'function2_name' => $function2_name, + 'function2_macro' => $function2_macro, + 'function3_name' => $function3_name, + 'function3_macro' => $function3_macro, + 'function4_name' => $function4_name, + 'function4_macro' => $function4_macro, + 'function5_name' => $function5_name, + 'function5_macro' => $function5_macro, + ]; + + // Load model Winkey + $this->load->model('winkey'); + + // save the data + $this->winkey->save($data); + + echo "Macros Saved, Press Close and lets get sending!"; } function edit_ajax() { diff --git a/application/models/Winkey.php b/application/models/Winkey.php new file mode 100644 index 00000000..94c96009 --- /dev/null +++ b/application/models/Winkey.php @@ -0,0 +1,34 @@ +db->where('user_id', $user_id); + $this->db->where('station_location_id', $station_location_id); + $query = $this->db->get('cwmacros'); + + if ($query->num_rows() > 0) { + return $query->row(); + } else { + return false; + } + } + + public function save($data) + { + $this->db->where('user_id', $data['user_id']); + $this->db->where('station_location_id', $data['station_location_id']); + $query = $this->db->get('cwmacros'); + + if ($query->num_rows() > 0) { + $this->db->where('user_id', $data['user_id']); + $this->db->where('station_location_id', $data['station_location_id']); + $this->db->update('cwmacros', $data); + } else { + $this->db->insert('cwmacros', $data); + } + } +} + +?> \ No newline at end of file diff --git a/application/views/qso/components/winkeysettings.php b/application/views/qso/components/winkeysettings.php index f0e7ccff..c65c402a 100644 --- a/application/views/qso/components/winkeysettings.php +++ b/application/views/qso/components/winkeysettings.php @@ -6,18 +6,19 @@ + diff --git a/application/views/qso/components/winkeysettings_results.php b/application/views/qso/components/winkeysettings_results.php new file mode 100644 index 00000000..cd6031c9 --- /dev/null +++ b/application/views/qso/components/winkeysettings_results.php @@ -0,0 +1,96 @@ + +