no message
This commit is contained in:
@@ -126,13 +126,13 @@ function render(data){
|
||||
const e = new Date(data.tEnd * 1000 - 1000);
|
||||
|
||||
if (data.range === 'day')
|
||||
elPeriod.textContent = `Zeitraum: ${fmt(s)}`;
|
||||
elPeriod.textContent = `Tag: ${fmt(s)}`;
|
||||
else if (data.range === 'week')
|
||||
elPeriod.textContent = `Zeitraum: Woche ${isoWeek(s)}`;
|
||||
elPeriod.textContent = `Woche: ${fmt(s)} - ${fmt(e)}`;
|
||||
else if (data.range === 'month')
|
||||
elPeriod.textContent = `Zeitraum: ${monthName(s.getMonth())} ${s.getFullYear()}`;
|
||||
elPeriod.textContent = `Monat: ${monthName(s.getMonth())} ${s.getFullYear()}`;
|
||||
else if (data.range === 'year')
|
||||
elPeriod.textContent = `Zeitraum: ${s.getFullYear()}`;
|
||||
elPeriod.textContent = `Jahr: ${s.getFullYear()}`;
|
||||
else
|
||||
elPeriod.textContent = ''; // fallback: lieber leer als falsch
|
||||
} else {
|
||||
|
||||
@@ -90,7 +90,7 @@ class Energy_Pie extends IPSModule
|
||||
$prod = $this->readDelta($this->ReadPropertyInteger('VarProduction'), $tStart, $tEnd, $dbgProd);
|
||||
$feed = $this->readDelta($this->ReadPropertyInteger('VarFeedIn'), $tStart, $tEnd, $dbgFeed);
|
||||
$grid = $this->readDelta($this->ReadPropertyInteger('VarGrid'), $tStart, $tEnd, $dbgGrid);
|
||||
$hasData = (($dbgProd['count'] ?? 0) > 0) || (($dbgFeed['count'] ?? 0) > 0) || (($dbgGrid['count'] ?? 0) > 0);
|
||||
$hasData = (($dbgProd['inRange'] ?? 0) > 0) || (($dbgFeed['inRange'] ?? 0) > 0) || (($dbgGrid['inRange'] ?? 0) > 0);
|
||||
$lastLogTs = 0;
|
||||
if (!$hasData && $range !== 'total') {
|
||||
$lastLogTs = max(
|
||||
@@ -166,6 +166,7 @@ class Energy_Pie extends IPSModule
|
||||
'varId' => $varId,
|
||||
'archiveId' => 0,
|
||||
'count' => 0,
|
||||
'inRange' => 0,
|
||||
'first' => null,
|
||||
'last' => null,
|
||||
'vStart' => null,
|
||||
@@ -179,7 +180,7 @@ class Energy_Pie extends IPSModule
|
||||
if ($archiveID <= 0) {
|
||||
return 0.0;
|
||||
}
|
||||
$values = @AC_GetLoggedValues($archiveID, $varId, $tStart - 86400, $tEnd + 86400, 0);
|
||||
$values = @AC_GetLoggedValues($archiveID, $varId, max(0, $tStart - 86400), $tEnd, 0);
|
||||
if (empty($values)) {
|
||||
return 0.0;
|
||||
}
|
||||
@@ -195,10 +196,16 @@ class Energy_Pie extends IPSModule
|
||||
$vEnd = null;
|
||||
foreach ($values as $v) {
|
||||
$ts = (int)$v['TimeStamp'];
|
||||
if ($ts >= $tStart && $ts < $tEnd) {
|
||||
$dbg['inRange']++;
|
||||
}
|
||||
if ($ts <= $tStart) $vStart = (float)$v['Value'];
|
||||
if ($ts <= $tEnd) $vEnd = (float)$v['Value'];
|
||||
if ($ts > $tEnd) break;
|
||||
}
|
||||
if ($dbg['inRange'] === 0) {
|
||||
return 0.0;
|
||||
}
|
||||
if ($vStart === null) $vStart = $dbg['first'];
|
||||
if ($vEnd === null) $vEnd = $dbg['last'];
|
||||
$dbg['vStart'] = $vStart;
|
||||
|
||||
Reference in New Issue
Block a user