fix #334 added button to index if ntp timeserver was not reachable

This commit is contained in:
lumapu 2022-10-16 22:51:55 +02:00
parent 8bd7574111
commit 38bb3fd7e2
3 changed files with 38 additions and 7 deletions

View file

@ -13,7 +13,7 @@
//-------------------------------------
#define VERSION_MAJOR 0
#define VERSION_MINOR 5
#define VERSION_PATCH 19
#define VERSION_PATCH 20
//-------------------------------------

View file

@ -41,13 +41,14 @@ function lbl(htmlfor, val, cl=null, id=null) {
return e;
}
function inp(name, val, max=32, cl=["text"], id=null) {
function inp(name, val, max=32, cl=["text"], id=null, type=null) {
e = document.createElement('input');
e.classList.add(...cl);
e.name = name;
e.value = val;
e.maxLength = max;
if(null != type) e.maxLength = max;
if(null != id) e.id = id;
if(null != type) e.type = type;
return e;
}
@ -71,9 +72,10 @@ function div(cl) {
return e;
}
function span(val, cl) {
function span(val, cl=null, id=null) {
e = document.createElement('span');
e.innerHTML = val;
e.classList.add(...cl);
if(null != cl) e.classList.add(...cl);
if(null != id) e.id = id;
return e;
}

View file

@ -47,9 +47,29 @@
</div>
<script type="text/javascript">
var mIntervalSet = false;
function apiCb(obj) {
var e = document.getElementById("apiResult");
if(obj["success"]) {
e.innerHTML = " command excuted";
getAjax("/api/index", parse);
}
else
e.innerHTML = " Error: " + obj["error"];
}
function setTime() {
var date = new Date();
var offset = date.getTimezoneOffset() * -60;
var obj = new Object();
obj.cmd = "set_time";
obj.ts = parseInt(offset + (date.getTime() / 1000));
getAjax("/api/setup", apiCb, "POST", JSON.stringify(obj));
}
function parseSys(obj) {
document.getElementById("version").innerHTML = "Git SHA: " + obj["build"] + " :: " + obj["version"];
document.getElementById("wifi_rssi").innerHTML = obj["wifi_rssi"];;
document.getElementById("wifi_rssi").innerHTML = obj["wifi_rssi"];
var date = new Date(obj["ts_now"] * 1000);
var up = obj["ts_uptime"];
@ -61,7 +81,16 @@
+ ("0"+hrs).substr(-2) + ":"
+ ("0"+min).substr(-2) + ":"
+ ("0"+sec).substr(-2);
document.getElementById("date").innerHTML = date.toLocaleString('de-DE', {timeZone: 'UTC'});
var dSpan = document.getElementById("date")
if(0 != obj["ts_now"])
dSpan.innerHTML = date.toLocaleString('de-DE', {timeZone: 'UTC'});
else {
var e = inp("set", "sync from browser", 0, ["btn"], "set", "button");
dSpan.appendChild(span("NTP timeserver unreachable. "));
dSpan.appendChild(e);
dSpan.appendChild(span("", ["span"], "apiResult"));
e.addEventListener("click", setTime);
}
}
function parseStat(obj) {