TYPO3: Ersatz für Kernklasse und Funktion t3lib_div::fixed_lgd_pre() in Version 4.6

TYPO3 Framework und CMS

In der neuen TYPO3 Version 4.6 --rebase wurden zahlreiche depracted Funktionen aus dem TYPO3-Core entfernt. Viele sich im Einsatz befindliche TYPO3-Extensions arbeiten im TYPO3 Backend für die Module (mod1, mod2, ...) mit der Kernklasse t3lib_div und dessen ehemaligen Funktion fixed_lgd_pre(). Wird ein TYPO3 Projekt zum Beispiel von der Version 4.5 auf die Version 4.6.x aktualisiert, tritt dieser Fehler auf. Die Fehlerkorrektur ist recht simpel, leider muss dafür der Extensionkern (Ext-Core) angepasst werden, damit die Extension im TYPO3-Backend wieder funktionstüchtig ist. Bis zur nächsten Aktualisierung durch den eigentlichen Extension-Entwickler ist also diese Art Eingriff von Nöten.

Die neue PHP-Funktion in der Kernklasse t3lib_div lautet fixed_lgd_cs(), sie ersetzt die ehemalige Funktion fixed_lgd_pre().
Die Funktion fixed_lgd_pre() wurde zum Beispiel für die Extension "kickstarter" und "sk_pagecomments" eingesetzt.

Einen Patch für die Extension "kickstarter" wurde bereits am 31.05.2011 veröffentlicht.
In der Extension "sk_pagecomments" muss im Verzeichnis "mod1" die index.php-Datei in der Zeile 139 angepasst werden.

Ehemalige Codezeile (typo3conf/ext/sk_pagecomments/mod1/index.php)

  1. span style="color: #ff0000;">"pages",$this->pageinfo,$this->pageinfo["_thePath"])."
  2. ".$LANG->sL("LLL:EXT:lang/locallang_core.xml:labels.path").": ""_thePath"],50);

Neue Codezeile (typo3conf/ext/sk_pagecomments/mod1/index.php)

  1. span style="color: #ff0000;">"pages",$this->pageinfo,$this->pageinfo["_thePath"])."
  2. ".$LANG->sL("LLL:EXT:lang/locallang_core.xml:labels.path").": ""_thePath"], -50);

Note:

  1. t3lib_div::fixed_lgd_pre() - since TYPO3 4.1, will be removed in TYPO3 4.6 - Use t3lib_div::fixed_lgd_cs() instead (with negative input value for $chars) - require#5

Tags: , , , , , , ,

8 Antworten auf "TYPO3: Ersatz für Kernklasse und Funktion t3lib_div::fixed_lgd_pre() in Version 4.6"

Hinterlasse eine Nachricht