mirror of
https://github.com/smittix/intercept.git
synced 2026-07-21 15:58:10 -07:00
Fix orbit track to use selected pass's satellite, not dropdown
Bug: Both files were fetching orbit data for the dropdown-selected satellite instead of the satellite from the selected pass. Fixes: - satellite_dashboard.html: updateRealTimePositions() now uses passes[selectedPass].satellite instead of selectedSatellite - index.html: updateRealTimePosition() now ensures the selected pass's satellite is included in the position request, and added includeTrack: true to get orbit data 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
+10
-2
@@ -8437,7 +8437,15 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
function updateRealTimePosition() {
|
function updateRealTimePosition() {
|
||||||
const satellites = getSelectedSatellites();
|
let satellites = getSelectedSatellites();
|
||||||
|
|
||||||
|
// Ensure selected pass's satellite is included in the request
|
||||||
|
if (selectedPass && selectedPass.satellite) {
|
||||||
|
if (!satellites.includes(selectedPass.satellite)) {
|
||||||
|
satellites = [selectedPass.satellite, ...satellites];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (satellites.length === 0) return;
|
if (satellites.length === 0) return;
|
||||||
|
|
||||||
const lat = parseFloat(document.getElementById('obsLat').value);
|
const lat = parseFloat(document.getElementById('obsLat').value);
|
||||||
@@ -8446,7 +8454,7 @@
|
|||||||
fetch('/satellite/position', {
|
fetch('/satellite/position', {
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
headers: { 'Content-Type': 'application/json' },
|
headers: { 'Content-Type': 'application/json' },
|
||||||
body: JSON.stringify({ lat, lon, satellites })
|
body: JSON.stringify({ lat, lon, satellites, includeTrack: true })
|
||||||
})
|
})
|
||||||
.then(r => r.json())
|
.then(r => r.json())
|
||||||
.then(data => {
|
.then(data => {
|
||||||
|
|||||||
@@ -1344,7 +1344,17 @@
|
|||||||
async function updateRealTimePositions() {
|
async function updateRealTimePositions() {
|
||||||
const lat = parseFloat(document.getElementById('obsLat').value);
|
const lat = parseFloat(document.getElementById('obsLat').value);
|
||||||
const lon = parseFloat(document.getElementById('obsLon').value);
|
const lon = parseFloat(document.getElementById('obsLon').value);
|
||||||
const satColor = satellites[selectedSatellite]?.color || '#00d4ff';
|
|
||||||
|
// Use satellite from selected pass, or fall back to dropdown selection
|
||||||
|
let targetSatellite = selectedSatellite;
|
||||||
|
let satColor = satellites[selectedSatellite]?.color || '#00d4ff';
|
||||||
|
|
||||||
|
if (selectedPass !== null && passes[selectedPass]) {
|
||||||
|
const pass = passes[selectedPass];
|
||||||
|
// Use the satellite name from the pass (backend accepts names or NORAD IDs)
|
||||||
|
targetSatellite = pass.satellite;
|
||||||
|
satColor = pass.color || satColor;
|
||||||
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
const response = await fetch('/satellite/position', {
|
const response = await fetch('/satellite/position', {
|
||||||
@@ -1353,7 +1363,7 @@
|
|||||||
body: JSON.stringify({
|
body: JSON.stringify({
|
||||||
latitude: lat,
|
latitude: lat,
|
||||||
longitude: lon,
|
longitude: lon,
|
||||||
satellites: [selectedSatellite],
|
satellites: [targetSatellite],
|
||||||
includeTrack: true
|
includeTrack: true
|
||||||
})
|
})
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user