Remove limit validation and update SQL join in logbook

Removed the limit parameter validation and sanitization from Api.php, delegating limit handling elsewhere. Changed the SQL query in Logbook_model.php to use LEFT JOIN for station_profile, ensuring all logbook records are included even if no matching station_profile exists.
pull/3339/head
Peter Goodhall 2025-09-09 14:19:15 +01:00
rodzic f1dbceafd3
commit 72ea1e3353
2 zmienionych plików z 6 dodań i 15 usunięć

Wyświetl plik

@ -857,15 +857,6 @@ class API extends CI_Controller {
return;
}
// Validate and sanitize limit parameter
$limit = intval($limit);
if ($limit <= 0) {
$limit = 10; // default
}
if ($limit > 50) {
$limit = 50; // maximum
}
$this->load->model('logbooks_model');
$this->load->model('logbook_model');

Wyświetl plik

@ -1945,13 +1945,13 @@ class Logbook_model extends CI_Model
$location_list = "'" . implode("','", $logbooks_locations_array) . "'";
$sql = "SELECT * FROM ( select * from " . $this->config->item('table_name') . "
WHERE station_id IN(" . $location_list . ")
order by col_time_on desc, col_primary_key desc
limit " . $num .
WHERE station_id IN(" . $location_list . ")
order by col_time_on desc, col_primary_key desc
limit " . $num .
") hrd
JOIN station_profile ON station_profile.station_id = hrd.station_id
LEFT JOIN dxcc_entities ON hrd.col_dxcc = dxcc_entities.adif
order by col_time_on desc, col_primary_key desc";
LEFT JOIN station_profile ON station_profile.station_id = hrd.station_id // Changed to LEFT JOIN
LEFT JOIN dxcc_entities ON hrd.col_dxcc = dxcc_entities.adif
order by col_time_on desc, col_primary_key desc";
$query = $this->db->query($sql);