Die Block Toolbar kann um individuelle Toggle Buttons erweitert werden. Ein Toggle Button aktiviert oder deaktiviert einen bestimmten Wert. So können einfache Einstellungen, die normalerweise als Checkbox in den Block Einstellungen zu finden wären, direkt in der Block Toolbar bedient werden.
Um einen Toggle Button zu erstellen, wird die Eigenschaft controls in der conf.json Datei gesetzt. Hier wird ein Array mit allen Toggle Buttons definiert. So ein Toggle Button könnte z.B. die Darstellung des Blocks von hell auf dunkel wechseln.
{
"controls": [{
"title": "Dunkles Design verwenden",
"type": "toggle",
"name": "darken"
}]
}

{Die Eigenschaften eines Toggle Buttons erfordern mindestens folgende Werte:
- title: Der angezeigte Titel.
- type: Der Typ des Buttons (hier wird der Wert toggle erwartet).
- name: Der Name, unter dem Wert gespeichert wird.
Wenn Sie die De-/aktivierung des Toggle Buttons als Aktion abfangen wollen, können Sie zusätzlich die Eigenschaft event mit einer individuellen Bezeichnung setzen.
Sie können den angezeigten Titel des Toggle Buttons automatisch in Abhängigkeit des Zustands wechseln lassen. Dazu verwenden Sie die Eigenschaft labels. Dieses ist ein Array mit maximal zwei Titeln:
- Erster Titel: wird angezeigt, wenn der Toggle Button deaktiviert ist.
- Zweiter Titel: wird angezeigt, wenn der Toggle Button aktiviert ist.
{
"controls": [{
"type": "toggle",
"name": "darken",
"labels": [
"Dunkles Design verwenden",
"Helles Design verwenden"
]
}]
}
Wenn Sie die Eigenschaft labels verwenden, wird die Eigenschaft title nicht mehr ausgewertet und kann somit auch entfallen.
Wenn Sie kein Icon für den Toggle Button definieren, wird ein Standard Icon verwendet. Um ein Icon zu definieren, verwenden Sie die Eigenschaft appearance. Auch diese Eigenschaft ist ein Array mit maximal zwei Elementen:
- Erstes Element: wird verwendet, wenn der Toggle Button deaktiviert ist.
- Zweites Element: wird verwendet, wenn der Toggle Button aktiviert ist.
In so einem Element können weiter folgende Eigenschaften gesetzt werden:
- icon: die Bezeichnung des zu verwendenden Icons.
- color: die zu verwendende Farbe (z.B. als Hex-Wert).
Für die Icons aller Block Toolbar Buttons wird ein individuelles Icomoon Iconset verwendet. Um sich die verfügbaren Icons im EGOCMS Icomoon Iconset anzusehen und ein Icon für Ihren Toggle Button auszuwählen, laden Sie die Datei bin/editor/fonts/icomoon.svg
in die offizielle Icomoon App hoch und lesen die Bezeichnung in der Anzeige der zu generierenden Font ab.
Über die Eigenschaften include und exclude können Sie kommasepariert auch eine Liste von Blöcken angeben, für die dieser Toggle Button angezeigt, bzw. nicht angezeigt wird. Standardmäßig wird ein Toggle Button für alle Blöcke angezeigt.
Sie können einen Toggle Button in dieser Form auch direkt einem Block über dessen controls Eigenschaft zuweisen.
Im Block Template oder Block Skript können Sie schließlich über die Variable $extra._toggle abfragen, ob ein Toggle Button de-/aktiviert ist. Diese Variable enthält ein Array mit den Werten zu den Namen aller Toggle Buttons:
{* Smarty Beispiel im Block Template *}
{if $extra._toggle.darken}
...
{/if}
// PHP Beispiel im Block Skript
if ($extra['_toggle']['darken']) {
// ...
}