Files
signalk-plugin/plugin/routes/collection/kiosk.js
Giuseppe Raffa bb8d267cd4 Aggiunta stili CSS per Kiosk, struttura HTML per la Mappa e Riferimenti ai Sensori
• Creato un nuovo file CSS per gli stili del chiosco (kiosk) con variabili, stili per le schede (card) e animazioni.
• Aggiunto un file HTML per l'interfaccia della mappa utilizzando Mapbox, inclusi gli stili e il JavaScript per le funzionalità della mappa.
• Introdotto un file JSON per i riferimenti ai sensori, definendo percorsi ed elementi per i dati di temperatura, vento, onde, posizione, batteria, motore e sistema.

Co-authored-by: Copilot <copilot@github.com>
2026-04-23 16:19:11 +02:00

35 lines
1.4 KiB
JavaScript

const router = require('express').Router();
const express = require('express');
const path = require('path');
const fs = require('fs');
const configManager = require('../../config/configManager.js');
const kioskPath = path.join(__dirname, '../../tools/kiosk');
const htmlFile = path.join(kioskPath, 'kiosk.html');
router.use('/', express.static(kioskPath));
router.get('/', (req, res) => {
const apiUrl = process.env.API_URL || 'https://api.mebboat.it';
const realtimeUrl = process.env.REALTIME_URL || 'https://realtime.mebboat.it';
const realtimeWsUrl = process.env.REALTIME_SOCKET_URL || 'wss://realtime.mebboat.it';
const sensorCode = configManager.getSensorCode();
const sensorName = configManager.getSensorName();
const esc = (s) => String(s || '').replace(/"/g, '&quot;');
const metas = `
<meta name="api-url" content="${esc(apiUrl)}">
<meta name="realtime-url" content="${esc(realtimeUrl)}">
<meta name="realtime-ws-url" content="${esc(realtimeWsUrl)}">
<meta name="sensor-code" content="${esc(sensorCode)}">
<meta name="sensor-name" content="${esc(sensorName)}">
`;
let html;
try { html = fs.readFileSync(htmlFile, 'utf8'); }
catch (e) { return res.status(500).send('kiosk.html not found'); }
html = html.replace('</head>', metas + '</head>');
res.set('Content-Type', 'text/html').send(html);
});
module.exports = router;