[TYPO3-german] Extbase-Problem mit switchableUserAction in Flexform

Peter Linzenkirchner liste at lisardo.de
Thu Aug 23 16:17:29 CEST 2012


Hallo, 

ich habe die Lösung gefunden, es ist ein Feature von Extbase, das ich aber so unlogisch finde, dass es doch schon wieder eine Art Bug ist ...

Die Einstellungen in ext_localconf.php sind unwichtig, sie werden nicht ausgewertet, wenn es eine Flexform mit <switchableControllerActions> gibt. Im Gegenzug müssen dort immer alle erlaubten Controller-Actions aufgeführt werden. Richtig ist also: 

<switchableControllerActions>
            <TCEforms>
              <label>LLL:EXT:myExt/Resources/Private/Language/locallang_mod.xml:plugin.select.action.title</label>
              <config>
                <type>select</type>
                <items>
                  <numIndex index="0">
                    <numIndex index="0">LLL:EXT:myExt/Resources/Private/Language/locallang_mod.xml:plugin.select.action.item.type.index</numIndex>
                    <numIndex index="1">Type->index;Type->finder</numIndex>
                  </numIndex>
                  <numIndex index="1">
                    <numIndex index="0">LLL:EXT:myExt/Resources/Private/Language/locallang_mod.xml:plugin.select.action.item.type.finder</numIndex>
                    <numIndex index="1">Type->finder;Type->index</numIndex>
                  </numIndex>
                </items>
              </config>
            </TCEforms>
 </switchableControllerActions>

Die erste wird die default-Action, die dann im Backend ausgewählt werden kann. Jede weitere Action, die innerhalb der Extension noch benötigt werden könnte, muss hier rein. 

Vielleicht hilft es ja jemand. 

Gruß
Peter


Am 22.08.2012 um 18:17 schrieb Peter Linzenkirchner:

> Hallo, 
> 
> ich habe gerade ein Problem mit einer Extension auf Extbase (nach einem Update von TYPO3 4.4 auf 4.7): 
> 
> in den flexforms können zwei actions ausgewählt werden: index / finder
> 
> das Plugin ist zweimal auf der Seite platziert, einmal mit mit ausgewählter Action finder und einmal mit index. 
> 
> in der ext_localconf.php ist das hier definiert: 
> Tx_Extbase_Utility_Extension::configurePlugin(
>    $_EXTKEY,
>    'Pi1',
>    array(
>        'Type'          => 'index,finder',
>    ),
>    array(
>        'Type'          => 'index,finder',
>    )
> );
> 
> mit der alten Extbase-Extension von TYPO3 4.4 lief das, in der neuen bekomme ich den Fehler: 
> 
> #1313855175: The action "index" (controller "Type") is not allowed by this plugin. Please check Tx_Extbase_Utility_Extension::configurePlugin() in your ext_localconf.php. 
> 
> ?? 
> 
> Da bin ich jetzt überfragt. Wenn ich die Reihenfolge der Plugins in den Contentelementen ändere, erhalte ich den Fehler umgekehrt, dann wird die Action finder angemosert. 
> 
> Wenn ich das hier einbaue: 
> 
> Tx_Extbase_Utility_Extension::configurePlugin(
>    $_EXTKEY,
>    'Pi1',
>    array(
>        'Type'          => '',
>    ),
>    array(
>        'Type'          => '',
>    )
> );
> 
> ändert sich gar nichts, das wird offensichtlich nicht ausgewertet. (Wenn ich es ganz weglasse, dann erhalte ich keinen Output). 
> 
> Ich ziehe daraus den Schluss, dass Extbase in der neuen Fassung die <switchableControllerActions> in den Flexforms anders auswertet und offenbar die definierten Actions in Tx_Extbase_Utility_Extension::configurePlugin überschreibt. 
> 
> Das würde ich als Bug einstufen, weil es dann nicht mehr möglich wäre, mehrere Plugins auf einer Seite unterzubringen. 
> 
> Kann das jemand bestätigen, oder bau ich blos irgendwie Mist?
> Vielen Dank
> Peter
> 
> 
> --
> Xing: http://www.xing.com/profile/Peter_Linzenkirchner
> Web: http://www.typo3-lisardo.de
> Facebook: http://tinyurl.com/lisardo-multimedia
> 
> _______________________________________________
> TYPO3-german mailing list
> TYPO3-german at lists.typo3.org
> http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german

--
Xing: http://www.xing.com/profile/Peter_Linzenkirchner
Web: http://www.typo3-lisardo.de
Facebook: http://tinyurl.com/lisardo-multimedia



More information about the TYPO3-german mailing list