Textgröße anhand "Status"-Regel mittels zweiter Variable regeln

Haussteuerung mittels mediola

Moderator: Co-Administratoren

Antworten
andreas15366
Beiträge: 21
Registriert: 05.11.2018, 08:26
System: CCU
Wohnort: 15366 Hoppegarten
Hat sich bedankt: 7 Mal
Danksagung erhalten: 1 Mal

Textgröße anhand "Status"-Regel mittels zweiter Variable regeln

Beitrag von andreas15366 » 19.01.2025, 19:36

Hallo,

mit einem Programm beschreibe ich alle 10 Minuten das
Textfeld "Ventilstände Werte" und in einem zweiten
Textfeld "Ventilstände Raum"; so hab ich untereinander stehend, den Ventilstand pro Raum.
Es kommen nur die Räume rein, deren Ventilstand > 0 ist.

In einem dritten
Textfeld "Ventilstand Anzahl Zeilen" werden die Räume gezählt.

Nun ist es manchmal so, dass das Textfeld ziemlich voll wird, wenn gerade viele Räume beheitzt werden. Deswegen hab ich die Anzahl Räume mitgezählt.

Auf diesen Wert würde ich gern per Statusregel die Textgröße für "Ventilstände Werte" und "Ventilstände Raum" anpassen. Meinetwegen
bis 7 Räume Schriftgröße 16 und
ab 8 Räumen Schriftgröße 14.
Screenshot 2025-01-19 192119.png
Hat jemand eine idee dazu?

Viele Grüße
Andreas

Fonzo
Beiträge: 7571
Registriert: 22.05.2012, 08:40
System: CCU
Hat sich bedankt: 26 Mal
Danksagung erhalten: 588 Mal

Re: Textgröße anhand "Status"-Regel mittels zweiter Variable regeln

Beitrag von Fonzo » 19.01.2025, 20:09

Nimm ein Element vom Typ Webseite. Diesem Element Webseite weist Du eine Variable als Status zu. Im Header des HTML Gerüsts definierst Du verschiedene Klassen mit unterschiedlichen Schriftgrößen bzw. angepasster Formatierung per CSS.

Die Variable, die Du beschreibst übergibst Du nicht nur den Text sondern auch die gewünschte Klasse. So wird entsprechend dem definierten CSS auch der Inhalt passend angezeigt.

Falls Du Dich nicht gut mit CSS auskennst, findest Du nähere Infos z.B. hier.

Als Beispiel sieht Deine Variable, die Du beschreibst also so aus

Code: Alles auswählen

<div class="a">Hier der Text der angezeigt werden soll.</div>
Falls Dir was unklar sein sollte, dann einfach genaue Rückfragen stellen, wo es bei Dir hängt.

andreas15366
Beiträge: 21
Registriert: 05.11.2018, 08:26
System: CCU
Wohnort: 15366 Hoppegarten
Hat sich bedankt: 7 Mal
Danksagung erhalten: 1 Mal

Re: Textgröße anhand "Status"-Regel mittels zweiter Variable regeln

Beitrag von andreas15366 » 20.01.2025, 17:53

Klingt ganz logisch. Vielen Dank für die "Fährte".

Ich hab jetzt folgendes gemacht:
Screenshot 2025-01-20 174553 b.png
Screenshot 2025-01-20 174507.png
Die Anzahl Zeilen wird aufgrund %neo_state% angezeigt .

Und jetzt steh ich noch auf dem Schlauch:

- Wie bekomme ich alle 3 Variablen "übergeben" (Prozent, Text und Anzahl Zeilen? oder
- Wie bekomme ich neben der Anzahl Zeilen die zwei weiteren Variablen übergeben?

- Oder mach ich in der CCU3 einen String z.B. wie #Zeile + '@' + #Prozent + '@' + #Raum und nimm den auf der Web-Site wieder auseinander?

Und dann:

- Wie Frage ich in css die Anzahl Zeilen ab, um dann eben z.B. bis 7 Zeilen die Schriftgröße auf 16 Pixel und > 7 Zeilen z.B. 14 Pixel zu setzen, um die Prozent und Text anzuzeigen?

Die Formatierung (Tabelle, Hintergrund, Rahmen usw. sind erst mal komplett egal.

Fonzo
Beiträge: 7571
Registriert: 22.05.2012, 08:40
System: CCU
Hat sich bedankt: 26 Mal
Danksagung erhalten: 588 Mal

Re: Textgröße anhand "Status"-Regel mittels zweiter Variable regeln

Beitrag von Fonzo » 20.01.2025, 19:03

andreas15366 hat geschrieben:
20.01.2025, 17:53
Ich hab jetzt folgendes gemacht:
Den Hintergrund solltest Du auf transparent setzen und die Schrift eben in Farbe und Schriftart entsprechend Deinen persönlichen Anforderungen definieren

Beispiel für Dokument-Beginn (Head)

Code: Alles auswählen

<!DOCTYPE html><html><head><meta charset="utf-8" /><style>html{background:transparent;color:white;font-family:sans-serif;padding:10px;}</style></head><body>
Den statischen Text im Header kommt weg. Den kompletten Inhalt des Body also alles was zwischen

Code: Alles auswählen

<body>
</body>

steht, wird dann in einer einzigen Variable übergeben, die Du eben dynamisch beschreiben musst.
andreas15366 hat geschrieben:
20.01.2025, 17:53
- Wie bekomme ich alle 3 Variablen "übergeben" (Prozent, Text und Anzahl Zeilen?
Du kannst nur eine einzige Variable übergeben, der Inhalt der Variable wird dort eingefügt wo der Platzhalter %neo_state% steht.

Du musst also den gesamten Inhalt, den Du anzeigen willst, inclusive der HTML Formatierung, in eine einzige Variable schreiben und diese Variable als Status zuweisen.
andreas15366 hat geschrieben:
20.01.2025, 17:53
- Wie bekomme ich neben der Anzahl Zeilen die zwei weiteren Variablen übergeben?
Du brauchst keine weiteren Variablen, Du schreibst den Text bereits bei generieren passend in eine einzige Variable. Der Unterschied ist nur, wenn Du über die Zeilenzahl x kommst, schreibst Du eben im HTML Code und dem div Tag einen andere Klasse in die Variable. Das hat hat dann in der Darstellung zur Folge, dass eben die passende Formatierung entsprechend der per CSS festgelegten Klasse angezeigt wird.
andreas15366 hat geschrieben:
20.01.2025, 17:53
- Wie Frage ich in css die Anzahl Zeilen ab, um dann eben z.B. bis 7 Zeilen die Schriftgröße auf 16 Pixel und > 7 Zeilen z.B. 14 Pixel zu setzen, um die Prozent und Text anzuzeigen?
Deine Abfrage machst Du nicht im CSS, da legst Du lediglich fest wie die Formatierung dann aussehen soll. Die Abfrage machst Du in dem Skript was die Variable dynamisch mit Inhalt beschreibt.

Als Beispiel

wenn Zeilen keiner als 7 dann Inhalt der zu beschreibenden Variable

Code: Alles auswählen

<div class="normalview">Hier der Text der angezeigt werden soll.</div>
wenn Zeilen größer als 7 dann Inhalt der zu beschreibenden Variable

Code: Alles auswählen

<div class="smallview">Hier der Text der angezeigt werden soll.</div>
Wobei Du dann eben im Beispiel CSS zwei Klassen definierst eine

Code: Alles auswählen

div.normalview {
  font-size: 100%;
}

div.smallview {
  font-size: 75%;
}

Antworten

Zurück zu „mediola“