Files
OBPkp61/web/index.html
2025-12-03 20:11:12 +01:00

167 lines
5.0 KiB
HTML

<!DOCTYPE html>
<html><head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>OBPkeyboard 6/1</title>
<link rel="icon" href="data:,">
<script>
if (!window.isSecureContext) {
const s = document.createElement('script');
s.src = 'sha256.js';
document.head.appendChild(s);
}
</script>
<script type="text/javascript" src="index.js"></script>
<link rel="stylesheet" href="index.css">
</head>
<body>
<div class="main">
<h1 id="headline">OBPkb</h1>
<div class="row">
<span class="label" id="conn_label">disconnected</span>
<span class="value" id="connected"></span>
</div>
<div id="tabs">
<div class="tab active" data-page="statusPage">Status</div>
<div class="tab" data-page="configPage">Config</div>
<div class="tab" data-page="updatePage">Update</div>
<div class="tab" data-url="https://computerclub.hoogi.de/obpkeypad" data-window="help" id="helpButton">Help</div>
</div>
<div id="tabPages">
<div id="statusPage" class="tabPage">
<div id="statusPageContent">
<div class="row">
<span class="label">Firmware</span>
<span class="value" id="version">---</span>
<button class="infoButton" id="converterInfo">?</button>
</div>
<div class="row even">
<span class="label">MCU-ID</span>
<span class="value" id="chipid">---</span>
</div>
<div class="row">
<span class="label">CPU speed</span>
<span class="value" id="cpuspeed">---</span>
</div>
<div class="row even">
<span class="label">Free heap</span>
<span class="value" id="heap">---</span>
</div>
<div class="row">
<span class="label">Uptime</span>
<span class="value" id="uptime">---</span>
</div>
<div class="row even">
<span class="label">NMEA2000 State</span>
[<span class="value" id="n2knode">---</span>]&nbsp;
<span class="value" id="n2kstate">UNKNOWN</span>
</div>
<div class="row">
<span class="label">Dest A</span>
<span class="value" id="destA">---</span>
</div>
<div class="row even">
<span class="label">Dest B</span>
<span class="value" id="destB">---</span>
</div>
<div class="row">
<span class="label">Dest C</span>
<span class="value" id="destC">---</span>
</div>
<div class="row even">
<span class="label">Sensor: Temperature</span>
<span class="value" id="temp">---</span>°C
</div>
<div class="row">
<span class="label">Sensor: Humidity</span>
<span class="value" id="hum">---</span>%
</div>
</div>
<button id="reset">Reset</button>
</div>
<div class="configForm tabPage hidden" id="configPage">
<div class="buttons">
<button id="resetForm">ReloadConfig</button>
<button id="forgetPass">ForgetPass</button>
<button id="changeConfig">Save&amp;Restart</button>
<button id="exportConfig">Export</button>
<button id="importConfig">Import</button>
<button id="factoryReset">FactoryReset</button>
</div>
<div class="configFormRows">
</div>
</div>
<div class="tabPage hidden" id="updatePage">
<div class="row">
<span class="label">Firmware type</span>
<span class="value status-fwtype">---</span>
</div>
<div class="row">
<span class="label">Chip type</span>
<span class="value status-chipid">---</span>
</div>
<div class="row">
<span class="label">Current version</span>
<span class="value status-version">---</span>
</div>
<div class="row">
<span class="label">New Firmware</span>
<input type="file" name="file1" id="uploadFile">
</div>
<div class="row">
<span class="label"></span>
<span id="imageProperties" class="value"></span>
</div>
<div id="uploadProgress">
<div id="uploadDone"></div>
</div>
<div class="buttons">
<button id="uploadBin">Upload</button>
</div>
</div>
</div>
</div>
<div class="overlayContainer hidden" id="overlayContainer">
<div id="overlay" class="overlay">
<div id="overlayContent" class="overlayContent">
AHA
</div>
<div class="overlayButtons">
</div>
</div>
</div>
<div class="overlayContainer hidden" id="adminPassOverlay">
<div id="adminPassOverlay" class="overlay">
<div id="adminPassOverlayContent" class="overlayContent">
<h2>Admin Password</h2>
<div id="adminPassHint"></div>
<div id="adminPassError" ></div>
<input id="adminPassInput" type="password">
<div class="row">
<span class="label">remember me</span>
<select id="adminPassKeep">
<option value="true">on</option>
<option value="false" selected>off</option>
</select>
</div>
<div class="overlayButtons">
<button id="adminPassCancel">Cancel</button>
<button id="adminPassOk">OK</button>
</div>
</div>
</div>
</div>
</body>
</html>