[TYPO3-german] Re: Re: Wert aus ext_conf_template.txt veränderbar machen
bernd wilke
t3ng at bernd-wilke.net
Wed Apr 2 15:21:40 CEST 2014
Am 02.04.14 15:00, schrieb Philipp Holdener:
> Hallo zusammen
>
> Kleiner Nachtrag:
>
>>
>>
>> #########
>>
>> public function
>> processDatamap_preProcessFieldArray(&$incomingFieldArray, $table, $id,
>> $parent) {
>> if ('fe_users' == $table) {
>> $weSvkvConf =
>> unserialize($GLOBALS['TYPO3_CONF_VARS']['EXT']['extConf']['we_svkv']);
>> if (intval($weSvkvConf['feUserStoragePid']) > 0) {
>> $incomingFieldArray['pid'] =
>> intval($weSvkvConf['feUserStoragePid']);
>> }
>> }
>> }
>>
>> #########
>>
>
> Wenn ich diesen Codeabschnitt auskommentiere ist es mir möglich, im
> Backend FEUser zu erstellen in welchem Sysordner ich auch immer will.
>
> Also eigentlich gut.. bzw.... Hmpf.
> Aber rausnehmen will ich den Code nicht. Der hat sicher seine
> berechitgkeit?! Sollte halt einfach nicht global gelten sondern pro
> Seitenbaum anpassbar sein über Typoscript.
was passt besser als Seiten-TSconfig?
auslesen kann man das in einem BE-Module (oder auch Hook wie hier wohl
benutzt?) mittels:
\TYPO3\CMS\Backend\Utility\BackendUtility::getModTSconfig($pageid,
'mod.' . EXTENSIONKEY);
damit müsste ein Setzen von
mod.EXTENSIONKEY.feUserStoragePid = 123
im TSConfig der Root-Seite pro Seitenbaum möglich sein.
und obiger Code könnte wie folgt modifiziert werden:
// bestimme Wert aus Page-TSconfig
$weSvkvConf =
\TYPO3\CMS\Backend\Utility\BackendUtility::getModTSconfig($pageid,
'mod.we_svkv.beUserFolder');
// wenn wert nicht gesetzt ...
if (intval($weSvkvConf['feUserStoragePid']) == 0) {
// benutze Wert aus Extension-Config:
$weSvkvConf =
unserialize($GLOBALS['TYPO3_CONF_VARS']['EXT']['extConf']['we_svkv']);
}
// wenn overridevalue gesetzt ...
if (intval($weSvkvConf['feUserStoragePid']) > 0) {
// überschreibe pid in aktuellem Datensatz
$incomingFieldArray['pid'] =
intval($weSvkvConf['feUserStoragePid']);
}
bernd
--
http://www.pi-phi.de/cheatsheet.html
More information about the TYPO3-german
mailing list