container

Ein container-Objekt fasst mehrere paragraph-Objekte zusammen. Es ist also die logisch übergeordnete Struktur zu Absätzen.

Mithilfe eines Container-Objekts kann während des Render-Vorgangs ein übergeordnetes Container-DIV-Tag um mehrere Paragraph-DIV-Tags herum aufgebaut werden.

Damit können Effekte erreicht werden wie z.B. ein Hintergrundbild über die ganze Seitenbreite für mehrere Absätze.

area

Syntax: container.area

Der Name des Bereichs auf der Seite, in dem sich der Container befindet.

Werte sind z.B. "standard" oder "news".

articles

Syntax: container.articles

Ermittelt eine Liste mit 0..n Artikel-Objekten vom Typ article, aus allen paragraph- und paragraphColumn-Objekten im aktuellen Container.

Über die Liste kann mit einer for-Schleife iteriert werden:

  • count ist die aktuelle Anzahl von Artikeln in der Liste.
  • item(index) liefert den Artikel am angegebenen Index (0-basiert).

Die zurückgegebenen Artikel sind abhängig von:

  1. Ob Artikel aktiv/inaktiv sind (entweder weil der Benutzer den Artikel explizit auf inaktiv gesetzt hat, oder weil dieser aufgrund der zeitgesteuerten Sichtbarkeit zum aktuellen Zeitpunkt unsichtbar ist)
  2. Wie der Benutzer den "Einfügen an/aus"-Schalter im Hauptfenster rechts oben gesetzt hat.

Folgende Logik gilt:

  • Wenn "Einfügen an/aus" auf "aus" steht und ein Artikel aktiv ist, wird der Artikel mit in dieser Liste zurückgegeben.
  • Wenn "Einfügen an/aus" auf "an" steht und ein Artikel aktiv ist, wird der Artikel mit in dieser Liste zurückgegeben. Inaktive Artikel werden ebenfalls zurückgegeben, und zwar dann, wenn für die interne Vorschau in Zeta Producer gerendert wird. Also wenn system.preview den Wert true hat. Hat system.preview den Wert false, werden inaktive Artikel nicht zurückgegeben.

cssClass

Syntax: container.cssClass

Der vom Benutzer im Reihe-Bearbeiten-Dialogfenster in der Container-Sektion eingegebene CSS-Klassen-Name.

Im Widget muss die Eingabe einer CSS-Klasse für den Benutzer manuell aktiviert werden, damit dieser die CSS-Klasse eingeben kann.

Beispiel:

<div class="<$= container.cssClass $>">
</div>

hasArticles

Syntax: container.hasArticles

Prüft, ob im Container Artikel enthalten sind.

Das zurückgegebene Ergebnis (true/false) ist abhängig von:

  1. Ob Artikel aktiv/inaktiv sind (entweder weil der Benutzer Artikel explizit auf inaktiv gesetzt hat, oder weil Artikel aufgrund der zeitgesteuerten Sichtbarkeit zum aktuellen Zeitpunkt unsichtbar sind).
  2. Wie der Benutzer den "Einfügen an/aus"-Schalter im Hauptfenster rechts oben gesetzt hat.

Folgende Logik gilt:

  • Wenn keine Artikel vorhanden sind, wird false zurückgegeben.
  • Wenn "Einfügen an/aus" auf "aus" steht und mindestens ein Artikel aktiv ist, wird true zurückgegeben.
  • Wenn "Einfügen an/aus" auf "an" steht und mindestens ein Artikel aktiv ist, wird true zurückgegeben. Sind inaktive Artikel vorhanden, wird ebenfalls true zurückgegeben, und zwar dann, wenn für die interne Vorschau in Zeta Producer gerendert wird. Also wenn system.preview den Wert true hat. Hat system.preview den Wert false, wird false zurückgegeben.

id

Syntax: container.id

Die interne Datenbank-ID des Containers.

inlineCss

Syntax: container.inlineCss

Der vom Benutzer im Absatz-Bearbeiten-Dialogfenster in der Container-Sektion eingegebene Inline-CSS-Code.

Im Widget muss die Eingabe von Inline-CSS-Code für den Benutzer manuell aktiviert werden, damit dieser den Inline-CSS-Code eingeben kann.

Beispiel:

<div style="<$= container.inlineCss $>">
</div>

paragraphs

Syntax: container.paragraphs

Gibt alle paragraph-Objekte in dem Container zurück.

Über die Liste kann mit einer for-Schleife iteriert werden:

  • count ist die aktuelle Anzahl von Absätzen in der Liste.
  • item(index) liefert den Absatz am angegebenen Index (0-basiert).

Der Benutzer kann pro Absatz über ein Kontrollkästchen konfigurieren, ob ein Container an diesem Absatz beginnen soll.

Der Container ist dann für alle nachfolgenden Absätze so lange gültig, bis der Benutzer wieder bei einem Absatz das Kontrollkästchen aktiviert. Alternativ ist der letzte Absatz eines Bereichs implizit das Ende des Containers.

value()

Syntax: container.value(key, fallBack = null)

Liefert einen vom Benutzer eingegebenen/ausgewählten Wert des Containers.

  • key - Der Name des Werts, der gelesen werden soll. Das entspricht den "name"-Einträgen der "fields"-Liste in der JSON-Datei der Seitenvorlage.
  • fallBack - Falls der Wert nicht gefunden wurde, kann optional beim Aufruf der Funktion ein Wert angegeben werden, der zurückgeliefert wird.

Der Rückgabewert ist kommt immer mit dem richtigen Datentyp zurück, also z.B. als boolescher Wert, ganze Zahl oder Fließkommazahl. Das kann wichtig bei der weiteren Verarbeitung im JavaScript werden, so dass Sie z.B. keinen parseInt()-Aufruf machen müssen.

valueExpanded()

Syntax: container.valueExpanded(key, fallBack = null)

Verhält sich analog zur value()-Funktion mit dem Unterschied, dass etwaige im zurückgegeben Wert enthalten Skript-Aufrufe und Platzhalter bereits expandiert sind.

valueRaw()

Syntax: container.valueRaw(key, fallBack = null)

Verhält sich analog zur value()-Funktion mit dem Unterschied, dass der Rückgabewert immer als Zeichenfolge zurückgegeben wird und der Datentyp nicht geändert wird.

Es werden also z.B. auch boolesche Werte und Zahlen immer als Zeichenfolge zurückgegeben.

cssBackgroundImageSimple

Syntax: container.cssBackgroundImageSimple(key) : cssBackgroundImageSimple

cssBackgroundImage

Syntax: container.cssBackgroundImage(key) : cssBackgroundImage

Liefert ein articleCssBackgroundImage-Objekt für den angegebenen Schlüssel (String) zurück, sofern sich ein CSS-Hintergrund-Bild-Element an dieser Stelle befindet.