From 3e3552d4406870df12e94bd8a3333a6bcc0b45d1 Mon Sep 17 00:00:00 2001 From: Beta-User <> Date: Tue, 26 Mar 2019 18:08:05 +0000 Subject: [PATCH] 98_WeekdayTimer.pm: enable multiple holiday2we-devices for also non-holiday TYPE devices git-svn-id: https://svn.fhem.de/fhem/trunk@19043 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- fhem/FHEM/98_WeekdayTimer.pm | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/fhem/FHEM/98_WeekdayTimer.pm b/fhem/FHEM/98_WeekdayTimer.pm index 6ffab1a30..33531178a 100644 --- a/fhem/FHEM/98_WeekdayTimer.pm +++ b/fhem/FHEM/98_WeekdayTimer.pm @@ -307,14 +307,21 @@ sub WeekdayTimer_getListeDerTage($$) { ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime($echteZeit); foreach my $h2we (split(',', AttrVal('global', 'holiday2we', ''))) { - if($h2we) { - my $ergebnis = CommandGet(undef,$h2we . ' ' . sprintf("%02d-%02d",$mon+1,$mday)); - if ($ergebnis ne 'none') { - #Log 3, "ergebnis-------$i----->$ergebnis"; - $hdays{$i} = undef if ($d==7); # $we Tag aufnehmen - delete $hdays{$i} if ($d==8); # !$we Tag herausnehmen - } + if($h2we) { + my $ergebnis = 'none'; + if (InternalVal($h2we, 'TYPE', '') eq "holiday") { + $ergebnis = CommandGet(undef,$h2we . ' ' . sprintf("%02d-%02d",$mon+1,$mday)); + } elsif ($wday==$nowWday ){ + $ergebnis = "is_true" if IsWe(); + }elsif ( $wday==$nowWday+1){ + $ergebnis = "is_true" if IsWe("tomorrow"); } + if ($ergebnis ne 'none') { + #Log 3, "ergebnis-------$i----->$ergebnis"; + $hdays{$i} = undef if ($d==7); # $we Tag aufnehmen + delete $hdays{$i} if ($d==8); # !$we Tag herausnehmen + } + } } }