[TYPO3-mvc] Switchable ControllerActions + Tx_Extbase_Utility_Extension::configurePlugin()

Mattias Nilsson mattias at pixelant.se
Sun Aug 7 17:23:12 CEST 2011


In your ext_localconf.php you have a typo:

Tx_Extbase_Utility_Extension::
configurePlugin(
 $_EXTKEY,
 'Listshow',
 array(
 'ListShow' => 'list, show',

 )
);

As i Can se it should not be namned Listshow but => ListShow


On Sun, Aug 7, 2011 at 4:41 PM, Bader Paul <baderp at gmx.de> wrote:

> Hi List,
>
> Maybe someone can me help.
>
> As a Exampleextesion for me I will build a Plugin width List- and
> Singleview on two pages.
> One Page width Listview and one Page width singleview.
>
>
> 1. I create the following Controller and the Plugin works fine on one page.
> It`s simple created by the ExtensionBuilder
>
> /**
>  * Controller for the ListShow object
>  */
> class Tx_Listshow_Controller_ListShowController extends
> Tx_Extbase_MVC_Controller_ActionController {
>
>  /**
>  * @var Tx_Listshow_Domain_Repository_ListShowRepository
>  */
>  protected $listShowRepository;
>
>  /**
>  * @param Tx_Listshow_Domain_Repository_ListShowRepository
> $listShowRepository
>   * @return void
>  */
>  public function
> injectListShowRepository(Tx_Listshow_Domain_Repository_ListShowRepository
> $listShowRepository) {
>  $this->listShowRepository = $listShowRepository;
>  }
>
>
>
>  /**
>  * Displays all ListShows
>  *
>  * @return void
>  */
>  public function listAction() {
>  $configuration =
> $this->configurationManager->getConfiguration(Tx_Extbase_Configuration_ConfigurationManagerInterface::CONFIGURATION_TYPE_FRAMEWORK);
>   $listShows = $this->listShowRepository->findAll();
>  $this->view->assign('listShows', $listShows);
>  }
>
>
>  /**
>  * Displays a single ListShow
>  *
>  * @param Tx_Listshow_Domain_Model_ListShow $listShow the ListShow to
> display
>  * @return string The rendered view
>  */
>  public function showAction(Tx_Listshow_Domain_Model_ListShow $listShow) {
>  $this->view->assign('listShow', $listShow);
>  }
>
>
> }
> ?>
>
> 2.I create the following new Flexform.xml for the Plugin and the Plugin
> works fine.
>
> <T3DataStructure>
>  <sheets>
>    <sDEF>
>      <ROOT>
>        <TCEforms>
>          <sheetTitle>Optionen</sheetTitle>
>        </TCEforms>
>        <type>array</type>
>        <el>
>          <switchableControllerActions>
>            <TCEforms>
>              <label>Plugin type</label>
>              <config>
>                <type>select</type>
>                <items type="array">
>                  <numIndex index="1" type="array">
>                    <numIndex index="0">Listen Ansicht</numIndex>
>                    <numIndex index="1">ListShow->list</numIndex>
>                  </numIndex>
>                  <numIndex index="2" type="array">
>                    <numIndex index="0">Detail Ansicht</numIndex>
>                    <numIndex index="1">ListShow->show</numIndex>
>                  </numIndex>
>                </items>
>              </config>
>            </TCEforms>
>          </switchableControllerActions>
>        </el>
>      </ROOT>
>    </sDEF>
>  </sheets>
> </T3DataStructure>
>
> 3. In my ext_tables.php I have the following code.
>
> <?php
> if (!defined('TYPO3_MODE')) {
>  die ('Access denied.');
> }
>
> Tx_Extbase_Utility_Extension::registerPlugin(
>  $_EXTKEY,
>  'ListShow',
>  'listshow'
> );
>
> $pluginSignature = str_replace('_','',$_EXTKEY) . '_' . listshow;
> $TCA['tt_content']['types']['list']['subtypes_addlist'][$pluginSignature] =
> 'pi_flexform';
> t3lib_extMgm::addPiFlexFormValue($pluginSignature, 'FILE:EXT:' . $_EXTKEY .
> '/Configuration/FlexForms/flexform_' .listshow. '.xml');
>
> 4. In my ext_localconf.php I have the following Code.
>
> <?php
> if (!defined('TYPO3_MODE')) {
>  die ('Access denied.');
> }
>
> Tx_Extbase_Utility_Extension::configurePlugin(
>  $_EXTKEY,
>  'Listshow',
>  array(
>  'ListShow' => 'list, show',
>
>  )
> );
>
> ?>
>
> 5. When I look on the Page width the selected Listview Controller I get
> following Exeption.
>
>
> #1295479650: The default controller can not be determined.
> Please check for Tx_Extbase_Utility_Extension::configurePlugin() in your
> ext_localconf.php.
>
>
> Sorry what is her wrong - Have anybody an idea.
>
> Thanks for your help
>
> Paul
> _______________________________________________
> TYPO3-project-typo3v4mvc mailing list
> TYPO3-project-typo3v4mvc at lists.typo3.org
> http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-project-typo3v4mvc
>



-- 
Mvh
/Mattias


More information about the TYPO3-project-typo3v4mvc mailing list