mirror of
https://github.com/fhem/fhem-mirror.git
synced 2025-04-30 12:07:09 +00:00
Longpoll will update dropdown and readings, mainly by Matthias
git-svn-id: https://svn.fhem.de/fhem/trunk@2545 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
parent
9840fb488e
commit
f532a1d005
@ -32,7 +32,7 @@ sub FW_readIcons($);
|
|||||||
sub FW_readIconsFrom($$);
|
sub FW_readIconsFrom($$);
|
||||||
sub FW_returnFileAsStream($$$$$);
|
sub FW_returnFileAsStream($$$$$);
|
||||||
sub FW_roomOverview($);
|
sub FW_roomOverview($);
|
||||||
sub FW_select($$$$@);
|
sub FW_select($$$$$@);
|
||||||
sub FW_serveSpecial($$$$);
|
sub FW_serveSpecial($$$$);
|
||||||
sub FW_setDirs();
|
sub FW_setDirs();
|
||||||
sub FW_showLog($);
|
sub FW_showLog($);
|
||||||
@ -758,7 +758,8 @@ FW_makeTable($$@)
|
|||||||
|
|
||||||
} else {
|
} else {
|
||||||
$t = "" if(!$t);
|
$t = "" if(!$t);
|
||||||
FW_pO "<td>$v</td><td>$t</td>";
|
FW_pO "<td><div id=\"$name-$n\">$v</div></td>";
|
||||||
|
FW_pO "<td><div id=\"$name-$n-ts\">$t</div></td>";
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -797,7 +798,7 @@ FW_makeSelect($$$$)
|
|||||||
FW_pO FW_hidden("dev.$cmd$d", $d);
|
FW_pO FW_hidden("dev.$cmd$d", $d);
|
||||||
FW_pO FW_submit("cmd.$cmd$d", $cmd, $class);
|
FW_pO FW_submit("cmd.$cmd$d", $cmd, $class);
|
||||||
FW_pO "<div class=\"$class downText\"> $d </div>";
|
FW_pO "<div class=\"$class downText\"> $d </div>";
|
||||||
FW_pO FW_select("arg.$cmd$d",\@al, $selEl, $class,
|
FW_pO FW_select("","arg.$cmd$d",\@al, $selEl, $class,
|
||||||
"FW_selChange(this.options[selectedIndex].text,'$list','val.$cmd$d')");
|
"FW_selChange(this.options[selectedIndex].text,'$list','val.$cmd$d')");
|
||||||
FW_pO FW_textfield("val.$cmd$d", 30, $class);
|
FW_pO FW_textfield("val.$cmd$d", 30, $class);
|
||||||
|
|
||||||
@ -1196,7 +1197,7 @@ FW_showRoom()
|
|||||||
FW_hidden("arg.$d", $cmd) .
|
FW_hidden("arg.$d", $cmd) .
|
||||||
FW_hidden("dev.$d", $d) .
|
FW_hidden("dev.$d", $d) .
|
||||||
($FW_room ? FW_hidden("room", $FW_room) : "") .
|
($FW_room ? FW_hidden("room", $FW_room) : "") .
|
||||||
FW_select("val.$d", \@tv, $txt, "dropdown").
|
FW_select("$d-$cmd","val.$d", \@tv, $txt, "dropdown").
|
||||||
"</td><td>".
|
"</td><td>".
|
||||||
FW_submit("cmd.$d", "set").
|
FW_submit("cmd.$d", "set").
|
||||||
"</td>";
|
"</td>";
|
||||||
@ -1645,11 +1646,12 @@ FW_hidden($$)
|
|||||||
##################
|
##################
|
||||||
# Generate a select field with option list
|
# Generate a select field with option list
|
||||||
sub
|
sub
|
||||||
FW_select($$$$@)
|
FW_select($$$$$@)
|
||||||
{
|
{
|
||||||
my ($n, $va, $def, $class, $jSelFn) = @_;
|
my ($id, $n, $va, $def, $class, $jSelFn) = @_;
|
||||||
$jSelFn = ($jSelFn ? "onchange=\"$jSelFn\"" : "");
|
$jSelFn = ($jSelFn ? "onchange=\"$jSelFn\"" : "");
|
||||||
my $s = "<select $jSelFn name=\"$n\" class=\"$class\">";
|
$id = ($id ? "id=\"$id\"" : "");
|
||||||
|
my $s = "<select $jSelFn $id name=\"$n\" class=\"$class\">";
|
||||||
|
|
||||||
foreach my $v (@{$va}) {
|
foreach my $v (@{$va}) {
|
||||||
if($def && $v eq $def) {
|
if($def && $v eq $def) {
|
||||||
@ -2500,6 +2502,19 @@ FW_Notify($$)
|
|||||||
($FW_wname, $FW_ME, $FW_ss, $FW_tp, $FW_subdir) = @old;
|
($FW_wname, $FW_ME, $FW_ss, $FW_tp, $FW_subdir) = @old;
|
||||||
$data = "$dn<<$dev->{STATE}<<$txt\n";
|
$data = "$dn<<$dev->{STATE}<<$txt\n";
|
||||||
|
|
||||||
|
#Add READINGS
|
||||||
|
if($dev->{CHANGED}) { # It gets deleted sometimes (?)
|
||||||
|
my $tn = TimeNow();
|
||||||
|
my $max = int(@{$dev->{CHANGED}});
|
||||||
|
for(my $i = 0; $i < $max; $i++) {
|
||||||
|
if( $dev->{CHANGED}[$i] !~ /: /) {
|
||||||
|
next; #ignore 'set' commands
|
||||||
|
}
|
||||||
|
my ($readingName,$readingVal) = split(": ",$dev->{CHANGED}[$i],2);
|
||||||
|
$data .= "$dn-$readingName<<$readingVal<<$readingVal\n";
|
||||||
|
$data .= "$dn-$readingName-ts<<$tn<<$tn\n";
|
||||||
|
}
|
||||||
|
}
|
||||||
} elsif($filter eq "console") {
|
} elsif($filter eq "console") {
|
||||||
if($dev->{CHANGED}) { # It gets deleted sometimes (?)
|
if($dev->{CHANGED}) { # It gets deleted sometimes (?)
|
||||||
my $tn = TimeNow();
|
my $tn = TimeNow();
|
||||||
|
@ -34,8 +34,18 @@ FW_doUpdate()
|
|||||||
if(d.length != 3)
|
if(d.length != 3)
|
||||||
continue;
|
continue;
|
||||||
var el = document.getElementById(d[0]);
|
var el = document.getElementById(d[0]);
|
||||||
if(el)
|
if(el) {
|
||||||
el.innerHTML=d[2];
|
if(el.nodeName.toLowerCase() == "select") {
|
||||||
|
// dropdown: set the selected index to the current value
|
||||||
|
for(var j=0;j<el.options.length;j++)
|
||||||
|
if(el.options[j].value == d[2]) {
|
||||||
|
el.selectedIndex = j;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
|
||||||
|
el.innerHTML=d[2];
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
//Next time, we continue at the next line
|
//Next time, we continue at the next line
|
||||||
FW_curLine = lines.length;
|
FW_curLine = lines.length;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user