mirror of
https://github.com/lumapu/ahoy.git
synced 2025-08-06 09:58:23 +02:00
0.8.43
* fix display of sunrise in `/system` #1308 * fix overflow of `getLossRate` calculation #1318 * improved MqTT by marking sent data and improved `last_success` resends #1319 * added timestamp for `max ac power` as tooltip #1324 #1123 #1199 * repaired Power-limit acknowledge #1322
This commit is contained in:
parent
0d10d19b30
commit
31ecb9620f
13 changed files with 97 additions and 87 deletions
|
@ -485,6 +485,7 @@ class RestApi {
|
|||
obj[F("status")] = (uint8_t)iv->getStatus();
|
||||
obj[F("alarm_cnt")] = iv->alarmCnt;
|
||||
obj[F("rssi")] = iv->rssi;
|
||||
obj[F("ts_max_ac_pwr")] = iv->tsMaxAcPower;
|
||||
|
||||
JsonArray ch = obj.createNestedArray("ch");
|
||||
|
||||
|
|
|
@ -99,17 +99,17 @@
|
|||
}
|
||||
|
||||
if(obj.disNightComm) {
|
||||
if(((obj.ts_sunrise - obj.ts_offsSr) < obj.ts_now)
|
||||
if(((obj.ts_sunrise + obj.ts_offsSr) < obj.ts_now)
|
||||
&& ((obj.ts_sunset + obj.ts_offsSs) > obj.ts_now)) {
|
||||
commInfo = "Polling inverter(s), will pause at sunset " + (new Date((obj.ts_sunset + obj.ts_offsSs) * 1000).toLocaleString('de-DE'));
|
||||
}
|
||||
else {
|
||||
commInfo = "Night time, inverter polling disabled, ";
|
||||
if(obj.ts_now > (obj.ts_sunrise - obj.ts_offsSr)) {
|
||||
if(obj.ts_now > (obj.ts_sunrise + obj.ts_offsSr)) {
|
||||
commInfo += "paused at " + (new Date((obj.ts_sunset + obj.ts_offsSs) * 1000).toLocaleString('de-DE'));
|
||||
}
|
||||
else {
|
||||
commInfo += "will start polling at " + (new Date((obj.ts_sunrise - obj.ts_offsSr) * 1000).toLocaleString('de-DE'));
|
||||
commInfo += "will start polling at " + (new Date((obj.ts_sunrise + obj.ts_offsSr) * 1000).toLocaleString('de-DE'));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -765,7 +765,7 @@
|
|||
ml("div", {class: "col-2"}, cbDisNightCom)
|
||||
]),
|
||||
ml("div", {class: "row mb-3"}, [
|
||||
ml("div", {class: "col-10"}, "Include inverter to sum of total (should be checked by default)"),
|
||||
ml("div", {class: "col-10"}, "Include inverter to sum of total (should be checked by default, MqTT only)"),
|
||||
ml("div", {class: "col-2"}, cbAddTotal)
|
||||
])
|
||||
]),
|
||||
|
|
|
@ -650,39 +650,24 @@ div.hr {
|
|||
}
|
||||
|
||||
|
||||
.css-tooltip{
|
||||
.tooltip{
|
||||
position: relative;
|
||||
}
|
||||
.css-tooltip:hover:after{
|
||||
content:attr(data-tooltip);
|
||||
background:#000;
|
||||
padding:5px;
|
||||
border-radius:3px;
|
||||
.tooltip:hover:after {
|
||||
content: attr(data);
|
||||
background: var(--nav-active);
|
||||
padding: 5px;
|
||||
border-radius: 3px;
|
||||
display: inline-block;
|
||||
position: absolute;
|
||||
transform: translate(-50%,-100%);
|
||||
margin:0 auto;
|
||||
color:#FFF;
|
||||
min-width:100px;
|
||||
min-width:150px;
|
||||
top:-5px;
|
||||
color: var(--fg2);
|
||||
min-width: 100px;
|
||||
top: -5px;
|
||||
left: 50%;
|
||||
text-align:center;
|
||||
}
|
||||
.css-tooltip:hover:before {
|
||||
top:-5px;
|
||||
left: 50%;
|
||||
border: solid transparent;
|
||||
content: " ";
|
||||
height: 0;
|
||||
width: 0;
|
||||
position: absolute;
|
||||
pointer-events: none;
|
||||
border-color: rgba(0, 0, 0, 0);
|
||||
border-top-color: #000;
|
||||
border-width: 5px;
|
||||
margin-left: -5px;
|
||||
transform: translate(0,0px);
|
||||
font-size: 1rem;
|
||||
}
|
||||
|
||||
#modal {
|
||||
|
|
|
@ -45,13 +45,14 @@
|
|||
]);
|
||||
}
|
||||
|
||||
function numMid(val, unit, des) {
|
||||
function numMid(val, unit, des, opt={class: "fs-6"}) {
|
||||
return ml("div", {class: "col-6 col-sm-4 col-md-3 mb-2"}, [
|
||||
ml("div", {class: "row"},
|
||||
ml("div", {class: "col"}, [
|
||||
ml("span", {class: "fs-6"}, String(Math.round(val * 100) / 100)),
|
||||
ml("span", opt, String(Math.round(val * 100) / 100)),
|
||||
ml("span", {class: "fs-8 mx-1"}, unit)
|
||||
])),
|
||||
])
|
||||
),
|
||||
ml("div", {class: "row"},
|
||||
ml("div", {class: "col"},
|
||||
ml("span", {class: "fs-9"}, des)
|
||||
|
@ -108,6 +109,8 @@
|
|||
if(0 != obj.max_pwr)
|
||||
pwrLimit += ", " + Math.round(obj.max_pwr * obj.power_limit_read / 100) + " W";
|
||||
}
|
||||
|
||||
var maxAcPwr = toIsoDateStr(new Date(obj.ts_max_ac_pwr * 1000));
|
||||
return ml("div", {class: "row mt-2"},
|
||||
ml("div", {class: "col"}, [
|
||||
ml("div", {class: "p-2 " + clh},
|
||||
|
@ -133,7 +136,7 @@
|
|||
]),
|
||||
ml("div", {class: "hr"}),
|
||||
ml("div", {class: "row mt-2"},[
|
||||
numMid(obj.ch[0][11], "W", "Max AC Power"),
|
||||
numMid(obj.ch[0][11], "W", "Max AC Power", {class: "fs-6 tooltip", data: maxAcPwr}),
|
||||
numMid(obj.ch[0][8], "W", "DC Power"),
|
||||
numMid(obj.ch[0][0], "V", "AC Voltage"),
|
||||
numMid(obj.ch[0][1], "A", "AC Current"),
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue