Servus Jonofe,
nach tagelangem Probieren (aufgrund meiner wahnsinnigen php-Kenntnisse) habe ich den code nun endlich etwas erweitern, bzw. anpassen können. Ich habe noch hinzugefügt, dass alle Mähzeiten an A10 als Liste ausgegeben werden und alle Ausgänge wieder leer gesetzt werden wenn die Zeit beim triggern von E2 nicht mehr drin ist.
Aber einen Fehler kann ich absolut nicht finden:
Der Sonntag wird an A7 nicht ausgegeben. An A10 (in der Liste) aber schon. Könntest du nochmal schauen, woran das liegen könnte?
Gruß
nach tagelangem Probieren (aufgrund meiner wahnsinnigen php-Kenntnisse) habe ich den code nun endlich etwas erweitern, bzw. anpassen können. Ich habe noch hinzugefügt, dass alle Mähzeiten an A10 als Liste ausgegeben werden und alle Ausgänge wieder leer gesetzt werden wenn die Zeit beim triggern von E2 nicht mehr drin ist.
Aber einen Fehler kann ich absolut nicht finden:
Der Sonntag wird an A7 nicht ausgegeben. An A10 (in der Liste) aber schon. Könntest du nochmal schauen, woran das liegen könnte?
Gruß
PHP-Code:
$mowtime = json_decode($E[2]['value'],true);
$day_string = array('Sonntag','Montag','Dienstag','Mittwoch','Donnerstag','Freitag','Samstag');
$separator = $E[3]['value'];
LB_LBSID_logging($id, "Trennzeichen: ".$separator, 6);
$result = [];
for ($i=1;$i<=2;$i++) {
foreach ($mowtime[$i] as $day => $schedule) {
LB_LBSID_logging($id, "mowtime_1?: ".$mowtime[1][0][1], 6);
if (($schedule[1]==0)) {
logic_setOutput($id,$day,'');
}
if ($i==1)
$result[$day] = '';
if ($schedule[1]>0) { // Maehdauer
$result[$day] .= $separator.$schedule[0].' - '.date('H:i', strtotime("+$schedule[1] minutes", strtotime($schedule[0])));
if ($schedule[2]==1) // edge cut
$result[$day] .= ' (Kantenschnitt)';
}
if ($i==2 and !empty($result[$day])) {
$result[$day] = $day_string[$day].$result[$day].$separator; // separator zum trennen in A10
$combined = $result[1].$result[2].$result[3].$result[4].$result[5].$result[6].$result[0]; // zusammenfassen für A10
$trimlist = rtrim($combined, $E[3]['value']); // entfernt '|' am Ende für A10
$trimout = rtrim($result[$day], $E[3]['value']); // entfernt '|' am Ende für A1-7
logic_setOutput($id,$day,$trimout); //Ausgabe A1-7
}
else {
logic_setOutput($id,10,$trimlist); //setzt A10 auf leer
}
}
}
}
}
}
Kommentar