diff --git a/fhem/FHEM/91_notify.pm b/fhem/FHEM/91_notify.pm index 5bd6117b7..748abd329 100755 --- a/fhem/FHEM/91_notify.pm +++ b/fhem/FHEM/91_notify.pm @@ -201,25 +201,16 @@ notify_fhemwebFn($$$$) $dh{$a[0]}{".*"} = 1; $dh{$a[0]}{$a[1].".*"} = 1; } - my $list = ""; my @al; + my $list = ""; foreach my $dev (sort keys %dh) { $list .= " $dev:" . join(",", sort keys %{$dh{$dev}}); - push @al, $dev; } - $ret .= ""; - $ret .= "
"; - $ret .= FW_hidden("detail", $d); - $ret .= FW_hidden("dev.$d", "$d addRegexpPart"); - $ret .= FW_submit("cmd.$d", "set", "set"); - $ret .= "
 $d addRegexpPart 
"; $list =~ s/(['"])/./g; - $ret .= FW_select("","arg.$d",\@al, undef, "set", - "FW_selChange(this.options[selectedIndex].text,'$list','val.$d')"); - $ret .= FW_textfield("val.$d", 30, "set"); - my $al0 = (@al ? $al[0] : ""); - $ret .= ""; - $ret .= "
"; + + $ret .= ""; + $ret .= ''; + $ret .= FW_detailSelect($d, "set", $list, "addRegexpPart"); + $ret .= ""; } $ret .= ""; diff --git a/fhem/FHEM/92_FileLog.pm b/fhem/FHEM/92_FileLog.pm index 2ac251b1c..5b7832fc6 100755 --- a/fhem/FHEM/92_FileLog.pm +++ b/fhem/FHEM/92_FileLog.pm @@ -361,10 +361,9 @@ FileLog_fhemwebFn($$$$) $dh{$a[0]}{".*"} = 1; $dh{$a[0]}{$a[1].".*"} = 1; } - my $list = ""; my @al; + my $list = ""; foreach my $dev (sort keys %dh) { $list .= " $dev:" . join(",", sort keys %{$dh{$dev}}); - push @al, $dev; } $list =~ s/(['"])/./g; diff --git a/fhem/FHEM/98_structure.pm b/fhem/FHEM/98_structure.pm index 116754eec..9e3289883 100755 --- a/fhem/FHEM/98_structure.pm +++ b/fhem/FHEM/98_structure.pm @@ -277,9 +277,9 @@ sub structure_Notify($$) Log3 $me, 5, "Update structure '$me' to $newState" . " because device $dev->{NAME} has changed"; readingsBeginUpdate($hash); - readingsBulkUpdate($hash, "LastDevice", $dev->{NAME}); + readingsBulkUpdate($hash, "LastDevice", $dev->{NAME}, 0); readingsBulkUpdate($hash, "LastDevice_Abs", - structure_getChangedDevice($dev->{NAME})); + structure_getChangedDevice($dev->{NAME}), 0); readingsBulkUpdate($hash, "state", $newState); readingsEndUpdate($hash, 1); diff --git a/fhem/fhem.pl b/fhem/fhem.pl index b08844b24..8a8bec5ea 100755 --- a/fhem/fhem.pl +++ b/fhem/fhem.pl @@ -2871,6 +2871,7 @@ DoTrigger($$@) my $max = int(@{$hash->{CHANGED}}); Log 5, "Triggering $dev ($max changes)"; return "" if(defined($attr{$dev}) && defined($attr{$dev}{do_not_notify})); + my $now = TimeNow(); ################ # Log/notify modules @@ -2880,7 +2881,7 @@ DoTrigger($$@) $hash->{INTRIGGER}=1; Log 5, "Notify loop for $dev $hash->{CHANGED}->[0]"; createNtfyHash() if(!%ntfyHash); - $hash->{NTFY_TRIGGERTIME} = TimeNow(); # Optimize FileLog + $hash->{NTFY_TRIGGERTIME} = $now; # Optimize FileLog my $ntfyLst = (defined($ntfyHash{$dev}) ? $ntfyHash{$dev} : $ntfyHash{"*"}); foreach my $n (@{$ntfyLst}) { next if(!defined($defs{$n})); # Was deleted in a previous notify @@ -2900,7 +2901,7 @@ DoTrigger($$@) next; } next if($inform{$c}{type} eq "raw"); - my $tn = TimeNow(); + my $tn = $now; if($attr{global}{mseclog}) { my ($seconds, $microseconds) = gettimeofday(); $tn .= sprintf(".%03d", $microseconds/1000); @@ -2922,7 +2923,7 @@ DoTrigger($$@) #################### # Used by triggered perl programs to check the old value # Not suited for multi-valued devices (KS300, etc) - $oldvalue{$dev}{TIME} = TimeNow(); + $oldvalue{$dev}{TIME} = $now; $oldvalue{$dev}{VAL} = $hash->{STATE}; if(!defined($hash->{INTRIGGER})) {