| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102 |
- <!DOCTYPE html>
- <html lang="et" data-theme="light">
- <head>
- <meta charset="utf-8" />
- <meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover" />
- <meta name="theme-color" content="#1f6feb" id="meta-theme" />
- <meta name="robots" content="noindex" />
- <title>Nutikodu — andurid</title>
- <link rel="icon" href="/icon.svg" type="image/svg+xml" />
- <link rel="manifest" href="/manifest.webmanifest" />
- <link rel="apple-touch-icon" href="/icon.svg" />
- <link rel="stylesheet" href="/style.css" />
- </head>
- <body>
- <header>
- <div class="brand">
- <span class="logo" aria-hidden="true">🏠</span>
- <div>
- <h1>Nutikodu</h1>
- <div class="sub" id="subtitle">Zigbee andurid</div>
- </div>
- </div>
- <div class="header-actions">
- <span class="status" id="status" title="Ühenduse olek"></span>
- <button type="button" id="away-toggle" class="away-pill" hidden aria-label="Kodust eemal lüliti"><span class="away-ico">🏠</span><span id="away-title">Kodus</span></button>
- <a id="auth-link" class="icon-btn" href="/login" title="Sisselogimine" style="text-decoration:none">🔒</a>
- <button id="theme-toggle" class="icon-btn" title="Vaheta teema" aria-label="Vaheta teema">🌙</button>
- </div>
- </header>
- <main>
- <section class="cards" id="cards"></section>
- <section class="panel">
- <div class="controls">
- <div class="presets" id="presets">
- <button type="button" data-days="1">24 h</button>
- <button type="button" data-days="7" class="active">7 p</button>
- <button type="button" data-days="30">30 p</button>
- <button type="button" data-days="90">90 p</button>
- <button type="button" data-days="365">1 a</button>
- <button type="button" data-days="all">Kõik</button>
- </div>
- <div class="custom-range">
- <label>Algus<input type="datetime-local" id="from" /></label>
- <label>Lõpp<input type="datetime-local" id="to" /></label>
- <button type="button" id="apply" class="btn">Kuva</button>
- </div>
- <div class="toggles">
- <label class="chk"><input type="checkbox" id="show-temp" checked /> <span>Temperatuur</span></label>
- <label class="chk"><input type="checkbox" id="show-hum" checked /> <span>Niiskus</span></label>
- <label class="chk"><input type="checkbox" id="show-out" checked /> <span>Väli</span></label>
- <div class="seg" id="agg">
- <button type="button" data-agg="hour" class="active">Tund</button>
- <button type="button" data-agg="day">Päev</button>
- </div>
- </div>
- </div>
- <div id="chart" aria-label="Temperatuuri ja niiskuse ajatelg"></div>
- <div id="hint" class="hint" hidden></div>
- </section>
- <div id="protected" hidden>
- <section class="cards" id="cards-uus67"></section>
- <section class="panel">
- <h2 class="panel-title">⚡ Energia (pistikud)</h2>
- <div id="chart-energy" aria-label="Energia ajatelg" style="height:300px"></div>
- <div id="hint-energy" class="hint" hidden></div>
- </section>
- <section class="panel">
- <h2 class="panel-title">🚶 Liikumine / kohalolu</h2>
- <div id="chart-motion" aria-label="Liikumise ajatelg" style="height:220px"></div>
- <div id="hint-motion" class="hint" hidden></div>
- </section>
- <footer class="foot">
- <span id="range-label"></span>
- </footer>
- </main>
- <script src="/vendor/echarts.min.js"></script>
- <script src="/app.js"></script>
- <!-- HyperDX Browser Integration: session replays + RUM (vt LOEMIND) -->
- <script src="https://unpkg.com/@hyperdx/browser@0.26.0/build/index.js"></script>
- <script>
- if (window.HyperDX) {
- HyperDX.init({
- apiKey: '02a19ecf-f62e-4e17-819f-3ee1498d69f3',
- service: 'nutikodu-web',
- url: 'https://otel.odamus.com',
- consoleCapture: true,
- advancedNetworkCapture: true,
- maskAllInputs: true,
- maskAllText: true,
- });
- }
- </script>
- </body>
- </html>
|