2011-04-25 15:24:01 +00:00
|
|
|
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
|
|
|
|
|
2011-06-17 12:52:00 +00:00
|
|
|
/*
|
|
|
|
TODO
|
|
|
|
- Update Edit
|
|
|
|
- Store Radio Information
|
|
|
|
- Upload to clublog (request api key)
|
|
|
|
*/
|
|
|
|
|
2011-04-25 15:24:01 +00:00
|
|
|
class QSO extends CI_Controller {
|
|
|
|
|
|
|
|
public function index()
|
|
|
|
{
|
2012-04-08 12:17:14 +00:00
|
|
|
|
|
|
|
$this->load->model('cat');
|
2019-01-01 19:14:25 +00:00
|
|
|
$this->load->model('stations');
|
2011-07-22 00:08:47 +00:00
|
|
|
$this->load->model('logbook_model');
|
2011-08-19 16:12:13 +00:00
|
|
|
$this->load->model('user_model');
|
|
|
|
if(!$this->user_model->authorize(2)) { $this->session->set_flashdata('notice', 'You\'re not allowed to do that!'); redirect('dashboard'); }
|
2011-07-22 00:08:47 +00:00
|
|
|
|
2020-02-27 14:43:07 +00:00
|
|
|
$data['active_station_profile'] = $this->stations->find_active();
|
2012-04-08 12:17:14 +00:00
|
|
|
$data['notice'] = false;
|
2019-01-01 19:14:25 +00:00
|
|
|
$data['stations'] = $this->stations->all();
|
2012-04-08 12:17:14 +00:00
|
|
|
$data['radios'] = $this->cat->radios();
|
2019-05-21 12:44:22 +00:00
|
|
|
$data['query'] = $this->logbook_model->last_custom('5');
|
2020-04-13 08:34:02 +00:00
|
|
|
$data['dxcc'] = $this->logbook_model->fetchDxcc();
|
2020-04-13 12:37:09 +00:00
|
|
|
$data['iota'] = $this->logbook_model->fetchIota();
|
2020-02-27 14:43:07 +00:00
|
|
|
|
2011-06-17 12:52:00 +00:00
|
|
|
$this->load->library('form_validation');
|
|
|
|
|
|
|
|
$this->form_validation->set_rules('start_date', 'Date', 'required');
|
|
|
|
$this->form_validation->set_rules('start_time', 'Time', 'required');
|
|
|
|
$this->form_validation->set_rules('callsign', 'Callsign', 'required');
|
|
|
|
|
|
|
|
if ($this->form_validation->run() == FALSE)
|
|
|
|
{
|
2011-11-04 17:32:03 +00:00
|
|
|
$data['page_title'] = "Add QSO";
|
|
|
|
|
2019-05-21 12:44:22 +00:00
|
|
|
$this->load->view('interface_assets/header', $data);
|
2011-11-04 17:32:03 +00:00
|
|
|
$this->load->view('qso/index');
|
2019-05-21 12:44:22 +00:00
|
|
|
$this->load->view('interface_assets/footer');
|
2011-06-17 12:52:00 +00:00
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
2011-07-22 00:08:47 +00:00
|
|
|
// Add QSO
|
2016-02-12 16:31:29 +00:00
|
|
|
// $this->logbook_model->add();
|
2019-02-25 22:13:09 +00:00
|
|
|
//change to create_qso function as add and create_qso duplicate functionality
|
|
|
|
$this->logbook_model->create_qso();
|
|
|
|
|
2011-07-22 00:08:47 +00:00
|
|
|
// Store Basic QSO Info for reuse
|
2019-02-25 22:13:09 +00:00
|
|
|
// Put data in an array first, then call set_userdata once.
|
|
|
|
// This solves the problem of CI dumping out the session
|
|
|
|
// cookie each time set_userdata is called.
|
|
|
|
// For more info, see http://bizhole.com/codeigniter-nginx-error-502-bad-gateway/
|
|
|
|
// $qso_data = [
|
|
|
|
// 18-Jan-2016 - make php v5.3 friendly!
|
|
|
|
$qso_data = array(
|
2020-05-02 14:54:13 +00:00
|
|
|
'start_date' => $this->input->post('start_date'),
|
|
|
|
'start_time' => $this->input->post('start_time'),
|
2019-02-25 22:13:09 +00:00
|
|
|
'band' => $this->input->post('band'),
|
|
|
|
'freq' => $this->input->post('freq_display'),
|
|
|
|
'freq_rx' => $this->input->post('freq_display_rx'),
|
|
|
|
'mode' => $this->input->post('mode'),
|
|
|
|
'sat_name' => $this->input->post('sat_name'),
|
|
|
|
'sat_mode' => $this->input->post('sat_mode'),
|
2020-03-02 19:53:50 +00:00
|
|
|
'prop_mode' => $this->input->post('prop_mode'),
|
2019-02-25 22:13:09 +00:00
|
|
|
'radio' => $this->input->post('radio'),
|
2020-04-13 15:47:58 +00:00
|
|
|
'station_profile_id' => $this->input->post('station_profile'),
|
|
|
|
'transmit_power' => $this->input->post('transmit_power')
|
2019-02-25 22:13:09 +00:00
|
|
|
);
|
|
|
|
// ];
|
2019-06-25 11:46:13 +00:00
|
|
|
|
|
|
|
setcookie("radio", $qso_data['radio'], time()+3600*24*99);
|
|
|
|
setcookie("station_profile_id", $qso_data['station_profile_id'], time()+3600*24*99);
|
2015-03-18 08:12:12 +00:00
|
|
|
|
2019-02-25 22:13:09 +00:00
|
|
|
$this->session->set_userdata($qso_data);
|
2020-03-02 19:53:50 +00:00
|
|
|
|
|
|
|
// If SAT name is set make it session set to sat
|
|
|
|
if($this->input->post('sat_name')) {
|
|
|
|
$this->session->set_userdata('prop_mode', 'SAT');
|
|
|
|
}
|
2019-02-25 22:13:09 +00:00
|
|
|
|
2019-05-21 12:44:22 +00:00
|
|
|
// Get last 5 qsos
|
|
|
|
$data['query'] = $this->logbook_model->last_custom('5');
|
2011-06-17 12:52:00 +00:00
|
|
|
|
2011-07-22 00:08:47 +00:00
|
|
|
// Set Any Notice Messages
|
2011-06-17 12:52:00 +00:00
|
|
|
$data['notice'] = "QSO Added";
|
2011-07-22 00:08:47 +00:00
|
|
|
|
2011-06-17 12:52:00 +00:00
|
|
|
// Load view to create another contact
|
2011-11-04 17:32:03 +00:00
|
|
|
$data['page_title'] = "Add QSO";
|
|
|
|
|
2019-05-21 12:44:22 +00:00
|
|
|
$this->load->view('interface_assets/header', $data);
|
2011-11-04 17:32:03 +00:00
|
|
|
$this->load->view('qso/index');
|
2019-05-21 12:44:22 +00:00
|
|
|
$this->load->view('interface_assets/footer');
|
2011-06-17 12:52:00 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
function edit() {
|
2011-07-22 00:08:47 +00:00
|
|
|
|
|
|
|
$this->load->model('logbook_model');
|
2011-08-19 16:12:13 +00:00
|
|
|
$this->load->model('user_model');
|
|
|
|
if(!$this->user_model->authorize(2)) { $this->session->set_flashdata('notice', 'You\'re not allowed to do that!'); redirect('dashboard'); }
|
2011-07-22 00:08:47 +00:00
|
|
|
$query = $this->logbook_model->qso_info($this->uri->segment(3));
|
2011-06-17 12:52:00 +00:00
|
|
|
|
|
|
|
$this->load->library('form_validation');
|
|
|
|
|
|
|
|
$this->form_validation->set_rules('time_on', 'Start Date', 'required');
|
|
|
|
$this->form_validation->set_rules('time_off', 'End Date', 'required');
|
|
|
|
$this->form_validation->set_rules('callsign', 'Callsign', 'required');
|
|
|
|
|
2020-04-17 10:38:01 +00:00
|
|
|
$data['qso'] = $query->row();
|
|
|
|
$data['dxcc'] = $this->logbook_model->fetchDxcc();
|
|
|
|
$data['iota'] = $this->logbook_model->fetchIota();
|
2011-07-22 00:08:47 +00:00
|
|
|
|
2011-06-17 12:52:00 +00:00
|
|
|
if ($this->form_validation->run() == FALSE)
|
|
|
|
{
|
2019-06-13 13:34:31 +00:00
|
|
|
$this->load->view('qso/edit', $data);
|
2011-06-17 12:52:00 +00:00
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
2011-07-22 00:08:47 +00:00
|
|
|
$this->logbook_model->edit();
|
2011-06-17 12:52:00 +00:00
|
|
|
$this->session->set_flashdata('notice', 'Record Updated');
|
2011-11-25 17:29:46 +00:00
|
|
|
$this->load->view('qso/edit_done');
|
2011-06-17 12:52:00 +00:00
|
|
|
}
|
2011-08-28 13:51:57 +00:00
|
|
|
}
|
|
|
|
|
2019-06-16 14:29:31 +00:00
|
|
|
function qsl_rcvd($id, $method) {
|
2019-06-15 18:20:20 +00:00
|
|
|
$this->load->model('logbook_model');
|
|
|
|
$this->load->model('user_model');
|
|
|
|
if(!$this->user_model->authorize(2)) { $this->session->set_flashdata('notice', 'You\'re not allowed to do that!'); redirect('dashboard'); }
|
|
|
|
|
2019-06-16 14:29:31 +00:00
|
|
|
// Update Logbook to Mark Paper Card Received
|
|
|
|
|
|
|
|
$this->logbook_model->paperqsl_update($id, $method);
|
|
|
|
|
|
|
|
$this->session->set_flashdata('notice', 'QSL Card: Marked as Received');
|
|
|
|
|
|
|
|
redirect('logbook');
|
2019-06-15 18:20:20 +00:00
|
|
|
}
|
|
|
|
|
2011-08-28 13:51:57 +00:00
|
|
|
/* Delete QSO */
|
|
|
|
function delete($id) {
|
|
|
|
$this->load->model('logbook_model');
|
|
|
|
|
|
|
|
$this->logbook_model->delete($id);
|
2011-06-17 12:52:00 +00:00
|
|
|
|
2011-08-28 13:51:57 +00:00
|
|
|
$this->session->set_flashdata('notice', 'QSO Deleted Successfully');
|
2011-10-18 22:06:34 +00:00
|
|
|
$data['message_title'] = "Deleted";
|
|
|
|
$data['message_contents'] = "QSO Deleted Successfully";
|
|
|
|
$this->load->view('messages/message', $data);
|
|
|
|
|
2019-06-23 15:11:55 +00:00
|
|
|
|
|
|
|
// If deletes from /logbook dropdown redirect
|
|
|
|
if (strpos($_SERVER['HTTP_REFERER'], '/logbook') !== false) {
|
|
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
|
|
}
|
2011-04-25 15:24:01 +00:00
|
|
|
}
|
2011-09-13 17:01:19 +00:00
|
|
|
|
|
|
|
|
2011-09-18 11:21:51 +00:00
|
|
|
function band_to_freq($band, $mode) {
|
2011-09-13 17:01:19 +00:00
|
|
|
|
|
|
|
$this->load->library('frequency');
|
|
|
|
|
2011-09-18 11:21:51 +00:00
|
|
|
echo $this->frequency->convent_band($band, $mode);
|
2011-09-13 17:01:19 +00:00
|
|
|
}
|
2011-08-19 16:12:13 +00:00
|
|
|
}
|