Hallo,
ich habe mehrere Extensions die an einigen stellen die selbe Funktion benötigen (im konkreten Fall einen Avatar eines Users generieren/auslesen) und mag das natürlich so, dass ich diese Funktion nur an einer Stelle im ganzen System habe. Ich bräuchte also eine eigene Funktion die ich so ähnlich wie auch t3lib_div::_GET() aufrufen kann.
Also zB "meineEigeneKlasse::getAvatar($userId);"
Wie realisiere ich das am besten?
lg Matthias
In der Doku von wt_doorman ist das z.B. beschrieben.
inkludieren, instanziieren und dann so aufrufen, wie du es schon geschrieben hast: meineEigeneKlasse::getAvatar($userId);
Geschafft :-)
<?php
require_once(PATH_tslib.'class.tslib_pibase.php');
class user_myext_div extends tslib_pibase {
static function getAvatar($uid,$filePrefix) {
$cObj = t3lib_div::makeInstance('tslib_cObj');
return "avatar"
}
}
Da man $this->cObj in der statischen Methode nicht verwenden kann erzeuge ich ein eigenes cObj.
Dann einfach wo man es braucht:
require_once(t3lib_extMgm :: extPath('user_kathext').'pi1/class.user_kathext_div.php');
Schon kann ich die Methode verwenden:
$image = user_kathext_div::getAvatar($uid,'profile');
An die Extension-Konfiguration (für Bildsettings etc.) kommt man auch einfach mit:
$conf = $GLOBALS['TSFE']->tmpl->setup['plugin.']['user_myext_pi1.'];
Liebe Grüße
Matthias