From 66742cab68c36c0f5a1cef3f1d6c17e970077a8c Mon Sep 17 00:00:00 2001 From: rudolfkoenig <> Date: Fri, 15 Mar 2019 20:16:42 +0000 Subject: [PATCH] 99_Utils.pm: sortTopicNum from DS_Starter (Forum #98578) git-svn-id: https://svn.fhem.de/fhem/trunk@18913 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- fhem/FHEM/99_Utils.pm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/fhem/FHEM/99_Utils.pm b/fhem/FHEM/99_Utils.pm index 49536c0ae..b3555370f 100644 --- a/fhem/FHEM/99_Utils.pm +++ b/fhem/FHEM/99_Utils.pm @@ -244,6 +244,27 @@ round($$) return sprintf("%.${n}f",$v); } +sub +sortTopicNum(@) +{ + my ($sseq,@nums) = @_; + + my @sorted = map {$_->[0]} + sort {$a->[1] cmp $b->[1]} + map {[$_, pack "C*", split /\./]} @nums; + + @sorted = map {join ".", unpack "C*", $_} + sort + map {pack "C*", split /\./} @nums; + + if($sseq eq "desc") { + @sorted = reverse @sorted; + } + + return @sorted; +} + + 1; =pod @@ -332,6 +353,11 @@ round($$) value yet for this key. +