Hallo,

den unten stehenden Code habe ich aus dem Kochbuch von Hanser, Seite
648.

Den soll ich laut Buch in
typo3conf/ext/musicdb/pi1/class.tx_meineextension_pi1.php schreiben und
zwar in die main() -Methode. Aber wo genau. danke.

Die sieht bisher so aus:
/////////////////////////////////////////////////////////////////////////

        /**
         * Main method of your PlugIn
         *
         * @param       string          $content: The content of the     PlugIn 
           
         * @param       array           $conf: The PlugIn Configuration
         * @return      The content that should be displayed on the website
         */
        function main($content,$conf)   {
                switch((string)$conf['CMD'])    {

case 'singleView':
                                list($t) = 
explode(':',$this->cObj->currentRecord);
                                $this->internal['currentTable']=$t;
                                $this->internal['currentRow']=$this->cObj->data;
                                return 
$this->pi_wrapInBaseClass($this->singleView($content,$conf));
                        break;
                        default:
                                if 
(strstr($this->cObj->currentRecord,'tt_content'))    {
                                        $conf['pidList'] = 
$this->cObj->data['pages'];
                                        $conf['recursive'] = 
$this->cObj->data['recursive'];
                                }
                                return 
$this->pi_wrapInBaseClass($this->listView($content,$conf));
                
                        break;
                
                }
        }

/////////////////////////////////////////////////////////////////

und jetzt der code aus dem Buch.

//////////////////////////////////////////////////////////////////////

# Template-Datei einlesen
$this->templateCode = $this->cObj->fileResource($conf['templateFile']);
# Bereich im Template auswählen
$template['total'] =
$this->cObj->getSubpart($this->templateCode,'###SINGLEVIEW###');
# Inhalt für die einzelnen Marker in das Marker-Array schreiben -
# dabei für die Field-Werte die entsprechende Übersetzung mittels
# pi_getLL() holen.
$markerArray['###FIELD1###'] = $this->pi_getLL('FIELD1');
$markerArray['###VALUE1###'] = 'VALUE1';
$markerArray['###FIELD2###'] = $this->pi_getLL('FIELD2');
$markerArray['###VALUE2###'] = 'VALUE2';
# Nun werden alle Marker im Template ersetzt und das ersetzte Template
# in die Ausgabe-Variable $content geschrieben
$content = $this->cObj->substituteMarkerArrayCached($template['total'],
$markerArray);
# Die Ausgabe-Variable wird schließlich zurückgegeben.
return $content;

# Template-Datei einlesen
$this->templateCode = $this->cObj->fileResource($conf['templateFile']);
# Bereich im Template auswählen
$template['total'] =
$this->cObj->getSubpart($this->templateCode,'###LISTVIEW###');
# Subpart auswählen
$template['item'] = $this->cObj->getSubpart($template['total'],
'###ITEM###');
# Ergebnisliste zusammenstellen
while ($row = $GLOBALS['TYPO3_DB']->sql_fetch_assoc($res)) {
   # Marker-Array fullen
   $markerArray['###VALUE1###'] = $row['value1'];
   $markerArray['###VALUE2###'] = $row['value2'];
   # Marker ersetzen
   $content_item .=
$this->cObj->substituteMarkerArrayCached($template['item'],
$markerArray);
}
# Subpart ersetzen
$subpartArray['###CONTENT###'] = $content_item;
$content = $tis->cObj->substituteMarkerArrayCached($template['total'],
array(), $subpartArray);
# Die Ausgabe-Variable wird schließlich zurückgegeben
return $content;

/////////////////////////////////////////////////////////////////////////


danke
thomas


_______________________________________________
TYPO3-german mailing list
TYPO3-german@lists.netfielders.de
http://lists.netfielders.de/cgi-bin/mailman/listinfo/typo3-german

Antwort per Email an