Einzelnen Beitrag anzeigen
  #4  
Alt 20.04.06, 18:53
chrisisflat chrisisflat ist offline
Forum Zuschauer
 
Registriert seit: 11.04.06
Beiträge: 7

Abhilfe


Hallo,

auch ich hatte das Problem "No template defined" und zwar unter Typo3 4.0 und sowohl mit der pil_mailform 1.1.0 als auch der 2.0.0.
Nach ein wenig Recherche bin ich dahinter gekommen, dass das Problem bei mir (sowohl unter Linux als auch Windows) auftritt, sobald ich die Seite unter utf-8 laufen lassen.
Ich konnte das Problem dann auch im Code finden:

class.tx_pimailform_pi1.php (Zeile 642 [version 2.0.0]:sad:
PHP-Code:
// Check template config
                //if ($GLOBALS['TSFE']->renderCharset == 'utf-8') {
                        //$localCharset = !empty($GLOBALS['TSFE']->csConvObj->charSetArray[$this->LLkey]) ?  $GLOBALS['TSFE']->csConvObj->charSetArray[$this->LLkey] : 'iso8859-1';
                        //$this->template = trim($GLOBALS['TSFE']->csConvObj->utf8_encode($this->cObj->fileResource($this->localconf['template']),  $localCharset));
                        //$this->template = trim($GLOBALS['TSFE']->csConvObj->utf8_encode($this->cObj->fileResource($this->localconf['template']), $GLOBALS['TSFE']->renderCharset ));
                //} else {
                        
$this->template utf8_encode(trim($this->cObj->fileResource($this->localconf['template'])));
                
//} 
Soweit ich das verstehe, wir hier versucht, das Template nach utf8 zu encoden, falls utf-8 als RenderCharset ausgewählt wurde. Das encoden schlägt jedoch fehlt. Man könnte jetzt versuchen die Zeile

PHP-Code:
$this->template trim($GLOBALS['TSFE']->csConvObj->utf8_encode($this->cObj->fileResource($this->localconf['template']),  $localCharset)); 
gerade zu biegen. Ich habe mal geschaut und bei der indexed search sieht das z.B. so aus:

PHP-Code:
$this->template trim($GLOBALS['TSFE']->csConvObj->utf8_encode($this->cObj->fileResource($this->localconf['template']), $GLOBALS['TSFE']->renderCharset )); 
Jedoch finde ich das auch nicht richtig, da ich z.B. die Templates schon utf-8 codiert abspeichere. Und etwas utf-8 codiertes nochmal utf-8 zu encodieren geht in die Hose. D.h. wenn man es sauber machen wollte, müsste man vorher den Charset des Templates ermitteln. Für mich reicht es aus, wenn ich die Templates einfach utf-8 codiert abspeichere und eben den "IF"-Teil auskommentiere.

Vielleicht hilft euch das auch weiter!

Viele Grüße

Chris
Mit Zitat antworten