2022 / 12
This commit is contained in:
765
ESPNTUhrPx.ino
765
ESPNTUhrPx.ino
File diff suppressed because it is too large
Load Diff
133
index_html.h
133
index_html.h
@@ -142,9 +142,7 @@ const char html_page_index[] PROGMEM = R"rawliteral(
|
||||
width: 100%;
|
||||
padding: 0.25rem 0.5rem;
|
||||
@media(min-width: 600px) {
|
||||
|
||||
margin: 0 1em 2em;
|
||||
|
||||
}
|
||||
|
||||
&:hover { text-decoration: none; }
|
||||
@@ -185,7 +183,8 @@ const char html_page_index[] PROGMEM = R"rawliteral(
|
||||
<label class="center">aktuell:</label><br>
|
||||
<span class='act' id="actTime"></span><br>
|
||||
<span class='act' id="actTacTime"></span><br>
|
||||
<span class='act' id="actDate"></span>
|
||||
<span class='act' id="actDate"></span><br>
|
||||
<span class='act' id="actKW"></span>
|
||||
</div><br>
|
||||
<div class='fs075'>
|
||||
<label>letzter abgleich:</label>
|
||||
@@ -199,14 +198,20 @@ const char html_page_index[] PROGMEM = R"rawliteral(
|
||||
<option value=0>taktische Uhrzeit</option>
|
||||
<option value=1>Uhrzeit</option>
|
||||
<option value=2>Datum / Uhrzeit</option>
|
||||
<option value=3>Analoguhr</option>
|
||||
<option value=4>Analoguhr / Datum</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class='option m50' onclick="return false">
|
||||
<span class="wsnw">
|
||||
<label for="brigtness">Helligkeit LEDs</label>
|
||||
<span class="wsnw"><span id="brigtness"></span> %</span><br>
|
||||
<label for="lux">Umgebungshelligkeit</label>
|
||||
<span class="wsnw"><span id="lux"></span> LUX</span><br>
|
||||
<div class="left margin12left">
|
||||
<span><span id="brigtness"></span> %</span><br>
|
||||
</span>
|
||||
<span class="wsnw">
|
||||
<label for="temp">Temperatur Elektronik</label>
|
||||
<span><span id="temp"></span>° C</span><br>
|
||||
</span>
|
||||
<div class="left">
|
||||
<span class="wsnw">
|
||||
<label for="SSID">SSID:</label>
|
||||
<span id="SSID"></span>
|
||||
@@ -218,6 +223,14 @@ const char html_page_index[] PROGMEM = R"rawliteral(
|
||||
<input id="rtcactive" type='checkbox' onclick="return false" readonly>
|
||||
<label for="rtcactive">RTC okay</label>
|
||||
</span>
|
||||
<span class="wsnw">
|
||||
<input id="withSeconds" type='checkbox' onclick="return false" readonly>
|
||||
<label for="withSeconds">Sekunden zeigen</label>
|
||||
</span>
|
||||
<span class="wsnw">
|
||||
<input id="alwaysAccessPoint" type='checkbox' onclick="return false" readonly>
|
||||
<label for="alwaysAccessPoint">AccessPoint erstellen auch bei erfolgreicher WiFi Verbindung</label>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<input id="d" type='text' style='width:80%;font-size:0.75rem;' value=''>
|
||||
@@ -234,6 +247,7 @@ const char html_page_index[] PROGMEM = R"rawliteral(
|
||||
<label for="eActTimeC">Uhrzeit: </label><input type="color" id="eActTimeC" value=""><br>
|
||||
<label for="eActTacTimeC">taktische Zeit: </label><input type="color" id="eActTacTimeC" value=""><br>
|
||||
<label for="eActDateC">Datum: </label><input type="color" id="eActDateC" value=""><br>
|
||||
<label for="eActKWC">KW: </label><input type="color" id="eActKWC" value=""><br>
|
||||
<input type="button" class="btn fs12" onclick="setColor();closeEdit();" value="setzen"><br><br>
|
||||
<input type="button" id="doSetTime" class="btn fs12" onclick="doSetTime();" value="Uhrzeit nach diesem Gerät setzen"><br>
|
||||
|
||||
@@ -243,8 +257,19 @@ const char html_page_index[] PROGMEM = R"rawliteral(
|
||||
<div id="close" onclick="closeOptionEdit();">X</div>
|
||||
<div class='value'>
|
||||
<h1><span id="el">Optionen</span></h1>
|
||||
<input id="ebs" type='number' min="5" max="100" step="5" onchange="document.getElementById('eab').checked = false;"> %
|
||||
<input id="ebs" type='number' min="5" max="100" step="5"> %
|
||||
<label for="ebs">Helligkeitsfaktor (in Prozent)</label><br>
|
||||
<span>
|
||||
<input id="eWithSeconds" type='checkbox'>
|
||||
<label for="eWithSeconds">zeige Sekunden</label>
|
||||
</span>
|
||||
<span>
|
||||
<input id="eAlwaysAccessPoint" type='checkbox'>
|
||||
<label for="eAlwaysAccessPoint">AccessPoint erstellen auch bei erfolgreicher WiFi Verbindung</label>
|
||||
</span>
|
||||
<br>
|
||||
<input type="button" class="btn" onclick="setOption();" value="setzen">
|
||||
<br><br>
|
||||
<span>
|
||||
<label for="eSSID">SSID:</label>
|
||||
<input id="eSSID" type='text' onclick="return false">
|
||||
@@ -255,7 +280,14 @@ const char html_page_index[] PROGMEM = R"rawliteral(
|
||||
<input id="ePASS" type='text' onclick="return false">
|
||||
</span>
|
||||
<br>
|
||||
<input type="button" class="btn" onclick="setOption();" value="setzen"><br>
|
||||
<input type="button" class="btn" onclick="setWifi();" value="setzen">
|
||||
<br><br>
|
||||
<span>
|
||||
<label for="apPASS">AccessPoint Passwort:</label>
|
||||
<input id="apPASS" type='text' maxlength="64" minlength="8" onclick="return false">
|
||||
</span>
|
||||
<br>
|
||||
<input type="button" class="btn" onclick="setAPPass();" value="setzen"><br>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -296,6 +328,7 @@ const char html_page_index[] PROGMEM = R"rawliteral(
|
||||
document.getElementById("eActTimeC").value = RGBToHex(document.getElementById('actTime').style.color);
|
||||
document.getElementById("eActTacTimeC").value = RGBToHex(document.getElementById('actTacTime').style.color);
|
||||
document.getElementById("eActDateC").value = RGBToHex(document.getElementById('actDate').style.color);
|
||||
document.getElementById("eActKWC").value = RGBToHex(document.getElementById('actKW').style.color);
|
||||
}
|
||||
document.getElementById("te").style.display = "initial";
|
||||
}
|
||||
@@ -307,7 +340,8 @@ const char html_page_index[] PROGMEM = R"rawliteral(
|
||||
function editOption(){
|
||||
document.getElementById('ebs').value = document.getElementById('brigtness').innerHTML;
|
||||
document.getElementById('eSSID').value = document.getElementById('SSID').innerHTML;
|
||||
|
||||
document.getElementById("eWithSeconds").checked = document.getElementById("withSeconds").checked;
|
||||
document.getElementById("eAlwaysAccessPoint").checked = document.getElementById("alwaysAccessPoint").checked;
|
||||
document.getElementById("oe").style.display = "initial";
|
||||
}
|
||||
|
||||
@@ -337,32 +371,6 @@ const char html_page_index[] PROGMEM = R"rawliteral(
|
||||
return res;
|
||||
}
|
||||
}
|
||||
/*
|
||||
+String(now());
|
||||
color = timeColor[0] << 16;
|
||||
color += timeColor[1] << 8;
|
||||
color += timeColor[2];
|
||||
ret += "," + String(color);
|
||||
color = tacticalTimeColor[0] << 16;
|
||||
color += tacticalTimeColor[1] << 8;
|
||||
color += tacticalTimeColor[2];
|
||||
ret += "," + String(color);
|
||||
color = dateColor[0] << 16;
|
||||
color += dateColor[1] << 8;
|
||||
color += dateColor[2];
|
||||
ret += "," + String(color);
|
||||
ret += "," + String(timeIndex);
|
||||
ret += "," + String(lastTimeSyncTyp);
|
||||
ret += "," + String(lastTimeSyncTime);
|
||||
ret += ",\"" + String(lux_value)+"\"";
|
||||
ret += ",\"" + String(brightness)+"\"";
|
||||
ret += "," + String(autobrightness);
|
||||
ret += "," + String(rtcEnabled);
|
||||
ret += "," + String(GPSdoSync);
|
||||
ret += "," + String(countSatellites);
|
||||
ret += "," + String(countGPS);
|
||||
ret += "," + String(EEPROMDataNotSaved);
|
||||
*/
|
||||
|
||||
function fetch_handle_response(res){
|
||||
var elem=document.getElementById('d');
|
||||
@@ -382,7 +390,6 @@ const char html_page_index[] PROGMEM = R"rawliteral(
|
||||
document.getElementById('actDate').style.color = colorString;
|
||||
|
||||
document.getElementById('showWhat').value = parseInt(data[4]);
|
||||
showTimeFromUnix(data[6],'sync');
|
||||
switch(data[5]){
|
||||
case 0:
|
||||
document.getElementById('sync').innerHTML = " keiner";
|
||||
@@ -396,19 +403,24 @@ const char html_page_index[] PROGMEM = R"rawliteral(
|
||||
case 3:
|
||||
document.getElementById('sync').innerHTML += " (manuel)";
|
||||
break;
|
||||
}brigtness
|
||||
}
|
||||
showTimeFromUnix(data[6],'sync');
|
||||
document.getElementById('brigtness').innerHTML = (data[7]*100);
|
||||
document.getElementById("rtcactive").checked = (data[8] == 1);
|
||||
|
||||
document.getElementById('lux').innerHTML = data[7];
|
||||
document.getElementById('brigtness').innerHTML = (data[8]*100);
|
||||
document.getElementById("rtcactive").checked = (data[10] == 1);
|
||||
|
||||
EEPROMDataChanged = (data[14] == 1);
|
||||
EEPROMDataChanged = (data[9] == 1);
|
||||
if(EEPROMDataChanged){
|
||||
document.getElementById("site").style.backgroundColor = "#ffa";
|
||||
}
|
||||
document.getElementById('SSID').innerHTML = data[15];
|
||||
|
||||
document.getElementById('SSID').innerHTML = data[10];
|
||||
document.getElementById('temp').innerHTML = data[11];
|
||||
var options = parseInt(data[12]);
|
||||
document.getElementById("withSeconds").checked = (options >> 0) & 0x1;
|
||||
document.getElementById("alwaysAccessPoint").checked = (options >> 1) & 0x1;
|
||||
|
||||
colorString = "#" + data[13].toString(16).padStart(6, '0');
|
||||
document.getElementById('actKW').style.color = colorString;
|
||||
document.getElementById('actKW').innerHTML = "KW " + data[14];
|
||||
}catch(e){
|
||||
console.log(e);
|
||||
}
|
||||
@@ -426,6 +438,11 @@ const char html_page_index[] PROGMEM = R"rawliteral(
|
||||
fetch(send_str).then(fetchHandle).then((res) => res.text()).then((text) => fetch_handle_response(text)).catch((err) => { console.log(err);document.getElementById("site").style.backgroundColor = "#f00";});
|
||||
}
|
||||
|
||||
function doPoll(){
|
||||
var send_str = "/poll";
|
||||
fetch(send_str).then(fetchHandle).then((res) => res.text()).then((text) => fetch_handle_response(text)).catch((err) => { console.log(err);document.getElementById("site").style.backgroundColor = "#f00";});
|
||||
}
|
||||
|
||||
function doSetTime(_idx = -1){
|
||||
var d=new Date();
|
||||
d.setTime(d.getTime() - (d.getTimezoneOffset()*60*1000) + 1000);
|
||||
@@ -439,6 +456,8 @@ const char html_page_index[] PROGMEM = R"rawliteral(
|
||||
doSend(['set','tcolor'],['to',elem.value.substring(1)]);
|
||||
elem=document.getElementById('eActDateC');
|
||||
doSend(['set','dcolor'],['to',elem.value.substring(1)]);
|
||||
elem=document.getElementById('eActKWC');
|
||||
doSend(['set','kwcolor'],['to',elem.value.substring(1)]);
|
||||
}
|
||||
|
||||
function setTimeFromUnix(_ti,_id){
|
||||
@@ -492,20 +511,29 @@ const char html_page_index[] PROGMEM = R"rawliteral(
|
||||
function setWifi(){
|
||||
var elem=document.getElementById("eSSID");
|
||||
var elem2=document.getElementById("ePASS");
|
||||
doSend(['set','wifi'],['ssid',elem.value],['pwd',elem2.value]);
|
||||
doSend(['set','wifi'],['ssid',encodeURIComponent(elem.value)],['pwd',encodeURIComponent(elem2.value)]);
|
||||
}
|
||||
|
||||
function setAPPass(){
|
||||
var elem=document.getElementById("apPASS");
|
||||
var pwd = String(elem.value);
|
||||
if((pwd.length > 7) && (pwd.length < 65)){
|
||||
doSend(['set','appass'],['pwd',encodeURIComponent(pwd)]);
|
||||
elem.value = '';
|
||||
}else{
|
||||
alert('Das AccessPoint Passwort muss zwischen 8 und 64 Zeichen lang sein!');
|
||||
}
|
||||
}
|
||||
|
||||
function setOption(){
|
||||
setBrightness();
|
||||
var option = 0;
|
||||
|
||||
if(document.getElementById("eab").checked)
|
||||
if(document.getElementById("eWithSeconds").checked)
|
||||
option += 1;
|
||||
doSend(['set','option'],['options',option]);
|
||||
if(document.getElementById("eAlwaysAccessPoint").checked)
|
||||
option += 2;
|
||||
|
||||
setWifi();
|
||||
closeOptionEdit();
|
||||
doSend(['set','option'],['options',option]);
|
||||
}
|
||||
|
||||
function save() {
|
||||
@@ -517,14 +545,13 @@ const char html_page_index[] PROGMEM = R"rawliteral(
|
||||
}
|
||||
|
||||
function poll() {
|
||||
doSend(['poll','']);
|
||||
doPoll();
|
||||
setTimeout(function(){
|
||||
poll();
|
||||
}, 1000);
|
||||
}
|
||||
|
||||
document.addEventListener("DOMContentLoaded", function(event) {
|
||||
|
||||
poll();
|
||||
});
|
||||
</script>
|
||||
|
||||
Reference in New Issue
Block a user