dockerfiles added

This commit is contained in:
2025-11-06 13:39:42 +01:00
parent c004bcee24
commit e76cb3dc21
14 changed files with 663 additions and 20 deletions

View File

@@ -519,7 +519,14 @@
</div>
<script>
const API_BASE = 'http://localhost:8001';
// API_BASE injected from backend (supports Docker/K8s environments)
window.API_BASE = '{{ api_base }}';
// Helper function to construct API URLs
function api(url) {
return `${window.API_BASE}${url}`;
}
let eventSource = null;
let currentState = {};
let thermostatTargets = {};
@@ -542,7 +549,7 @@
const newState = currentState[deviceId] === 'on' ? 'off' : 'on';
try {
const response = await fetch(`${API_BASE}/devices/${deviceId}/set`, {
const response = await fetch(api(`/devices/${deviceId}/set`), {
method: 'POST',
headers: {
'Content-Type': 'application/json'
@@ -579,7 +586,7 @@
// Set brightness
async function setBrightness(deviceId, brightness) {
try {
const response = await fetch(`${API_BASE}/devices/${deviceId}/set`, {
const response = await fetch(api(`/devices/${deviceId}/set`), {
method: 'POST',
headers: {
'Content-Type': 'application/json'
@@ -612,7 +619,7 @@
const newTarget = Math.max(5.0, Math.min(30.0, currentTarget + delta));
try {
const response = await fetch(`${API_BASE}/devices/${deviceId}/set`, {
const response = await fetch(api(`/devices/${deviceId}/set`), {
method: 'POST',
headers: {
'Content-Type': 'application/json'
@@ -645,7 +652,7 @@
const currentTarget = thermostatTargets[deviceId] || 21.0;
try {
const response = await fetch(`${API_BASE}/devices/${deviceId}/set`, {
const response = await fetch(api(`/devices/${deviceId}/set`), {
method: 'POST',
headers: {
'Content-Type': 'application/json'
@@ -777,7 +784,7 @@
// Connect to SSE
function connectSSE() {
eventSource = new EventSource(`${API_BASE}/realtime`);
eventSource = new EventSource(api('/realtime'));
eventSource.onopen = () => {
console.log('SSE connected');
@@ -837,7 +844,7 @@
// Optional: Load initial state from API
async function loadDevices() {
try {
const response = await fetch(`${API_BASE}/devices`);
const response = await fetch(api('/devices'));
const devices = await response.json();
console.log('Loaded devices:', devices);
} catch (error) {