2
0
mirror of https://github.com/fhem/fhem-mirror.git synced 2025-03-10 09:16:53 +00:00

01_FHEMWEB.pm: multi-line devStateIcon patch from justme1968 (Forum #97586)

git-svn-id: https://svn.fhem.de/fhem/trunk@18650 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
rudolfkoenig 2019-02-19 19:44:47 +00:00
parent 55103443ca
commit e137fec533

View File

@ -3177,8 +3177,11 @@ FW_devState($$@)
$cmdList = "desiredTemperature" if(!$cmdList); $cmdList = "desiredTemperature" if(!$cmdList);
} else { } else {
my $html;
foreach my $state (split("\n", $state)) {
$txt = $state;
my ($icon, $isHtml); my ($icon, $isHtml);
($icon, $link, $isHtml) = FW_dev2image($d); ($icon, $link, $isHtml) = FW_dev2image($d,$state);
$txt = ($isHtml ? $icon : FW_makeImage($icon, $state)) if($icon); $txt = ($isHtml ? $icon : FW_makeImage($icon, $state)) if($icon);
my $cmdlist = (defined($link) ? $link : ""); my $cmdlist = (defined($link) ? $link : "");
@ -3210,18 +3213,15 @@ FW_devState($$@)
$link = "cmd.$d=set $d $link" if(defined($link)); $link = "cmd.$d=set $d $link" if(defined($link));
} }
}
if($hasOnOff) { if($hasOnOff) {
my $isUpperCase = ($allSets =~ m/(^| )ON(:[^ ]*)?( |$)/ && my $isUpperCase = ($allSets =~ m/(^| )ON(:[^ ]*)?( |$)/ &&
$allSets =~ m/(^| )OFF(:[^ ]*)?( |$)/); $allSets =~ m/(^| )OFF(:[^ ]*)?( |$)/);
# Have to cover: "on:An off:Aus", "A0:Aus AI:An Aus:off An:on" # Have to cover: "on:An off:Aus", "A0:Aus AI:An Aus:off An:on"
my $on = ReplaceEventMap($d, $isUpperCase ? "ON" :"on" , 1); my $on = ReplaceEventMap($d, $isUpperCase ? "ON" :"on" , 1);
my $off = ReplaceEventMap($d, $isUpperCase ? "OFF":"off", 1); my $off = ReplaceEventMap($d, $isUpperCase ? "OFF":"off", 1);
$link = "cmd.$d=set $d " . ($state eq $on ? $off : $on) if(!defined($link)); $link = "cmd.$d=set $d " . ($state eq $on ? $off : $on)
if(!defined($link));
$cmdList = "$on:$off" if(!$cmdList); $cmdList = "$on:$off" if(!$cmdList);
} }
if(defined($link)) { # Have command to execute if(defined($link)) { # Have command to execute
@ -3237,6 +3237,11 @@ FW_devState($$@)
$txt = "<a href=\"$FW_ME$FW_subdir?$link$rf$FW_CSRF\">$txt</a>" $txt = "<a href=\"$FW_ME$FW_subdir?$link$rf$FW_CSRF\">$txt</a>"
if($link !~ m/ noFhemwebLink\b/); if($link !~ m/ noFhemwebLink\b/);
} }
$html .= ' ' if( $html );
$html .= $txt;
}
$txt = $html;
}
my $style = AttrVal($d, "devStateStyle", ""); my $style = AttrVal($d, "devStateStyle", "");