Übersetzungen

 string __(string text[, string lang])
 string ___(string text[, string lang])

Diese beiden Funktionen erlauben die Übersetzung von Texten, die in Sprachdateien definiert werden. Der text sollte hierbei der englische Ausdruck sein. Übersetzt wird in die durch die Benutzersession definierte Sprache oder optional in die durch lang angegebene. Der einzige Unterschied zwischen den beiden Funktionen ist, dass die Funktion ___() den String zusätzlich mit htmlspecialchars() formatiert, um eventuelle HTML-Tags zu konvertieren. Wird eine Übersetzung nicht gefunden, so wird der originale (englische) Text ausgegeben.

Die Sprachdateien haben dabei die folgende Form und müssen auf .inc.php enden:

 <?php
 $translation = array(

 'englischer Text'
 => 'Übersetzung',
 ...
  => 

);

Ein Modul kann eine zusätzliche Sprachdatei durch die Funktion addTranslation()' des Objektes $translator'' nachladen:

 bool $translator->addTranslation(string file[, string ressource])

file entspricht hierbei dem Dateinamen der Übersetzungsdatei ohne angehängtem .inc.php.

ressource ist das zu durchsuchende Basisverzeichnis (Default: CPO_BASEDIR.'_include/lang/'). In diesem Basisverzeichnis muss es für jede Übersetzung ein Unterverzeichnis mit dem Sprachnamen geben (z.B. 'deutsch').

Die Funktion versucht dann die Datei aus diesem Verzeichnis zu laden (in PHP-Sprache: include($ressource.$this->language.'/'.$file.'.inc.php');). Sollte die Datei nicht geladen werden können, wird false zurückgegeben.