CMS_INPUT_CHECKBOX
Inhaltsverzeichnis |
zum Beispiel |
zu den Methoden: Set<Option> |
CMS_INPUT_CHECKBOX
Die Checkbox ist ein komplexes Auswahlfeld. Der Redakteur kann hier keine Inhalte direkt eingeben, sondern aus einer vorgegebenen Auswahl an Einträgen die gewünschten Inhalte auswählen.
Im Gegensatz zu den Eingabekomponenten Combobox (CMS_INPUT_COMBOBOX) und Radiobutton (CMS_INPUT_RADIOBUTTON) ist es bei Checkboxen möglich, mehr (oder weniger) als eine Auswahl gleichzeitig zu treffen. Es können beliebig viele Einträge aktiviert werden.
Analog dazu kann auch die Eingabekomponente Liste (CMS_INPUT_LIST) verwendet werden, die ebenfalls eine Auswahl aus beliebig vielen (oder keinem) Einträgen aus einer Liste bietet.
Zusätzlich können bei der Verwendung in der Datenquellen-Verwaltung mit dem allgemeinen Tag CMS_INCLUDE_OPTIONS Datenbankinhalte in der Eingabekomponente dargestellt werden.
Access-API Anwendungsbeispiel
Die Beispiel-Implementierung CheckboxEditorValueExample veranschaulicht einige einfache Anwendungsfälle für den Lesenden-, Schreibenden-, Erstellenden-Zugriff auf das Daten-Objekt (CheckboxEditorValue) und dessen inneren Data-Container (OptionModel) der Eingabekomponente anhand der FirstSpirit Access-API.
- Anwendungs-Beispiel: CheckboxEditorValueExample
- Daten-Objekt: CheckboxEditorValue
- Container-Typ: OptionModel
Pflichtparameter
Optionaler Parameter
Optionaler Parameter
Optionaler Parameter
Optionaler Parameter
Optionaler Parameter
Optionaler Parameter
Optionaler Parameter
Optionaler Parameter
Optionaler Parameter
Optionaler Parameter
Pflichtparameter
Pflichtparameter
Optionaler Parameter
Optionaler Parameter
Optionaler Parameter
Pflichtparameter
Optionaler Parameter
Optionaler Parameter
Parameter
Der nachfolgenden Tabelle können die Parameter der Eingabekomponente CHECKBOX entnommen werden.
name
Das Attribut "name" ist der Variablenname einer Eingabekomponente, mit dem in den Vorlagen - mit Hilfe von $CMS_VALUE()$ - das Ergebnisobjekt der Eingabekomponente verwendet oder der Inhalt ausgegeben werden kann.
Parameter | Pflichtparameter | Seit | Typ | Standardwert |
---|---|---|---|---|
name* | Ja | 3.1 | Designator | Keiner |
allowEmpty
Mit dem Parameter "allowEmpty" wird festgelegt, ob für eine Eingabekomponente ein Wert angegeben werden muss oder nicht.
Bei der Angabe von allowEmpty="YES" ist eine Eingabe nicht zwingend, bei allowEmpty="NO" jedoch schon.
Eingabekomponenten mit allowEmpty="NO" werden auch als Pflichteingabekomponenten bezeichnet.
Der Standardwert für allowEmpty ist YES.
Parameter | Pflichtparameter | Seit | Typ | Standardwert |
---|---|---|---|---|
allowEmpty | Nein | 3.0 | YesNo | YES |
convertEntities
Mit dem Attribut "convertEntities" werden Sonderzeichen, die in die Eingabekomponenten eingeben wurden, bei der Ausgabe in HTML-Zeichen umgewandelt.
Es gibt hier drei Ausprägungen:
- convertEntities="NONE" (Standard)
- convertEntities="STANDARD"
- convertEntities="QUOTE"
Bei NONE werden keinerlei Konvertierungsregeln angewendet.
Wird STANDARD angegeben, so werden die Konvertierungsregeln angewendet, die im Bereich "convert" der ausgewählten Konvertierungsregel des Präsentationskanales stehen.
Die Angabe QUOTE schließt STANDARD explizit mit ein. Es wird jedoch zusätzlich der Bereich "quote" der Konvertierungsregel angewendet.
Parameter | Pflichtparameter | Seit | Typ | Standardwert |
---|---|---|---|---|
convertEntities | Nein | 2.0 | ConvertEntity | NONE |
gridHeight
Der Parameter "gridheight" gibt an, wie viele Optionen bei der Anzeige der Eingabekomponente untereinander dargestellt werden sollen.
Wird für den Parameter "gridheight" ein Wert angegeben, so hat dieser Wert Vorrang vor dem Wert des Parameters "gridwidth".
Widersprechen sich die Werte der Parameter "gridwidth" und "gridheight", so gilt der Wert des Parameters "gridheight" für die Darstellung der Eingabekomponente.
Parameter | Pflichtparameter | Seit | Typ | Standardwert |
---|---|---|---|---|
gridHeight | Nein | 2.0 | PositiveInteger | Keiner |
gridWidth
Der Parameter "gridwidth" gibt an, wie viele Optionen bei der Anzeige der Eingabekomponente nebeneinander dargestellt werden sollen.
Wird für den Parameter "gridwidth" kein Wert angegeben, so ist der Defaultwert "2".
Parameter | Pflichtparameter | Seit | Typ | Standardwert |
---|---|---|---|---|
gridWidth | Nein | 2.0 | PositiveInteger | 2 |
hFill
Die Anzeige einer Eingabekomponente erfolgt immer mit einer vordefinierten Breite.
Ist es aber gewünscht, dass die Eingabekomponente die volle zur Verfügung stehende Anzeigebreite nutzt, ist der Parameter hFill mit dem Wert YES anzugeben.
Parameter | Pflichtparameter | Seit | Typ | Standardwert |
---|---|---|---|---|
hFill | Nein | 2.0 | YesNo | NO |
hidden
Mit dem Parameter "hidden" kann eine Eingabekomponente für den Redakteur ausgeblendet werden.
Bei der Angabe von hidden="YES" wird die Eingabekomponente ausgeblendet, bei hidden="NO" nicht.
Der Standardwert für hidden ist NO, so dass Eingabekomponenten standardmäßig für den Redakteur sichtbar sind.
Parameter | Pflichtparameter | Seit | Typ | Standardwert |
---|---|---|---|---|
hidden | Nein | 4.0.44 | YesNo | NO |
noBreak
Mit dem Parameter noBreak kann der automatische Zeilenumbruch nach einer Eingabekomponente unterdrückt werden.
Um den automatischen Zeilenumbruch zu unterdrücken, ist der Parameter noBreak mit dem Wert "YES" anzugeben (noBreak="YES").
Parameter | Pflichtparameter | Seit | Typ | Standardwert |
---|---|---|---|---|
noBreak | Nein | 2.0 | YesNo | NO |
preset
Mit dem Attribut preset kann festgelegt werden, wie Vorgabewerte in einer Eingabekomponente behandelt werden (vgl. dazu auch Kapitel Vorgabewerte). Wird preset="default" gesetzt, wird der im Formular definierte Rückgriffwert verwendet. Nachträgliche Änderungen im Formular an diesem Wert wirken sich auf alle Verwendungen in den vom Redakteur gepflegten Eingabekomponenten aus, solange bis ein manueller Wert in die Eingabekomponente gesetzt wird. Dies ist die Standardeinstellung. Wird preset="copy" gesetzt, wird der durch den Redakteur gewählte Wert "hart" in der Eingabekomponente gespeichert. Nachträgliche Änderungen am Vorgabewert im Formular wirken sich nicht aus.
Parameter | Pflichtparameter | Seit | Typ | Standardwert |
---|---|---|---|---|
preset | Nein | 4.0 | Preset | DEFAULT |
sortOrder
Mit dem Parameter sortOrder kann die Reihenfolge der Anzeige der Einträge beeinflusst werden.
Für den Parameter können drei Schlüsselbegriffe verwendet werden:
- sortOrder="KEEP_ORDER" (Standard)
- sortOrder="ASCENDING"
- sortOrder="DESCENDING"
Standardmäßig bzw. bei Verwendung von KEEP_ORDER wird die Reihenfolge der Einträge in der Reihenfolge angezeigt, wie sie im Formular über die Definition mittels ENTRIES / ENTRY vom Vorlagen-Entwickler vorgegeben ist.
Mit dem Wert ASCENDING werden die Einträge aufsteigend und bei DESCENDING absteigend alphabetisch sortiert. Eine solche Sortierung der Einträge bietet sich speziell dann an, wenn die Einträge aus einer verknüpften Tabelle stammen (Verwendung von CMS_INCLUDE_OPTIONS, Typ DATABASE).
Parameter | Pflichtparameter | Seit | Typ | Standardwert |
---|---|---|---|---|
sortOrder | Nein | 3.0 | SortOrder | KEEP_ORDER |
useLanguages
Mit dem Parameter useLanguages kann festgelegt werden, ob eine Eingabekomponente für verschiedene Sprachen unterschiedliche bzw. abweichende Werte speichern soll oder nicht (mehrsprachige Pflege).
Wird der Parameter nicht angegeben so werden standardmäßig abweichende Werte für die verschiedenen Sprachen gespeichert.
Bei der Angabe von NO (...useLanguages="NO") wird ein Wert für alle Sprachen gespeichert.
Parameter | Pflichtparameter | Seit | Typ | Standardwert |
---|---|---|---|---|
useLanguages | Nein | 2.0 | YesNo | YES |
ENTRIES
Mit dem Tag ENTRIES kann die Menge der in der Eingabekomponente auswählbaren Einträge festgelegt werden.
Im Tag kann das Tag ENTRY angegeben werden.
Ein auswählbarer Eintrag entspricht einem ENTRY-Tag.
ENTRY
Mit einem ENTRY-Tag wird innerhalb des ENTRIES-Tags genau eine Eintrag definiert, der in der Eingabekomponente auswählbar sein soll. Das Tag besitzt den Pflichtparameter value, der dem in der Eingabekomponente zu speichernde Wert entspricht.
Parameter | Pflichtparameter | Seit | Typ | Standardwert |
---|---|---|---|---|
value* | Ja | 2.0 | String | Keiner |
value
Mit dem Parameter value im Tag ENTRY wird der in der Eingabekomponente zu speichernde Wert festgelegt.
Die einzelnen Werte der value-Parameter innerhalb eines ENTRIES-Tag müssen sich voneinander unterscheiden. |
Parameter | Pflichtparameter | Seit | Typ | Standardwert |
---|---|---|---|---|
value* | Ja | 2.0 | String | Keiner |
LANGINFOS
Über das Tag LANGINFOS können für jede Eingabekomponente sprachabhängige Angaben definiert werden, z. B. wie die Eingabekomponente in den unterschiedlichen Projektsprachen betitelt sein soll (Parameter label), welcher Tooltip angezeigt werden soll (Parameter description) usw. Aus Gründen der Übersichtlichkeit werden dabei Definitionen, die in mehreren Sprachen identisch sind, zusammengefasst. So wird z. B. aus
<LANGINFOS>
<LANGINFO lang="*" label="Date" format="dd.MM.yy"/>
<LANGINFO lang="DE" label="Date" format="dd.MM.yy"/>
<LANGINFO lang="EN" label="Date" format="MM/dd/yy"/>
</LANGINFOS>
beim Speichern
<LANGINFOS>
<LANGINFO lang="*" label="Date" format="dd.MM.yy"/>
<LANGINFO lang="EN" label="Date" format="MM/dd/yy"/>
</LANGINFOS>
Die Definition für den Rückfallwert (*) bleibt dabei immer erhalten, von Definitionen für Sprachen mit gleichen Werten bleibt immer die oberste erhalten.
Ab FirstSpirit-Version 4.2R4 kann der Rückfallwert weggelassen werden. Dann wird beim Speichern automatisch die zuerst definierte Sprache als Rückfallwert verwendet, z. B. wird aus
<LANGINFOS>
<LANGINFO lang="EN" label="Date"/>
<LANGINFO lang="DE" label="Datum"/>
</LANGINFOS>
beim Speichern
<LANGINFOS>
<LANGINFO lang="*" label="Date"/>
<LANGINFO lang="DE" label="Datum"/>
</LANGINFOS>
LANGINFO
Mit dem Tag LANGINFO werden Werte oder Attribute für eine Sprache oder aber für die Verwendung als Rückfallwerte angegeben.
Um Werte bzw. Attribute für eine Sprache anzugeben ist im Parameter lang die Abkürzung der Projektsprache anzugeben:
...
<LANGINFO lang="DE".../>
...
Rückfallwerte werden mit dem speziellen Sprachkürzel * ("für alle Sprachen") angegeben:
...
<LANGINFO lang="*".../>
...
Bei dem Parameter lang handelt es sich um einen Pflichtparameter.
Parameter | Pflichtparameter | Seit | Typ | Standardwert |
---|---|---|---|---|
lang* | Ja | 3.1 | LanguageAbbreviation | Keiner |
description | Nein | 3.1 | String | Keiner |
ignore | Nein | 4.0 | YesNo | NO |
label | Nein | 3.1 | String | Keiner |
lang
Mit dem Parameter lang wird das Sprachkürzel, das in den Servereigenschaften im Feld Abkürzung eingetragen ist (siehe , Kapitel "Sprach-Vorlagen"), angegeben, um festzulegen für welche Projektsprachen die Definitionen gelten sollen, z. B. DE für Deutsch, EN für Englisch, FR für Französisch usw. Folgende Zeichen können dabei beliebig oft angegeben werden: -, _, 0-9 und A-Z. Kleinbuchstaben werden nach dem Speichern der Vorlage automatisch in Großbuchstaben umgewandelt. Alternativ kann * für Rückfallwerte verwendet werden.
Parameter | Pflichtparameter | Seit | Typ | Standardwert |
---|---|---|---|---|
lang* | Ja | 3.1 | LanguageAbbreviation | Keiner |
description
Mit dem Parameter description kann eine Beschreibung angegeben werden, die zur Anzeige eines Tooltipps (Mouse-Over) genutzt wird.
Parameter | Pflichtparameter | Seit | Typ | Standardwert |
---|---|---|---|---|
description | Nein | 3.1 | String | Keiner |
ignore
Mit dem Parameter ignore kann erreicht werden, das der Eintrag in der angegebenen Sprache nicht angezeigt bzw. ignoriert wird.
Wird der Parameter nicht angegeben, so wird ein Eintrag in der Sprache angezeigt.
Bei der Angabe von YES (...ignore="YES") wird der entsprechende Eintrag in der angegebenen Sprache ignoriert.
Parameter | Pflichtparameter | Seit | Typ | Standardwert |
---|---|---|---|---|
ignore | Nein | 4.0 | YesNo | NO |
label
Mit dem Parameter label wird die Oberflächenbeschriftung für Eingabe- und Visualisierungkomponenten angegeben.
Parameter | Pflichtparameter | Seit | Typ | Standardwert |
---|---|---|---|---|
label | Nein | 3.1 | String | Keiner |
LANGINFOS
Über das Tag LANGINFOS können für jede Eingabekomponente sprachabhängige Angaben definiert werden, z. B. wie die Eingabekomponente in den unterschiedlichen Projektsprachen betitelt sein soll (Parameter label), welcher Tooltip angezeigt werden soll (Parameter description) usw. Aus Gründen der Übersichtlichkeit werden dabei Definitionen, die in mehreren Sprachen identisch sind, zusammengefasst. So wird z. B. aus
<LANGINFOS>
<LANGINFO lang="*" label="Date" format="dd.MM.yy"/>
<LANGINFO lang="DE" label="Date" format="dd.MM.yy"/>
<LANGINFO lang="EN" label="Date" format="MM/dd/yy"/>
</LANGINFOS>
beim Speichern
<LANGINFOS>
<LANGINFO lang="*" label="Date" format="dd.MM.yy"/>
<LANGINFO lang="EN" label="Date" format="MM/dd/yy"/>
</LANGINFOS>
Die Definition für den Rückfallwert (*) bleibt dabei immer erhalten, von Definitionen für Sprachen mit gleichen Werten bleibt immer die oberste erhalten.
Ab FirstSpirit-Version 4.2R4 kann der Rückfallwert weggelassen werden. Dann wird beim Speichern automatisch die zuerst definierte Sprache als Rückfallwert verwendet, z. B. wird aus
<LANGINFOS>
<LANGINFO lang="EN" label="Date"/>
<LANGINFO lang="DE" label="Datum"/>
</LANGINFOS>
beim Speichern
<LANGINFOS>
<LANGINFO lang="*" label="Date"/>
<LANGINFO lang="DE" label="Datum"/>
</LANGINFOS>
LANGINFO
Mit dem Tag LANGINFO werden Werte oder Attribute für eine Sprache oder aber für die Verwendung als Rückfallwerte angegeben.
Um Werte bzw. Attribute für eine Sprache anzugeben ist im Parameter lang die Abkürzung der Projektsprache anzugeben:
...
<LANGINFO lang="DE".../>
...
Rückfallwerte werden mit dem speziellen Sprachkürzel * ("für alle Sprachen") angegeben:
...
<LANGINFO lang="*".../>
...
Bei dem Parameter lang handelt es sich um einen Pflichtparameter.
Parameter | Pflichtparameter | Seit | Typ | Standardwert |
---|---|---|---|---|
lang* | Ja | 3.1 | LanguageAbbreviation | Keiner |
description | Nein | 3.1 | String | Keiner |
label | Nein | 3.1 | String | Keiner |
lang
Mit dem Parameter lang wird das Sprachkürzel, das in den Servereigenschaften im Feld Abkürzung eingetragen ist (siehe , Kapitel "Sprach-Vorlagen"), angegeben, um festzulegen für welche Projektsprachen die Definitionen gelten sollen, z. B. DE für Deutsch, EN für Englisch, FR für Französisch usw. Folgende Zeichen können dabei beliebig oft angegeben werden: -, _, 0-9 und A-Z. Kleinbuchstaben werden nach dem Speichern der Vorlage automatisch in Großbuchstaben umgewandelt. Alternativ kann * für Rückfallwerte verwendet werden.
Parameter | Pflichtparameter | Seit | Typ | Standardwert |
---|---|---|---|---|
lang* | Ja | 3.1 | LanguageAbbreviation | Keiner |
description
Mit dem Parameter description kann eine Beschreibung angegeben werden, die zur Anzeige eines Tooltipps (Mouse-Over) genutzt wird.
Parameter | Pflichtparameter | Seit | Typ | Standardwert |
---|---|---|---|---|
description | Nein | 3.1 | String | Keiner |
label
Mit dem Parameter label wird die Oberflächenbeschriftung für Eingabe- und Visualisierungkomponenten angegeben.
Parameter | Pflichtparameter | Seit | Typ | Standardwert |
---|---|---|---|---|
label | Nein | 3.1 | String | Keiner |
Beispiel
Ein Beispiel für die Eingabekomponente CHECKBOX:
<CMS_INPUT_CHECKBOX gridWidth="1" gridHeight="3" name="BEZEICHNER" useLanguages="YES">
<ENTRIES>
<ENTRY value="WERT">
<LANGINFOS>
<LANGINFO lang="*" label="TEXT"/>
<LANGINFO lang="DE" label="TEXT"/>
<LANGINFO lang="EN" label="TEXT"/>
</LANGINFOS>
</ENTRY>
</ENTRIES>
<LANGINFOS>
<LANGINFO lang="*" label="TEXT" description="TEXT"/>
<LANGINFO lang="DE" label="TEXT" description="TEXT"/>
<LANGINFO lang="EN" label="TEXT" description="TEXT"/>
</LANGINFOS>
</CMS_INPUT_CHECKBOX>
Ein Beispiel für die Befüllung einer Eingabekomponente "CMS_INPUT_CHECKBOX" mit Einträgen aus einer Fremdtabelle (Datenquellen-Verwaltung):
<CMS_INPUT_CHECKBOX gridWidth="2" name="BEZEICHNER" useLanguages="NO">
<CMS_INCLUDE_OPTIONS type="database">
<LABELS>
<LABEL lang="*">#item.SPALTE</LABEL>
<LABEL lang="DE">#item.SPALTE_DE</LABEL>
<LABEL lang="EN">#item.SPALTE_EN</LABEL>
</LABELS>
<TABLE>TABELLENVORLAGE</TABLE>
</CMS_INCLUDE_OPTIONS>
<LANGINFOS>
<LANGINFO lang="*" label="TEXT" description="TEXT"/>
<LANGINFO lang="DE" label="TEXT" description="TEXT"/>
<LANGINFO lang="EN" label="TEXT" description="TEXT"/>
</LANGINFOS>
</CMS_INPUT_CHECKBOX>
Verwendungsbeispiel in der Vorlagensyntax
Das nachfolgende Beispiel stellt die ausgewählten Werte einer CHECKBOX-Eingabekomponente als HTML-Liste dar.
Ausgehend von folgender Konfiguration:
<CMS_INPUT_CHECKBOX name="checkbox">
<ENTRIES>
<ENTRY value="1st_value">
<LANGINFOS>
<LANGINFO lang="*" label="1st label"/>
<LANGINFO lang="DE" label="1. Wert"/>
</LANGINFOS>
</ENTRY>
<ENTRY value="2nd_value">
<LANGINFOS>
<LANGINFO lang="*" label="2nd label"/>
<LANGINFO lang="DE" label="2. Wert"/>
</LANGINFOS>
</ENTRY>
</ENTRIES>
<LANGINFOS>
<LANGINFO lang="*" label="Selection"/>
<LANGINFO lang="DE" label="Auswahl"/>
</LANGINFOS>
</CMS_INPUT_CHECKBOX>
führt die Ausgabe mit dem Aufruf
$CMS_VALUE(checkbox)$
- wenn beide Optionen aktiviert sind - zu der Ausgabe:
[1st_value, 2nd_value]
Da die Eingabekomponente ein Set <Option>-Objekt zurückliefert, kann die Ausgabe aller aktivierten Optionen mit einer $CMS_FOR(...)$-Anweisung realisiert werden. Der Wert einer Option kann mit der Methode .getValue() ausgegeben werden:
<ul>
$CMS_FOR(w, checkbox)$
<li>$CMS_VALUE(w.value)$</li>
$CMS_END_FOR$
</ul>
Das Ergebnis wäre dann die Ausgabe:
<ul>
<li>1st_value</li>
<li>2nd_value</li>
</ul>
Weiterführende Themen |
---|
$CMS_IF(...)$-Anweisung, $CMS_VALUE(...)$-Anweisung, Datenelement OPTIONS, $CMS_FOR(...)$-Anweisung |