[TYPO3-german] BE-Modul einspaltig (wie Kickstarter)
Rainer Schleevoigt
rainer at webmasterei-hamburg.de
Fri Oct 22 10:32:21 CEST 2010
Am 10/21/10 12:08 PM, schrieb Rainer Schleevoigt:
> Am 10/21/10 11:55 AM, schrieb Felix Nagel:
>> Ich hatte das mal für ne Statistik Extension mit Modul gebraucht und kam
>> dann zu der Feststellung das es wohl nur im Admin Module Bereich möglich
>> ist.
>>
>
Es geht so:
Mit dem Kickstarter ein völlig neues Modul anlegen. Ambesten macht man
zwei, damit ersteres der Toppunkt ist.
So etwa:
if (TYPO3_MODE == 'BE') {
t3lib_extMgm::addModulePath('txauswertugM1',
t3lib_extMgm::extPath($_EXTKEY) . 'mod1/');
t3lib_extMgm::addModule('txauswertugM1', '', '',
t3lib_extMgm::extPath($_EXTKEY) . 'mod1/');
t3lib_extMgm::addModulePath('txauswertugM1_txauswertugM2',
t3lib_extMgm::extPath($_EXTKEY) . 'mod2/');
t3lib_extMgm::addModule('txauswertugM1', 'txauswertugM2', '',
t3lib_extMgm::extPath($_EXTKEY) . 'mod2/');
}
Dann entsteht das gewünschte Verhalten. Allerdings kann jetzt der
Nichtadmin die rechte Seite scheinbar nicht aufrufen. Es liegt daran,
dass $this->id leer ist (da der Nichtadmin eine Seite wählen muss um die
Zugangsberechtigung zu testen). Das ist ein Bug oder Feature. Jedenfalls
wird die Ausgabe des Moduls über:
$this->pageinfo =
t3lib_BEfunc::readPageAccess($this->id,$this->perms_clause);
$access = is_array($this->pageinfo) ? 1 : 0;
if ( ($this->id && $access) || ($BE_USER->user['admin'] &&
!$this->id)) {
gefiltert. Man müsste diese Abfrage also komplett rausnehmen und dann
auf die Sicherheit vertrauen, das der Redakteur über das Modulfilter
erzogen wird. Eine Filterung über Seiten ist natürlich nicht möglich, da
es die nicht gibt. ;-))
Gruß Rainer
--
Webmasterei Hamburg
Dipl.-Ing. R. Schleevoigt / TYPO3 Certified Integrator
Ust-ID: DE239491976
mail:rainer at webmasterei-hamburg.de
http://webmasterei.com
22303 Hamburg | Novalisweg 10
+49 40 27806982 | skype:kontaktschmied
More information about the TYPO3-german
mailing list