FHEM Forum

FHEM => Frontends => TabletUI => Thema gestartet von: xxsteffenxx am 08 Juni 2016, 08:17:11

Titel: 60_allergy: Anzeige in TabletUI
Beitrag von: xxsteffenxx am 08 Juni 2016, 08:17:11
Hallo zusammen,
ich lass mir die Warnungen im Tablet UI anzeigen

<div data-type="symbol" data-device="pollen" data-get="fc1_Ambrosia" data-icons='["fa-forumbee","fa-forumbee","fa-forumbee fa-blink"]' data-get-on='["1","2","3"]' data-on-colors='["green","yellow","firebrick"]' data-off-color="#808080" class="big"></div>
<div class="cell narrow small">Ambros.</div>


Gibt es eine möglichkeit das dies nur angezeigt wird, wenn der Wert nur größer "0" ist?

fc1_Ambrosia    0
Soll demnach nicht angezeigt werden

fc1_Ampfer       2 aber dafür schon

Steffen
Titel: Antw:60_allergy: Anzeige in TabletUI
Beitrag von: takaze am 10 Juni 2016, 12:18:47
Hi,

wenn ich deine Frage richtig verstanden habe, dann musst du eigentlich nur noch die 0 als Parameter bei data-get-on anhängen und entsprechend bei den icons, bzw den colors einen leeren wert eintragen.


<div data-type="symbol" data-device="pollen"  class="big"
data-get="fc1_Ambrosia"
data-get-on='["0","1","2","3"]'
data-icons='["","fa-forumbee","fa-forumbee","fa-forumbee fa-blink"]'
data-on-colors='["","green","yellow","firebrick"]'
data-off-color="#808080"></div>
<div class="cell narrow small">Ambros.</div>


wenn bei dem leeren icon trotzdem ein default icon erscheint, kannst du mal bei color "transparent" bzw "none" probieren, dann ist das icon zwar da, aber hald nicht sichtbar. kanns leider grad nicht ausprobieren bzw nachschauen, hab aber da mal was so ähnlich umgesetzt  ;D

Grüße,
Florian
Titel: Antw:60_allergy: Anzeige in TabletUI
Beitrag von: xxsteffenxx am 10 Juni 2016, 13:23:11
Das dachte ich mir auch schon aber dann ist der Platz ja trotzdem "belegt" oder ich müsste es irgendwie schaffen die angeben mit Wert in einen Dummy zu schreiben ... da hab ich aber leider keinen Plan davon

Hab das mal durch einfach c&p von meinem Unwetterdummy versucht

sub pollen() {
  my $countWarn = ReadingsVal("pollen","fc1_*","");
  my $pollenText = "<div class=\"top-space-min\">";
  my $warnnumber = "";


  for(my $i = 0; $i < $countWarn; $i++) {
      $warnnumber = "fc1_".$i.";
      $pollenText .= ReadingsVal("pollen",$warnnumber,"");
      $pollenText .= "</div></div><div class=\"newline\">&nbsp </div>";
      $warnnumber = "";
  }

  $pollenText .= "</div>";

  fhem "set pollentext ".$pollenText;
}


War aber nicht von erfolg gekrönt.

Wollte alle fc1_* mit einem Wert in den Dummy schreiben ...

Steffen
Titel: Antw:60_allergy: Anzeige in TabletUI
Beitrag von: xxsteffenxx am 10 Juni 2016, 14:48:42
so nun bin ich mal einen schritt weiter...

sub pollen() {
  my $countWarn = ReadingsVal("pollen","fc1_maximum","");
  my $pollenText = "<div class=\"top-space-min\">";
  my $warnnumber = "";


  for(my $i = 0; $i < $countWarn; $i++) {
      $warnnumber = "fc1_";
      $pollenText .= ReadingsVal("pollen",$warnnumber,"");
      $pollenText .= "</div></div><div class=\"newline\">&nbsp </div>";
      $warnnumber = "";
  }

  $pollenText .= "</div>";

  fhem "set PollenText ".$pollenText;
}


Gibt dann aber das hier...

Internals:
   CFGFN
   NAME       PollenText
   NR         28767
   STATE      <div class="top-space-min"></div></div><div class="newline">&nbsp </div></div></div><div class="newline">&nbsp </div></div></div><div class="newline">&nbsp </div></div>
   TYPE       dummy
   Readings:
     2016-06-10 14:38:56   state           <div class="top-space-min"></div></div><div class="newline">&nbsp </div></div></div><div class="newline">&nbsp </div></div></div><div class="newline">&nbsp </div></div>
Attributes:
   room       Wetter


Text ohne Werte ^^
Titel: Antw:60_allergy: Anzeige in TabletUI
Beitrag von: xxsteffenxx am 11 Juni 2016, 08:25:24
so nochmal ein Schritt weiter...

Wie schaffe es dass das Reading und der Wert in meiner sub berücksichtigt wird?

Aktuell habe ich es so
sub pollen() {
  my $countWarn = ReadingsVal("pollen","fc1_maximum","");
  my $pollenText = "<div data-type=\"symbol\" data-device=\"pollen\" data-get=";
  my $warnnumber = "";


  for(my $i = 0; $i < $countWarn; $i++) {
      $warnnumber = "fc1_".$i.".*";
      $pollenText .= ReadingsVal("pollen",$warnnumber,"");
      $pollenText .= " \"data-icons='[\"fa-forumbee\",\"fa-forumbee\",\"fa-forumbee fa-blink\"]' data-get-on='[\"1\",\"2\",\"3\"]' data-on-colors='[\"green\",\"yellow\",\"firebrick\"]' data-off-color=\"#808080\" class=\"big\">";
      $warnnumber = "";
  }

  $pollenText .= "</div>";

  fhem "set PollenText ".$pollenText;
}
1;


Testweise auf "fc1_maximum" gelegt - aktuell ist es 2 also wird der Teil $pollenText .= " \"data-icons='[\"fa-forumbee\",\"fa-forumbee\",\"fa-forumbee fa-blink\"]' data-get-on='[\"1\",\"2\",\"3\"]' data-on-colors='[\"green\",\"yellow\",\"firebrick\"]' data-off-color=\"#808080\" class=\"big\">"; 2x in mein Dummy geschrieben, aber wie gesagt ohne die fc1 bezeichnung und Werte.

Hat mir jemand einen Tipp?

mein list vom dummy sieht so aus
Internals:
   NAME       PollenText
   NR         359
   STATE      <div data-type="symbol" data-device="pollen" data-get= "data-icons='["fa-forumbee","fa-forumbee","fa-forumbee fa-blink"]' data-get-on='["1","2","3"]' data-on-colors='["green","yellow","firebrick"]' data-off-color="#808080" class="big"> "data-icons='["fa-forumbee","fa-forumbee","fa-forumbee fa-blink"]' data-get-on='["1","2","3"]' data-on-colors='["green","yellow","firebrick"]' data-off-color="#808080" class="big"></div>
   TYPE       dummy
   Readings:
     2016-06-11 08:22:09   state           <div data-type="symbol" data-device="pollen" data-get= "data-icons='["fa-forumbee","fa-forumbee","fa-forumbee fa-blink"]' data-get-on='["1","2","3"]' data-on-colors='["green","yellow","firebrick"]' data-off-color="#808080" class="big"> "data-icons='["fa-forumbee","fa-forumbee","fa-forumbee fa-blink"]' data-get-on='["1","2","3"]' data-on-colors='["green","yellow","firebrick"]' data-off-color="#808080" class="big"></div>
Attributes:
   room       Wetter


Grüße Steffen
Titel: Antw:60_allergy: Anzeige in TabletUI
Beitrag von: en-trust am 12 Juli 2016, 13:30:52
Ist es möglich aus der Vielzahl an Pollen readings (Birke, Ahorn,...) mir auf der Seite nur jeweils 5 anzeigen zu lassen, die High oder medium sind ? Sprich irgendwie muss man die nach jeweiliger Prio sortieren, dann die ersten 5 jeweils nehmen und an die html Seite zur Anzeige mit Text senden. Ist dies möglich und wenn ja wie ?

Danke-.
Titel: Antw:60_allergy: Anzeige in TabletUI
Beitrag von: xxsteffenxx am 17 Juli 2016, 17:13:09
Zitat von: en-trust am 12 Juli 2016, 13:30:52
Ist es möglich aus der Vielzahl an Pollen readings (Birke, Ahorn,...) mir auf der Seite nur jeweils 5 anzeigen zu lassen, die High oder medium sind ? Sprich irgendwie muss man die nach jeweiliger Prio sortieren, dann die ersten 5 jeweils nehmen und an die html Seite zur Anzeige mit Text senden. Ist dies möglich und wenn ja wie ?

Danke-.

So könnte ich meinen Wunsch auch ausdrücken- genau dies suche ich auch :-)

Steffen