import path from 'path' import fs from 'fs' import { broadcast } from './ws.js'; const CSV_PATH = path.join(process.cwd(), 'db/logs.csv') function appendToCSV(row) { const exists = fs.existsSync(CSV_PATH) const header = 'name,latitude,longitude,timestamp\n' const line = `${row.name},${row.latitude},${row.longitude},${row.timestamp}\n` if (!exists) { fs.appendFileSync(CSV_PATH, header + line, 'utf8') } else { fs.appendFileSync(CSV_PATH, line, 'utf8') } } const handlers = { updateLocation(req, res) { const { name, latitude, longitude, timestamp } = req.body; console.log(`Received location: (${name}, ${latitude}, ${longitude}) at ${timestamp}`); broadcast("update-location", { name, latitude, longitude, timestamp }); appendToCSV({ name, latitude, longitude, timestamp }) res.json({ success: true }); }, async uploadCSV(req, res) { const csvString = req.body; console.log(csvString); await global.db.uploadCSV(csvString) res.json({ ok: true }); } } export default handlers;