Unify radio API

Radio API should not depend on the name
Remove further occurrence of SatPC32 and CloudlogCatQt
这个提交包含在:
kb-light 2022-08-27 13:21:56 +00:00
父节点 f61c2cca12
当前提交 a60885f2ed
共有 3 个文件被更改,包括 59 次插入126 次删除

查看文件

@ -10,132 +10,42 @@
$timestamp = gmdate("Y-m-d H:i:s"); $timestamp = gmdate("Y-m-d H:i:s");
} }
if (isset($result['prop_mode'])) {
$prop_mode = $result['prop_mode'];
} else {
// For backward compatibility, SatPC32 does not set propergation mode
if (isset($result['sat_name'])) {
$prop_mode = "SAT";
} else {
$prop_mode = NULL;
}
}
$this->db->where('radio', $result['radio']); $this->db->where('radio', $result['radio']);
$this->db->where('user_id', $user_id); $this->db->where('user_id', $user_id);
$query = $this->db->get('cat'); $query = $this->db->get('cat');
if ($query->num_rows() > 0) if ($query->num_rows() > 0)
{ {
if($result['radio'] == "SatPC32") { // Update the record
// Update the record foreach ($query->result() as $row)
foreach ($query->result() as $row) {
{ $radio_id = $row->id;
$radio_id = $row->id;
if ($prop_mode == "SAT") {
$data = array( $data = array(
'prop_mode' => $prop_mode,
'sat_name' => $result['sat_name'], 'sat_name' => $result['sat_name'],
'downlink_freq' => $result['downlink_freq'], 'downlink_freq' => $result['downlink_freq'],
'uplink_freq' => $result['uplink_freq'], 'uplink_freq' => $result['uplink_freq'],
'downlink_mode' => $result['downlink_mode'], 'downlink_mode' => $result['downlink_mode'],
'uplink_mode' => $result['uplink_mode'], 'uplink_mode' => $result['uplink_mode'],
'prop_mode' => 'SAT',
'timestamp' => $timestamp, 'timestamp' => $timestamp,
);
$this->db->where('id', $radio_id);
$this->db->where('user_id', $user_id);
$this->db->update('cat', $data);
}
} else if($result['radio'] == "CloudLogCATQt") {
// Update the record
foreach ($query->result() as $row)
{
$radio_id = $row->id;
if ($result['prop_mode'] == "SAT") {
$data = array(
'sat_name' => $result['sat_name'],
'prop_mode' => $result['prop_mode'],
'mode' => NULL,
'frequency' => NULL,
'downlink_freq' => $result['downlink_freq'],
'uplink_freq' => $result['uplink_freq'],
'downlink_mode' => $result['downlink_mode'],
'uplink_mode' => $result['uplink_mode'],
'timestamp' => $timestamp,
);
if (isset($result['power'])) {
$data['power'] = $result['power'];
}
} else {
$data = array(
'prop_mode' => $result['prop_mode'],
'mode' => $result['mode'],
'frequency' => $result['frequency'],
'downlink_freq' => NULL,
'downlink_mode' => NULL,
'uplink_freq' => NULL,
'uplink_mode' => NULL,
'timestamp' => $timestamp,
);
if (isset($result['power'])) {
$data['power'] = $result['power'];
}
}
$this->db->where('id', $radio_id);
$this->db->where('user_id', $user_id);
$this->db->update('cat', $data);
}
} else {
// Update the record
foreach ($query->result() as $row)
{
$radio_id = $row->id;
$data = array(
'frequency' => $result['frequency'],
'mode' => $result['mode'],
'timestamp' => $timestamp,
);
if (isset($result['power'])) {
$data['power'] = $result['power'];
}
$this->db->where('id', $radio_id);
$this->db->where('user_id', $user_id);
$this->db->update('cat', $data);
}
}
} else {
// Add a new record
if($result['radio'] == "SatPC32") {
$data = array(
'radio' => $result['radio'],
'frequency' => $result['frequency'],
'mode' => $result['mode'],
'sat_name' => $result['sat_name'],
'downlink_freq' => $result['downlink_freq'],
'uplink_freq' => $result['uplink_freq'],
'downlink_mode' => $result['downlink_mode'],
'uplink_mode' => $result['uplink_mode'],
'prop_mode' => 'SAT',
'user_id' => $user_id,
'timestamp' => $timestamp,
);
} else if($result['radio'] == "CloudLogCATQt") {
if ($result['prop_mode'] == "SAT") {
$data = array(
'radio' => $result['radio'],
'sat_name' => $result['sat_name'],
'prop_mode' => $result['prop_mode'],
'mode' => NULL, 'mode' => NULL,
'frequency' => NULL, 'frequency' => NULL,
'downlink_freq' => $result['downlink_freq'],
'uplink_freq' => $result['uplink_freq'],
'downlink_mode' => $result['downlink_mode'],
'uplink_mode' => $result['uplink_mode'],
'user_id' => $user_id,
'timestamp' => $timestamp,
); );
if (isset($result['power'])) {
$data['power'] = $result['power'];
}
} else { } else {
$data = array( $data = array(
'radio' => $result['radio'],
'prop_mode' => $result['prop_mode'], 'prop_mode' => $result['prop_mode'],
'mode' => $result['mode'], 'mode' => $result['mode'],
'frequency' => $result['frequency'], 'frequency' => $result['frequency'],
@ -143,25 +53,52 @@
'downlink_mode' => NULL, 'downlink_mode' => NULL,
'uplink_freq' => NULL, 'uplink_freq' => NULL,
'uplink_mode' => NULL, 'uplink_mode' => NULL,
'user_id' => $user_id,
'timestamp' => $timestamp, 'timestamp' => $timestamp,
); );
if (isset($result['power'])) {
$data['power'] = $result['power'];
}
} }
} else {
$data = array(
'radio' => $result['radio'],
'frequency' => $result['frequency'],
'mode' => $result['mode'],
'timestamp' => $timestamp,
'user_id' => $user_id,
);
if (isset($result['power'])) { if (isset($result['power'])) {
$data['power'] = $result['power']; $data['power'] = $result['power'];
} }
$this->db->where('id', $radio_id);
$this->db->where('user_id', $user_id);
$this->db->update('cat', $data);
}
} else {
// Add a new record
if ($prop_mode == "SAT") {
$data = array(
'radio' => $result['radio'],
'frequency' => NULL,
'mode' => NULL,
'sat_name' => $result['sat_name'],
'downlink_freq' => $result['downlink_freq'],
'uplink_freq' => $result['uplink_freq'],
'downlink_mode' => $result['downlink_mode'],
'uplink_mode' => $result['uplink_mode'],
'prop_mode' => $prop_mode,
'user_id' => $user_id,
'timestamp' => $timestamp,
);
} else {
$data = array(
'radio' => $result['radio'],
'prop_mode' => $prop_mode,
'mode' => $result['mode'],
'frequency' => $result['frequency'],
'downlink_freq' => NULL,
'downlink_mode' => NULL,
'uplink_freq' => NULL,
'uplink_mode' => NULL,
'user_id' => $user_id,
'timestamp' => $timestamp,
);
}
if (isset($result['power'])) {
$data['power'] = $result['power'];
} }
$this->db->insert('cat', $data); $this->db->insert('cat', $data);

查看文件

@ -143,7 +143,7 @@ function echoQrbCalcLink($mygrid, $grid, $vucc) {
<tr> <tr>
<td><?php echo $row['radio']; ?></td> <td><?php echo $row['radio']; ?></td>
<td> <td>
<?php if($row['radio'] == "SatPC32" || $row['radio'] == "CloudLogCATQt") { ?> <?php if($row['prop_mode'] == 'SAT') { ?>
<?php echo $row['sat_name']; ?> <?php echo $row['sat_name']; ?>
<?php } else { ?> <?php } else { ?>
<?php echo $this->frequency->hz_to_mhz($row['frequency']); ?> (<?php echo $row['mode']; ?>) <?php echo $this->frequency->hz_to_mhz($row['frequency']); ?> (<?php echo $row['mode']; ?>)

查看文件

@ -1209,21 +1209,17 @@ $(document).on('keypress',function(e) {
// If a radios selected from drop down select radio update. // If a radios selected from drop down select radio update.
$('.radios').change(updateFromCAT); $('.radios').change(updateFromCAT);
// If radio isn't SatPC32 or CloudLogCATQt clear sat_name and sat_mode // If no radio is selected clear data
$( ".radios" ).change(function() { $( ".radios" ).change(function() {
if ($(".radios option:selected").text() != "SatPC32" && $(".radios option:selected").text() != "CloudLogCATQt") { if ($(".radios option:selected").val() == 0) {
$("#sat_name").val(""); $("#sat_name").val("");
$("#sat_mode").val(""); $("#sat_mode").val("");
$("#frequency").val(""); $("#frequency").val("");
$("#frequency_rx").val(""); $("#frequency_rx").val("");
$("#band_rx").val(""); $("#band_rx").val("");
$("#selectPropagation").val($("#selectPropagation option:first").val()); $("#selectPropagation").val($("#selectPropagation option:first").val());
}
if ($(".radios option:selected").text() == "None") {
$(".radio_timeout_error" ).remove(); $(".radio_timeout_error" ).remove();
} }
}); });
</script> </script>