Konfiguration per FlexForm

Controller Auswahl per Flexform

Um den Controller per Flexform im Plugin auswählen zu können, folgendes in ext_tables.php (für das Plugin Register):

Tx_Extbase_Utility_Extension::registerPlugin(
    $_EXTKEY,
    'Register',
    'Register'
);

# Flexform selection
$pluginSignature = str_replace('_','',$_EXTKEY) . '_register';
$TCA['tt_content']['types']['list']['subtypes_addlist'][$pluginSignature] = 'pi_flexform';
t3lib_extMgm::addPiFlexFormValue($pluginSignature, 'FILE:EXT:' . $_EXTKEY . '/Configuration/FlexForms/flexform_register.xml');        

Die Datei /Configuration/FlexForms/flexform_register.xml enthält dann folgendes:

<T3DataStructure>
<meta>
    <langDisable>1</langDisable>
</meta>
 <sheets>
  <sDEF>
   <ROOT>
     <TCEforms>
      <sheetTitle>Einstellungen</sheetTitle>
     </TCEforms>
     <type>array</type>
     <el>
         <switchableControllerActions>
           <TCEforms>
             <label>Standardaktion des Plugins</label>
             <config>
              <type>select</type>
              <items>
                <numIndex index="0">
                 <numIndex index="0">Workbook</numIndex>
                 <numIndex index="1">FrontendUser->list;FrontendUser->show</numIndex>
                </numIndex>
                <numIndex index="1">
                 <numIndex index="0">Register</numIndex>
                 <numIndex index="1">FrontendUser->new;FrontendUser->create</numIndex>
                </numIndex>                               
               </items>
             </config>
           </TCEforms>
          </switchableControllerActions>
     </el>
   </ROOT>
  </sDEF>
 </sheets>
</T3DataStructure>

Es müssen alle erlaubten Actions aufgelistet werden. Falls nur eine action da steht wird immer diese Action ausgeführt (und es geht z.B. das Editieren dann nicht mehr). Wenn man hier was ändert muss man im Backend das Plugin editieren, erneut den gewünschten Wert auswählen (Workbook, Register) und wieder speichern.

Erstellt: 09/2012| Geändert: 10/2015