hallo daniel
hab mich etwas falsch ausgedrückt :oops:
jetzt zu meinem problem
ich habe eine extension wo unteranderem ein datum vorkommt
ausgeben tu ich alles in einem html template mit ###MARKERN###
nun zu meinem code in pi1 / class.tx_mitglieder_p1.php
Code:
function displayAll(){
// Lösche $content und lade die lokale Konfiguration für displayAll
$content = "";
$lconf = $this->conf["displayAll."];
// Definiere den Bereich des Templates in dem gearbeitet wird.
// Im Template sieht das dann so aus:
// <!-- ###TEMPLATE_DISPLAY_ALL### begin -->
// ...Der HTML-Code...
// <!-- ###TEMPLATE_DISPLAY_ALL### end -->
$template = $this->cObj->getSubpart($this->templateCode,"###TEMPLATE_DISPLAY_ALL###");
// Definiere ein Array für die Marker
$markerArray=array();
// Definiere ein Array für die wrappedSubparts (benutzen wir hier nicht, muss aber übergeben werden.
$wrappedSubpartArray=array();
//Lese alle Daten aus der Datenbank aus und speicher diese in $rows
//Dafür benutzen wir die Funktion getItems() die später noch definiert wird.
$rows = $this->getItems();
//Gehe alle ausgelesenen Daten durch und schreibe ins Template
while( list($c,$row)=each($rows) ){
// Definiere das Foto. Wenn nicht vorhanden setze Dummybild ein.
if ($row["photo"] == false) {$lconf["image."]["file"] = "fileadmin/images/nicht_vorhanden.gif";}
else {
$lconf["image."]["file"] = "uploads/tx_mitglieder/".($row["photo"]);
}
$theImgCode = $this->cObj->IMAGE($lconf["image."]);
// Ersetze Wrap-Marker mit Inhalt aus der Datenbank
// Diese Funktion habe ich noch nicht ausprobiert. Aber im Template sieht das dann wohl so aus:
// <!--###LINK_ITEM###--> ###FIRST_NAME### <--###LINK_ITEM###-->
// ###FIRST_NAME### wird dann vom array umschlossen.
//
//$wrappedSubpartArray=array();
//$wrappedSubpartArray["###LINK_ITEM###"]= array('<A href="'.$this->einefunktion
// Ersetze die einzelne Marker mit Inhalt aus der DB
$markerArray["###FIRST_NAME###"] = $row['first_name'];
$markerArray["###LAST_NAME###"] = $row['last_name'];
$markerArray["###POSITION###"] = $row['position'];
$markerArray["###BIRTHDAY###"] = $birthday = ($row["birthday"]==0) ? $birthday="" :
$birthday=gmdate("d.m.Y",$row['birthday']+7200);
$markerArray["###FUNCTION###"] = $row['function'];
// Ersetze die einzelne Marker mit Inhalt aus der DB
// Die Zeilenumbrüche aus dem Textfeld in <br> Tags umwandeln
$markerArray["###DESCRIPTION###"] = nl2br($row['description']);
// Hier binden wir das Foto des Mitglieds ein. Die nötigen Daten dazu kommen aus $theImgCode
$markerArray["###PHOTO###"] = $theImgCode;
// Die HTML-Vorlage inkl. ersetzte Marker in die $content Variable schreiben
$content.=$this->cObj->substituteMarkerArrayCached($template,$markerArray,array(),
$wrappedSubpartArray);
}
// Ein paar Debugbefehle
#t3lib_div::debug($conf);
#t3lib_div::debug($this->getItems());
// Wir geben die gerade erzeugten Daten an die main() Funktion zurück
return $content;
} nun möchte ich, dass es mir nicht das geburtstdatum ausgibt, sondern gleich das alter ausrechnet.