mirror of
https://github.com/fhem/fhem-mirror.git
synced 2025-05-01 20:20:10 +00:00
Bugfixes.
git-svn-id: https://svn.fhem.de/fhem/trunk/fhem@37 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
parent
f12d892c71
commit
cc57b37758
@ -89,7 +89,7 @@ FHZ_Set($@)
|
||||
|
||||
my $v = join(" ", @a);
|
||||
my $name = $hash->{NAME};
|
||||
Log GetLogLevel($name,2), "FHZ set $name $v";
|
||||
Log GetLogLevel($name,2), "FHZ set $v";
|
||||
|
||||
if($a[1] eq "activefor") {
|
||||
|
||||
|
@ -23,7 +23,7 @@ sub
|
||||
notify_Define($$)
|
||||
{
|
||||
my ($hash, $def) = @_;
|
||||
my ($re, $command) = split("[ \t]+", $def, 2);
|
||||
my ($type, $name, $re, $command) = split("[ \t]+", $def, 4);
|
||||
|
||||
# Checking for misleading regexps
|
||||
eval { "Hallo" =~ m/^$re$/ };
|
||||
|
@ -113,6 +113,15 @@ split in multiple lines<br><br>
|
||||
be written to this file.
|
||||
</li><br>
|
||||
|
||||
<a name="lastinclude"></a>
|
||||
<li>lastinclude<br>
|
||||
If this attribute is set, then the last command of the generated
|
||||
configfile (see the <a href="#save">save</a> command) will be<br>
|
||||
include <lastinclude-value><br>
|
||||
This file can contain not configurable information, e.g.
|
||||
setting the FHTcode.
|
||||
</li><br>
|
||||
|
||||
<a name="logfile"></a>
|
||||
<li>logfile<br>
|
||||
Specify the logfile to write. You can use "-" for
|
||||
|
@ -9,7 +9,9 @@
|
||||
<body style="background-color: white">
|
||||
|
||||
|
||||
<h1>FHEM (GPL'd FS20/HMS/FHT/KS300/WS300 server for linux, formerly known as fhz1000.pl)</h1>
|
||||
<h1>FHEM</h1>
|
||||
GPL'd FHZ FS20 HMS FHT KS300 WS300 server for linux, formerly known as
|
||||
fhz1000.pl
|
||||
|
||||
<h2>News (as of =DATE=, Version =VERS=)</h2>
|
||||
<ul>
|
||||
|
25
fhem.pl
25
fhem.pl
@ -136,7 +136,7 @@ my $AttrList = "room";
|
||||
|
||||
|
||||
$modules{_internal_}{ORDER} = -1;
|
||||
$modules{_internal_}{AttrList} = "configfile logfile modpath " .
|
||||
$modules{_internal_}{AttrList} = "configfile logfile lastinclude modpath " .
|
||||
"pidfilename port statefile title userattr " .
|
||||
"verbose:1,2,3,4,5 version";
|
||||
|
||||
@ -535,13 +535,14 @@ sub
|
||||
CommandInclude($$)
|
||||
{
|
||||
my ($cl, $arg) = @_;
|
||||
if(!open(CFG, $arg)) {
|
||||
my $fh;
|
||||
if(!open($fh, $arg)) {
|
||||
return "Can't open $arg: $!";
|
||||
}
|
||||
|
||||
my $bigcmd = "";
|
||||
$rcvdquit = 0;
|
||||
while(my $l = <CFG>) {
|
||||
while(my $l = <$fh>) {
|
||||
chomp($l);
|
||||
if($l =~ m/^(.*)\\$/) { # Multiline commands
|
||||
$bigcmd .= $1;
|
||||
@ -551,7 +552,7 @@ CommandInclude($$)
|
||||
}
|
||||
last if($rcvdquit);
|
||||
}
|
||||
close(CFG);
|
||||
close($fh);
|
||||
return undef;
|
||||
}
|
||||
|
||||
@ -706,8 +707,10 @@ CommandSave($$)
|
||||
foreach my $d (sort keys %savefirst) {
|
||||
my $r = $savefirst{$d};
|
||||
delete $rooms{$r}{$d};
|
||||
delete $rooms{$r} if(int(%{$rooms{$r}}) == 0);
|
||||
print SFH "define $d $defs{$d}{TYPE} $defs{$d}{DEF}\n";
|
||||
delete $rooms{$r} if(! %{$rooms{$r}});
|
||||
my $def = $defs{$d}{DEF};
|
||||
$def =~ s/;/;;/g;
|
||||
print SFH "define $d $defs{$d}{TYPE} $def\n";
|
||||
foreach my $a (sort keys %{$attr{$d}}) {
|
||||
next if($a eq "savefirst");
|
||||
print SFH "attr $d $a $attr{$d}{$a}\n";
|
||||
@ -718,13 +721,21 @@ CommandSave($$)
|
||||
print SFH "\ndefattr" . ($r ne "~" ? " room $r" : "") . "\n";
|
||||
foreach my $d (sort keys %{$rooms{$r}} ) {
|
||||
next if($defs{$d}{VOLATILE});
|
||||
print SFH "define $d $defs{$d}{TYPE} $defs{$d}{DEF}\n";
|
||||
my $def = $defs{$d}{DEF};
|
||||
$def =~ s/;/;;/g;
|
||||
print SFH "define $d $defs{$d}{TYPE} $def\n";
|
||||
foreach my $a (sort keys %{$attr{$d}}) {
|
||||
next if($a eq "room");
|
||||
print SFH "attr $d $a $attr{$d}{$a}\n";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
print SFH "defattr\n"; # Delete the last default attribute.
|
||||
|
||||
print SFH "include $attr{global}{lastinclude}\n"
|
||||
if($attr{global}{lastinclude});
|
||||
|
||||
|
||||
close(SFH);
|
||||
return undef;
|
||||
|
Loading…
x
Reference in New Issue
Block a user