2021-08-12 19:17:18 +00:00
|
|
|
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
|
|
|
|
|
|
|
|
class Logbooks_model extends CI_Model {
|
|
|
|
|
|
|
|
function __construct()
|
|
|
|
{
|
|
|
|
// Call the Model constructor
|
|
|
|
parent::__construct();
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
function show_all() {
|
|
|
|
$this->db->where('user_id', $this->session->userdata('user_id'));
|
2021-10-20 19:26:35 +00:00
|
|
|
$this->db->order_by('logbook_name');
|
2021-08-12 19:17:18 +00:00
|
|
|
return $this->db->get('station_logbooks');
|
|
|
|
}
|
2021-08-12 19:36:01 +00:00
|
|
|
|
|
|
|
function add() {
|
|
|
|
// Create data array with field values
|
|
|
|
$data = array(
|
|
|
|
'user_id' => $this->session->userdata('user_id'),
|
|
|
|
'logbook_name' => xss_clean($this->input->post('stationLogbook_Name', true)),
|
|
|
|
);
|
|
|
|
|
|
|
|
// Insert Records
|
|
|
|
$this->db->insert('station_logbooks', $data);
|
|
|
|
}
|
|
|
|
|
2021-10-31 08:56:45 +00:00
|
|
|
function delete($id) {
|
2021-08-12 19:36:01 +00:00
|
|
|
// Clean ID
|
|
|
|
$clean_id = $this->security->xss_clean($id);
|
|
|
|
|
|
|
|
// Delete QSOs
|
2021-10-31 08:56:45 +00:00
|
|
|
$this->db->where('user_id', $this->session->userdata('user_id'));
|
2021-08-12 19:36:01 +00:00
|
|
|
$this->db->where('logbook_id', $id);
|
|
|
|
$this->db->delete('station_logbooks');
|
|
|
|
}
|
2021-08-12 20:10:43 +00:00
|
|
|
|
2021-10-31 08:56:45 +00:00
|
|
|
function edit() {
|
2021-08-12 20:10:43 +00:00
|
|
|
$data = array(
|
|
|
|
'logbook_name' => xss_clean($this->input->post('station_logbook_name', true)),
|
|
|
|
);
|
|
|
|
|
2021-10-31 08:56:45 +00:00
|
|
|
$this->db->where('user_id', $this->session->userdata('user_id'));
|
2021-08-12 20:10:43 +00:00
|
|
|
$this->db->where('logbook_id', xss_clean($this->input->post('logbook_id', true)));
|
|
|
|
$this->db->update('station_logbooks', $data);
|
|
|
|
}
|
|
|
|
|
2021-09-07 17:07:48 +00:00
|
|
|
function set_logbook_active($id) {
|
2021-10-31 08:56:45 +00:00
|
|
|
// Clean input
|
|
|
|
$cleanId = xss_clean($id);
|
|
|
|
|
|
|
|
// be sure that logbook belongs to user
|
|
|
|
$this->db->where('user_id', $this->session->userdata('user_id'));
|
|
|
|
$this->db->where('logbook_id', $cleanId);
|
|
|
|
$query = $this->db->get('station_logbooks');
|
|
|
|
if ($query->num_rows() != 1) {
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
|
2021-09-07 17:07:48 +00:00
|
|
|
$data = array(
|
2021-10-31 08:56:45 +00:00
|
|
|
'active_station_logbook' => $cleanId,
|
2021-09-07 17:07:48 +00:00
|
|
|
);
|
|
|
|
|
2021-10-31 08:56:45 +00:00
|
|
|
$this->db->where('user_id', $this->session->userdata('user_id'));
|
2021-09-07 17:07:48 +00:00
|
|
|
$this->db->update('users', $data);
|
|
|
|
}
|
|
|
|
|
2021-10-31 08:56:45 +00:00
|
|
|
function logbook($id) {
|
2021-08-12 20:10:43 +00:00
|
|
|
// Clean ID
|
|
|
|
$clean_id = $this->security->xss_clean($id);
|
|
|
|
|
2021-10-31 08:56:45 +00:00
|
|
|
$this->db->where('user_id', $this->session->userdata('user_id'));
|
2021-08-12 20:10:43 +00:00
|
|
|
$this->db->where('logbook_id', $clean_id);
|
|
|
|
return $this->db->get('station_logbooks');
|
|
|
|
}
|
2021-09-07 16:42:35 +00:00
|
|
|
|
|
|
|
|
|
|
|
// Creates relationship between a logbook and a station location
|
|
|
|
function create_logbook_location_link($logbook_id, $location_id) {
|
2021-10-31 08:56:45 +00:00
|
|
|
// Clean ID
|
|
|
|
$clean_logbook_id = $this->security->xss_clean($logbook_id);
|
|
|
|
$clean_location_id = $this->security->xss_clean($location_id);
|
|
|
|
|
|
|
|
// be sure that logbook belongs to user
|
|
|
|
$this->db->where('user_id', $this->session->userdata('user_id'));
|
|
|
|
$this->db->where('logbook_id', $clean_logbook_id);
|
|
|
|
$query = $this->db->get('station_logbooks');
|
|
|
|
if ($query->num_rows() != 1) {
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
|
|
|
|
// be sure that station belongs to user
|
|
|
|
$this->db->where('user_id', $this->session->userdata('user_id'));
|
|
|
|
$this->db->where('station_id', $clean_location_id);
|
|
|
|
$query = $this->db->get('station_profile');
|
|
|
|
if ($query->num_rows() != 1) {
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
|
2021-09-07 16:42:35 +00:00
|
|
|
// Create data array with field values
|
|
|
|
$data = array(
|
2021-10-31 08:56:45 +00:00
|
|
|
'station_logbook_id' => $clean_logbook_id,
|
|
|
|
'station_location_id' => $clean_location_id,
|
2021-09-07 16:42:35 +00:00
|
|
|
);
|
|
|
|
|
|
|
|
// Insert Record
|
|
|
|
$this->db->insert('station_logbooks_relationship', $data);
|
|
|
|
}
|
|
|
|
|
|
|
|
function relationship_exists($logbook_id, $location_id) {
|
|
|
|
$this->db->where('station_logbook_id', $logbook_id);
|
|
|
|
$this->db->where('station_location_id', $location_id);
|
|
|
|
$query = $this->db->get('station_logbooks_relationship');
|
|
|
|
|
|
|
|
if ($query->num_rows() > 0){
|
|
|
|
return true;
|
|
|
|
}
|
|
|
|
else{
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
function list_logbook_relationships($logbook_id) {
|
|
|
|
|
|
|
|
$relationships_array = array();
|
|
|
|
|
|
|
|
$this->db->where('station_logbook_id', $logbook_id);
|
|
|
|
$query = $this->db->get('station_logbooks_relationship');
|
|
|
|
|
|
|
|
if ($query->num_rows() > 0){
|
|
|
|
foreach ($query->result() as $row)
|
|
|
|
{
|
|
|
|
array_push($relationships_array, $row->station_location_id);
|
|
|
|
}
|
|
|
|
|
|
|
|
return $relationships_array;
|
|
|
|
}
|
|
|
|
else{
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
}
|
2021-10-12 14:19:39 +00:00
|
|
|
|
|
|
|
function list_logbooks_linked($logbook_id) {
|
|
|
|
|
|
|
|
$relationships_array = array();
|
|
|
|
|
|
|
|
$this->db->where('station_logbook_id', $logbook_id);
|
|
|
|
$query = $this->db->get('station_logbooks_relationship');
|
|
|
|
|
|
|
|
|
|
|
|
if ($query->num_rows() > 0){
|
|
|
|
foreach ($query->result() as $row)
|
|
|
|
{
|
|
|
|
array_push($relationships_array, $row->station_location_id);
|
|
|
|
}
|
|
|
|
|
|
|
|
$this->db->where_in('station_id', $relationships_array);
|
|
|
|
$query = $this->db->get('station_profile');
|
|
|
|
|
|
|
|
return $query;
|
|
|
|
}
|
|
|
|
else{
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
function delete_relationship($logbook_id, $station_id) {
|
|
|
|
// Clean ID
|
|
|
|
$clean_logbook_id = $this->security->xss_clean($logbook_id);
|
|
|
|
$clean_station_id = $this->security->xss_clean($station_id);
|
|
|
|
|
2021-10-31 08:56:45 +00:00
|
|
|
// be sure that logbook belongs to user
|
|
|
|
$this->db->where('user_id', $this->session->userdata('user_id'));
|
|
|
|
$this->db->where('logbook_id', $clean_logbook_id);
|
|
|
|
$query = $this->db->get('station_logbooks');
|
|
|
|
if ($query->num_rows() != 1) {
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
|
|
|
|
// be sure that station belongs to user
|
|
|
|
$this->db->where('user_id', $this->session->userdata('user_id'));
|
|
|
|
$this->db->where('station_id', $clean_station_id);
|
|
|
|
$query = $this->db->get('station_profile');
|
|
|
|
if ($query->num_rows() != 1) {
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
|
2021-10-12 14:19:39 +00:00
|
|
|
// Delete QSOs
|
|
|
|
$this->db->where('station_logbook_id', $clean_logbook_id);
|
|
|
|
$this->db->where('station_location_id', $clean_station_id);
|
|
|
|
$this->db->delete('station_logbooks_relationship');
|
|
|
|
}
|
2021-08-12 19:17:18 +00:00
|
|
|
}
|
|
|
|
?>
|