Startseite / Vorlagen (Grundlagen) / Aufbau von Vorlagen / Verweisvorlagen / Beispiele / Download-Verweise

Beispiel: Formular für Download-Verweise

Download-Verweise ermöglichen das Herunterladen von Medien von einer Internetseite auf den Arbeitsplatzrechner.

Im Folgenden wird beispielhaft ein Formular und die Syntax für eine entsprechende Ausgabe für einen Verweis vorgestellt, der ein Medium aus der Medien-Verwaltung, z. B. eine Microsoft Word-Datei, herunterlädt. Für den Verweistext soll dabei Text herangezogen werden, den der Redakteur im Formular selbst eingeben kann oder alternativ der Dateiname (Feld „Dateiname“ der Datei aus der Medien-Verwaltung). Zusätzlich sollen Größe und Dateiformat automatisch ausgegeben werden.

Darstellung (SiteArchitect)

Dialog Download-Verweis

Erläuterung

 

Verwendung

Eingabekomponente im folgenden Code-Beispiel

1.

Auswahl eines Mediums aus der Medien-Verwaltung, das nach Anklicken des Verweistextes heruntergeladen wird.
(Pflichtfeld, siehe Einleitung)

lt_reference

2.

Eingabe eines Verweistextes
(Pflichtfeld, siehe Einleitung)

lt_text

3.

Eingabe eines eines optionalen Kommentars, der als Tooltip zum Verweis angezeigt werden kann.

lt_comment

   

Formular

<CMS_MODULE>

<FS_REFERENCE name="lt_reference" hFill="yes" useLanguages="no">
<FILTER>
<ALLOW type="media"/>
</FILTER>
<LANGINFOS>
<LANGINFO lang="*" label="Download"/>
</LANGINFOS>
<PROJECTS>
<LOCAL name=".">
<SOURCES>
<FOLDER name="root" store="mediastore"/>
</SOURCES>
</LOCAL>
</PROJECTS>
</FS_REFERENCE>

<CMS_INPUT_TEXT name="text" hFill="yes" singleLine="no" useLanguages="no">
<LANGINFOS>
<LANGINFO lang="*" label="Link text"/>
<LANGINFO lang="DE" label="Verweistext"/>
</LANGINFOS>
</CMS_INPUT_TEXT>

<CMS_INPUT_TEXT name="comment" hFill="yes" singleLine="no" useLanguages="no">
<LANGINFOS>
<LANGINFO lang="*" label="Comment"/>
<LANGINFO lang="DE" label="Kommentar"/>
</LANGINFOS>
</CMS_INPUT_TEXT>

</CMS_MODULE>

Ausgabe

Wichtig Im Folgenden werden nur minimale Code-Beispiele vorgestellt, die für eine Verwendung im produktiven Projekt entsprechend angepasst werden müssen. So wurde beispielsweise auf eine Nicht-Leer-Prüfung (z. B. $CMS_IF(!lt_reference.isEmpty)$ verzichtet. Ohne diese kann es im Produktiv-Projekt aber zu Generierungsfehlern kommen.

Verweise werden in HTML generell mit folgender Syntax ausgegeben:

<a href="[Verweisziel]">[Verweistext]</a>

Für das Verweisziel (in diesem Fall das Medium, das heruntergeladen können werden soll) wird in der HTML-Ausgabe über die Verweisvorlage der Wert von lt_reference verwendet. hat der Redakteur einen Verweistext in der Eingabekomponente lt_text eingegeben, wird dieser verwendet. Ansonsten soll der Text aus dem Feld „Beschreibung“ des Mediums ausgegeben werden (mittels ref(...)):

<a href="$CMS_REF(lt_reference)$">

$CMS_IF(!lt_text.isEmpty)$
$CMS_VALUE(lt_text)$

$CMS_ELSE$
$CMS_VALUE(ref(lt_reference).getDescription())$

$CMS_END_IF$
$CMS_VALUE(ref(lt_reference).getDescription())$

$CMS_END_IF$
</a>

Damit der Benutzer sofort weiß, um welches Dateiformat und welche -größe es sich handelt, können diese Informationen über getSize und getExtension automatisch zu jeder herunterladbaren Datei ermittelt

$CMS_SET(_fileSize, ref(lt_reference).getSize().humanReadable("KiB", "#,##0"))$
$CMS_SET(_fileInfo, " (" + ref(lt_reference).getExtension().upperCase + ", " + _fileSize + " KB)")$

und dann entsprechend mit dem Verweistext ausgegeben werden:

$CMS_VALUE(_fileInfo)$

Kommentare aus dem Feld lt_comment können über das HTML-Attribut title als Tooltip zum Verweis ausgegeben werden.

Final könnte eine einfache beispielhafte Ausgabe des Verweises folgendermaßen aussehen:

$CMS_SET(_fileSize, ref(lt_reference).getSize().humanReadable("KiB", "#,##0"))$
$CMS_SET(_fileInfo, " (" + ref(lt_reference).getExtension().upperCase + ", " + _fileSize + " KB)")$

<li>
<a href="$CMS_REF(lt_reference)$" title="$CMS_VALUE(lt_comment)$">

$CMS_IF(!lt_text.isEmpty)$
$CMS_VALUE(lt_text)$

$CMS_ELSE$
$CMS_VALUE(ref(lt_reference).getDescription())$

$CMS_END_IF$

$CMS_VALUE(_fileInfo)$
</a>
</li>

Schema

Download-Verweis Pflege und Ausgabe
 

© 2005 - 2024 Crownpeak Technology GmbH | Alle Rechte vorbehalten. | FirstSpirit 2024.2 | Datenschutz