Erstellen der erforderlichen Tabellenvorlagen
Unterhalb des Datenbank-Schemas müssen nun die erforderlichen Tabellenvorlagen mit Eingabekomponenten für die im Datenbank-Schema angelegten Tabellenspalten erstellt werden. Diese sind für die Funktionalität der Medien-Galerie bereits ausreichend und können über Content-Projektionen ausgegeben werden (siehe dazu das Kapitel zu Ausgabe und Navigation).
Galerie-Tabelle
In dieser Tabelle werden die Eingabekomponenten für die Pflege von Informationen zur Galerie definiert, z.B.
- CMS_INPUT_CONTENTLIST: Auswahl von Medien aus der Medien-Tabelle; für das Attribut table muss hier der eindeutige Name der Medien-Tabellenvorlage angegeben werden.
- CMS_INPUT_TEXT und CMS_INPUT_TEXTAREA (optional): Eingabe von Namen und Beschreibungen zu den Galerien
- CMS_INPUT_PICTURE (optional): Auswahl von Teaser-Bildern
- CMS_INPUT_COMBOBOX (optional): Herstellen von Verbindungen zur Kategorien-Tabelle; eine Befüllung aus der Kategorien-Tabelle ist mittels CMS_INCLUDE_OPTIONS möglich.
Bei der Verwendung der Eingabekomponente CMS_INPUT_CONTENTLIST ist die Angabe des Tags MEDIAMODE erforderlich. Über diesen Tag wird die Objekt-Auswahl über das "Hinzufügen"-Icon der Eingabekomponente gesteuert. Für das Attribut mediaEditor muss dabei der eindeutige Bezeichner der Eingabekomponente CMS_INPUT_PICTURE der Medien-Tabelle angegeben werden. Zusätzlich wird das Attribut indexAttribute verwendet, um die Reihenfolge, die der Redakteur bei der Auswahl der Medien definiert, zu speichern. |
Medien-Tabelle
In dieser Tabelle werden die Eingabekomponenten zur Pflege der Medien einer Galerie definiert, z.B.
- CMS_INPUT_PICTURE: Auswahl von Medien aus der Medien-Verwaltung
- CMS_INPUT_TEXTAREA (optional): Eingabe von Beschreibungstexten zu den Medien
Kategorien-Tabelle (optional)
In dieser Tabelle wird eine Eingabekomponente zur Eingabe von Kategorien definiert, z.B.
- CMS_INPUT_TEXT: Eingabe von Kategorie-Namen
Weitere Informationen zur Verwendung der Eingabekomponenten siehe Kapitel Eingabekomponenten. |
Beispiel-Fomulare
Beispiel: Formular Galerie-Tabelle
<CMS_MODULE>
<CMS_GROUP>
<CMS_INPUT_TEXT name="GALERIENAME" allowEmpty="no" singleLine="yes" useLanguages="yes">
<LANGINFOS>
<LANGINFO lang="DE" label="Galerie-Name" description="Überschrift der Galerie"/>
<LANGINFO lang="*" label="Gallery Name" description="Set a name for the selected gallery"/>
</LANGINFOS>
</CMS_INPUT_TEXT>
<CMS_INPUT_COMBOBOX name="GALERIEKATEGORIE" editable="no" useLanguages="yes">
<CMS_INCLUDE_OPTIONS type="database">
<LABELS>
<LABEL lang="DE">#item.name</LABEL>
<LABEL lang="*">#item.name</LABEL>
</LABELS>
<TABLE>KATEGORIENTABELLE</TABLE>
</CMS_INCLUDE_OPTIONS>
<LANGINFOS>
<LANGINFO lang="DE" label="Kategorie" description="Galerie-Kategorie"/>
<LANGINFO lang="*" label="Category" description="Gallery Category"/>
</LANGINFOS>
</CMS_INPUT_COMBOBOX>
</CMS_GROUP>
<CMS_INPUT_TEXTAREA name="GALERIEBESCHREIBUNG" allowEmpty="no" useLanguages="yes">
<LANGINFOS>
<LANGINFO lang="DE" label="Galeriebeschreibung" description="Galeriebeschreibung"/>
<LANGINFO lang="*" label="Gallery Description" description="Gallery Description"/>
</LANGINFOS>
</CMS_INPUT_TEXTAREA>
<CMS_INPUT_PICTURE name="TEASER" allowEmpty="no" imagePreview="yes" lean="mandatory" upload="yes" useLanguages="no">
<LANGINFOS>
<LANGINFO lang="DE" label="Teaserbild" description="Teaserbild"/>
<LANGINFO lang="*" label="Teaser" description="Teaser"/>
</LANGINFOS>
</CMS_INPUT_PICTURE>
</CMS_GROUP>
<CMS_INPUT_CONTENTLIST
name="MEDIENAUSWAHLLISTE"
indexAttribute="REIHENFOLGE_MEDIENAUSWAHLLISTE"
rows="20"
table="MEDIENTABELLE"
useLanguages="no">
<LANGINFOS>
<LANGINFO lang="DE" label="Medien"/>
<LANGINFO lang="*" label="Media"/>
</LANGINFOS>
<MEDIAMODE allowFolders="no" mediaEditor="BILDEINGABEKOMPONENTE_MEDIENTABELLE"/>
</CMS_INPUT_CONTENTLIST>
</CMS_MODULE>
Beispiel: Formular Medien-Tabelle
<CMS_MODULE>
<CMS_INPUT_PICTURE name="BILDEINGABEKOMPONENTE_MEDIENTABELLE" allowEmpty="no" imagePreview="yes" lean="mandatory" upload="yes" useLanguages="no">
<LANGINFOS>
<LANGINFO lang="DE" label="Medium" description="Medium"/>
<LANGINFO lang="*" label="Media" description="Media"/>
</LANGINFOS>
</CMS_INPUT_PICTURE>
<CMS_INPUT_TEXTAREA name="MEDIENBESCHREIBUNG" allowEmpty="no" useLanguages="yes">
<LANGINFOS>
<LANGINFO lang="DE" label="Medienbeschreibung" description="Medienbeschreibung"/>
<LANGINFO lang="*" label="Media Description" description="Media Description"/>
</LANGINFOS>
</CMS_INPUT_TEXTAREA>
</CMS_MODULE>
Beispiel: Formular Kategorien-Tabelle
<CMS_MODULE>
<CMS_INPUT_TEXT name="KATEGORIENTABELLE" useLanguages="yes">
<LANGINFOS>
<LANGINFO lang="DE" label="Galerie-Kategorie" description="Einfügen einer Galerie-Kategorie"/>
<LANGINFO lang="*" label="Gallery category" description="Insert a gallery category"/>
</LANGINFOS>
</CMS_INPUT_TEXT>
</CMS_MODULE>