NEWS
Frage zu : Muster "isDateinRange"
-
Warum soll da ein Fehler drin sein?
Das aktuelle Datum muss kleiner dem höheren sein ( nicht kleiner gleich!). Das analoge gilt für den unteren Wert.
Es ist wie beim Fußball
Die Grenzdaten sind wie torpfosten, der Ball muss dazwischen durch, nicht dagegen, sonst ist es kein Tor.
Gruß
Rainer
-
das Script lese ich aber anders, dort steht:
now >= lower && now <= upper
Das heißt doch, dass "now" auch = lower sein kann.
oder ?
-
Die Grenzdaten sind wie torpfosten, der Ball muss dazwischen durch, nicht dagegen, sonst ist es kein Tor. `
Wenn deine These stimmt, dann müsste mein 1. Beispiel nicht funktionieren.
Denn da liegt now = lower.
mfg
-
Ich vermute mal das Problem liegt an den Variablen "lower" und "upper".
Ich hab diese mal geloggt.
Ergebnis:
filename="bild1.jpg" index="0">~~Hier sieht man, dass nicht nur das Datum, sondern auch die Uhrzeit gespeichert ist.
Und das führt m.E. zu falschem Ergebnis.
mfg
-
Hallo Homoran,
konntest du das Script mal testen ?
mfg
-
konntest du das Script mal testen ? `
Nein, außerdem wäre ich als Script Legastheniker dafür der falsche.
Gruß
Rainer
-
ok,
kann jemand anders das script mal überprüfen.
mfg
Dieter
-
Versuche es mal mit folgendem Script:
function isDateInRange(lower, upper) { var now = Date.now(); lower = lower.split('.'); upper = upper.split('.'); lower = new Date(lower[2], lower[1] - 1, lower[0]).getTime(); upper = new Date(upper[2], upper[1] - 1, upper[0], 23, 59, 59, 999).getTime(); var inRange = false; if (upper > lower) inRange = (now >= lower && now <= upper) ? true : false; else log('isDateInRange meldet Fehler! "von"-Datum ist später als "bis"-Datum', 'warn'); return inRange; }
-
paul53 !
das wars.
Spitze.
Klappt wunderbar.
Man sollte dein Script mit dem Muster auf "iobroker" austauschen.
-> wenn ein admin mit liest ! <-
mfg
Dieter
-
Ich lese!
Auch wenn ich nur Mod bin
Mal sehen, wann ich wieder an einen PC kann
Guten Rutsch
Rainer
-
Hallo Hamoran,
das Time ! in Range auch austauschen.
mfg
Dieter
-
Melde mich auch mal dazu:
ich habe das neue Skript noch nicht getestet. Das alte Skript habe ich auf der Basis http://forum.iobroker.net/viewtopic.php?f=21&t=1072&p=11167&hilit=istimeinrange&sid=5d5834ef7192dc471724e2fb9e5b80e5#p8484 auf isDateinRange umgebastelt
http://forum.iobroker.net/viewtopic.php … 20&p=25886
Bisher hatte ich keine Fehler, aber ich werde es mir ansehen, wenn ich Zeit finde. Danke für die Meldung!
Gruß
Pix