diff --git a/fhem/FHEM/95_holiday.pm b/fhem/FHEM/95_holiday.pm index 4d38a66ec..fabf935ab 100755 --- a/fhem/FHEM/95_holiday.pm +++ b/fhem/FHEM/95_holiday.pm @@ -201,19 +201,24 @@ holiday_Get($@) my ($hash, @a) = @_; shift(@a) if($a[1] && $a[1] eq "MM-DD"); - return "argument is missing" if(int(@a) != 2); + return "argument is missing" if(int(@a) < 2); my $arg; if($a[1] =~ m/^[01]\d-[0-3]\d/) { $arg = $a[1]; - } elsif($a[1] =~ m/^yesterday|today|tomorrow$/) { + } elsif($a[1] =~ m/^(yesterday|today|tomorrow)$/) { my $t = time(); $t += 86400 if($a[1] eq "tomorrow"); $t -= 86400 if($a[1] eq "yesterday"); my @a = localtime($t); $arg = sprintf("%02d-%02d", $a[4]+1, $a[3]); + } elsif($a[1] eq "days") { + my $t = time() + ($a[2] ? int($a[2]) : 0)*86400; + my @a = localtime($t); + $arg = sprintf("%02d-%02d", $a[4]+1, $a[3]); + } else { return "unknown argument $a[1], ". "choose one of yesterday:noArg today:noArg tomorrow:noArg MM-DD"; @@ -349,6 +354,7 @@ western_easter($) get <name> yesterday
get <name> today
get <name> tomorrow
+ get <name> days


Return the holiday name of the specified date or the text none.

@@ -454,6 +460,7 @@ western_easter($) get <name> yesterday
get <name> today
get <name> tomorrow
+ get <name> days


Gibt den Name des Feiertages zum angebenenen Datum zurück oder den Text none.