diff --git a/fhem/FHEM/01_FHEMWEB.pm b/fhem/FHEM/01_FHEMWEB.pm
index 2ea3a09c2..491f59f61 100755
--- a/fhem/FHEM/01_FHEMWEB.pm
+++ b/fhem/FHEM/01_FHEMWEB.pm
@@ -1511,6 +1511,16 @@ FW_roomOverview($)
}
+sub
+FW_alias($)
+{
+ my ($d) = @_;
+ if($FW_room) {
+ return AttrVal($d, "alias_$FW_room", AttrVal($d, "alias", $d));
+ } else {
+ return AttrVal($d, "alias", $d);
+ }
+}
sub
FW_makeDeviceLine($$$$$)
@@ -1519,7 +1529,7 @@ FW_makeDeviceLine($$$$$)
my $rf = ($FW_room ? "&room=$FW_room" : ""); # stay in the room
FW_pF "\n
";
FW_pO "";
- foreach my $d (sort { lc(AttrVal($a,"sortby",AttrVal($a,"alias",$a))) cmp
- lc(AttrVal($b,"sortby",AttrVal($b,"alias",$b))) }
- keys %{$group{$g}}) {
+ foreach my $d (sort { $sortIndex{$a} cmp $sortIndex{$b} } keys %{$group{$g}}) {
my $type = $defs{$d}{TYPE};
$extPage{group} = $g;
@@ -1655,9 +1665,7 @@ FW_showRoom()
FW_pO " ";
# Now the "atEnds"
- foreach my $d (sort { lc(AttrVal($a, "sortby", AttrVal($a,"alias",$a))) cmp
- lc(AttrVal($b, "sortby", AttrVal($b,"alias",$b))) }
- @atEnds) {
+ foreach my $d (sort { $sortIndex{$a} cmp $sortIndex{$b} } @atEnds) {
no strict "refs";
$extPage{group} = "atEnd";
FW_pO &{$modules{$defs{$d}{TYPE}}{FW_summaryFn}}($FW_wname, $d,
@@ -3064,7 +3072,16 @@ FW_widgetOverride($$)
Attributes
- - addStateEvent
+ - addStateEvent
+
+ - alias_<RoomName>
+ If you define a userattr alias_<RoomName> and set this attribute
+ for a device assgined to <RoomName>, then this value will be used
+ when displaying <RoomName>.
+ Note: you can use the userattr alias_.* to allow all rooms, but in this
+ case the attribute dropdown in the device detail view won't work for the
+ alias_.* attributes.
+
- allowfrom
@@ -3370,7 +3387,7 @@ FW_widgetOverride($$)
userattr named alias_hu for the Hungarian translation, and specify
nameDisplay for the hungarian FHEMWEB instance as
- AttrVal($d, "alias_hu", $devName)
+ AttrVal($DEVICE, "alias_hu", $ALIAS)
@@ -3771,7 +3788,17 @@ FW_widgetOverride($$)
Attribute
- - addStateEvent
+ - addStateEvent
+
+ - alias_<RoomName>
+ Falls man das Attribut alias_<RoomName> definiert, und dieses
+ Attribut für ein Gerät setzt, dann wird dieser Wert bei
+ Anzeige von <RoomName> verwendet.
+ Achtung: man kann im userattr auch alias_.* verwenden um alle
+ möglichen Räume abzudecken, in diesem Fall wird aber die
+ Attributauswahl in der Detailansicht für alias_.* nicht
+ funktionieren.
+
- allowfrom
@@ -4078,7 +4105,7 @@ FW_widgetOverride($$)
alias_hu hinzu, und man setzt nameDisplay für diese FHEMWEB
Instanz auf dem Wert:
- AttrVal($d, "alias_hu", $devName)
+ AttrVal($DEVICE, "alias_hu", $ALIAS)
|