From 4dd6b135f57ca2f9cafaf2514695e0f76ed194c8 Mon Sep 17 00:00:00 2001 From: rudolfkoenig <> Date: Wed, 7 Aug 2013 13:06:49 +0000 Subject: [PATCH] FHEMWEB detail screen with get dropdown git-svn-id: https://svn.fhem.de/fhem/trunk/fhem@3602 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- CHANGED | 1 + FHEM/01_FHEMWEB.pm | 2 ++ FHEM/61_EMWZ.pm | 2 +- FHEM/62_EMEM.pm | 2 +- FHEM/63_EMGZ.pm | 2 +- FHEM/95_holiday.pm | 3 ++- fhem.pl | 14 ++++++++++++++ 7 files changed, 22 insertions(+), 4 deletions(-) diff --git a/CHANGED b/CHANGED index 725710e74..98ec148ab 100644 --- a/CHANGED +++ b/CHANGED @@ -1,5 +1,6 @@ # Add changes at the top of the list. Keep it in ASCII - SVN + - feature: FHEMWEB detail screen with get dropdown - feature: displayattr command added - feature: SYSSTAT: allow (remote) monitoring system uptime - feature: new module 98_openweathermap.pm added (betateilchen) diff --git a/FHEM/01_FHEMWEB.pm b/FHEM/01_FHEMWEB.pm index 9d6eff7bf..95d80a56e 100755 --- a/FHEM/01_FHEMWEB.pm +++ b/FHEM/01_FHEMWEB.pm @@ -849,6 +849,8 @@ FW_doDetail($) FW_pO FW_hidden("detail", $d); FW_makeSelect($d, "set", getAllSets($d), "set"); + FW_makeSelect($d, "get", getAllGets($d), "set"); + FW_makeTable("Internals", $d, $h); FW_makeTable("Readings", $d, $h->{READINGS}); diff --git a/FHEM/61_EMWZ.pm b/FHEM/61_EMWZ.pm index 7a745ef74..2cf0bddc6 100755 --- a/FHEM/61_EMWZ.pm +++ b/FHEM/61_EMWZ.pm @@ -116,7 +116,7 @@ EMWZ_Get($@) my $msg; if($a[1] ne "status") { - return "unknown get value, valid is status"; + return "unknown argument $a[1], choose one of status"; } $hash->{LOCAL} = 1; my $v = EMWZ_GetStatus($hash); diff --git a/FHEM/62_EMEM.pm b/FHEM/62_EMEM.pm index eff136e4a..0e71d564c 100755 --- a/FHEM/62_EMEM.pm +++ b/FHEM/62_EMEM.pm @@ -110,7 +110,7 @@ EMEM_Get($@) my $msg; if($a[1] ne "status") { - return "unknown get value, valid is status"; + return "unknown argument $a[1], choose one of status"; } $hash->{LOCAL} = 1; my $v = EMEM_GetStatus($hash); diff --git a/FHEM/63_EMGZ.pm b/FHEM/63_EMGZ.pm index b7fd6f2a8..f5325b54e 100644 --- a/FHEM/63_EMGZ.pm +++ b/FHEM/63_EMGZ.pm @@ -108,7 +108,7 @@ EMGZ_Get($@) my $msg; if($a[1] ne "status" && int(@a) != 2) { - return "unknown get value, valid is status"; + return "unknown argument $a[1], choose one of status"; } $hash->{LOCAL} = 1; my $v = EMGZ_GetStatus($hash); diff --git a/FHEM/95_holiday.pm b/FHEM/95_holiday.pm index 3cfc2056e..8bf77fc51 100755 --- a/FHEM/95_holiday.pm +++ b/FHEM/95_holiday.pm @@ -210,7 +210,8 @@ holiday_Get($@) $arg = sprintf("%02d-%02d", $a[4]+1, $a[3]); } else { - return "wrong argument: need MM-DD/yesterday/today/tomorrow" + return "unknown argument $a[1], ". + "choose one of yesterday today tomorrow MM-DD"; } return holiday_refresh($hash->{NAME}, $arg); diff --git a/fhem.pl b/fhem.pl index 808990163..9103630e5 100755 --- a/fhem.pl +++ b/fhem.pl @@ -88,6 +88,7 @@ sub devspec2array($); sub doGlobalDef($); sub fhem($@); sub fhz($); +sub getAllGets($); sub getAllSets($); sub readingsBeginUpdate($); sub readingsBulkUpdate($$$@); @@ -1501,6 +1502,7 @@ CommandDisplayAttr($$) my @a = split(" ", $def, 2); return "Usage: displayattr []\n$namedef" if(@a < 1); +Log 1, "DA: $cl->{NAME}"; my @rets; my @devspec = devspec2array($a[0]); @@ -1769,6 +1771,18 @@ getAllAttr($) return $list; } +##################################### +sub +getAllGets($) +{ + my $d = shift; + + my $a2 = CommandGet(undef, "$d ?"); + return "" if($a2 !~ m/unknown.*choose one of /i); + $a2 =~ s/.*choose one of //; + return $a2; +} + ##################################### sub getAllSets($)