[Frage] Flexform setzt actions nicht korrekt -> Error: "The action xy is not allowed by this plugin. ..." TYPO3-Version: 7.6.27

  • meisenbe meisenbe
    Typ im Roten Hemd
    0 x
    2 Beiträge
    0 Hilfreiche Beiträge
    10. 06. 2018, 14:06

    Hallo!

    Ich arbeite gerade an einer Extension, welche eine Liste von Büchern ausgeben soll und nebenbei ein Formular, durch dessen Eingaben dann die Liste gefilter werden kann. (z.B. Nur Bücher von Autor xy etc.).

    Dies möchte ich so lesen, 2 Instanzen meines Plugins auf einer Seite untereinander einzubinden, eine zur Darstellung der Liste und eine für das Suchformular.

    Die Liste wird korrekt angezeigt und auch das Suchformular, jedoch erhalte ich bei Eingabe und Bestätigen der Eingabe in das Suchformular immer den Fehler:

    [code]"The action xy is not allowed by this plugin. Please check TYPO3\CMS\Extbase\Utility\ExtensionUtility::configurePlugin() in your ext_localconf.php."[/code]

    Nach sehr vielem Herumprobieren komme ich dennoch zu keiner Lösung.

    Mein flexform.xml sieht so aus:

    [code]<T3DataStructure>
    <sheets>
    <sDEF>
    <ROOT>
    <TCEforms>
    <sheetTitle>Function</sheetTitle>
    </TCEforms>
    <type>array</type>
    <el>
    <switchableControllerActions>
    <TCEforms>
    <label>Select function</label>
    <onChange>reload</onChange>
    <config>
    <type>select</type>
    <items>
    <numIndex index="0">
    <numIndex index="0">Book list</numIndex>
    <numIndex index="1">Book->list</numIndex>
    </numIndex>
    <numIndex index="1">
    <numIndex index="0">Book search</numIndex>
    <numIndex index="1">Book->search</numIndex>
    </numIndex>
    <numIndex index="2">
    <numIndex index="0">Book detail</numIndex>
    <numIndex index="1">Book->show</numIndex>
    </numIndex>
    </items>
    </config>
    </TCEforms>
    </switchableControllerActions>
    </el>
    </ROOT>
    </sDEF>
    <booksearchform>
    <ROOT>
    <TCEforms>
    <sheetTitle>Additional configuration</sheetTitle>
    <displayCond><![CDATA[FIELD:sDEF.switchableControllerActions:=:Book->search]]></displayCond>
    </TCEforms>
    <type>array</type>
    <el>
    <settings.listPid>
    <TCEforms>
    <label>Search page</label>
    <config>
    <type>group</type>
    <internal_type>db</internal_type>
    <allowed>pages</allowed>
    <size>1</size>
    <maxitems>1</maxitems>
    <minitems>0</minitems>
    <show_thumbs>1</show_thumbs>
    <wizards>
    <suggest>
    <type>suggest</type>
    </suggest>
    </wizards>
    </config>
    </TCEforms>
    </settings.listPid>
    </el>
    </ROOT>
    </booksearchform>
    <booklist>
    <ROOT>
    <TCEforms>
    <sheetTitle>Additional configuration</sheetTitle>
    <displayCond><![CDATA[FIELD:sDEF.switchableControllerActions:=:Book->list]]></displayCond>
    </TCEforms>
    <type>array</type>
    <el>
    <settings.detailPid>
    <TCEforms>
    <label>Detail page</label>
    <config>
    <type>group</type>
    <internal_type>db</internal_type>
    <allowed>pages</allowed>
    <size>1</size>
    <maxitems>1</maxitems>
    <minitems>0</minitems>
    <show_thumbs>1</show_thumbs>
    <wizards>
    <suggest>
    <type>suggest</type>
    </suggest>
    </wizards>
    </config>
    </TCEforms>
    </settings.detailPid>
    <settings.searchPid>
    <TCEforms>
    <label>Search page</label>
    <config>
    <type>group</type>
    <internal_type>db</internal_type>
    <allowed>pages</allowed>
    <size>1</size>
    <maxitems>1</maxitems>
    <minitems>0</minitems>
    <show_thumbs>1</show_thumbs>
    <wizards>
    <suggest>
    <type>suggest</type>
    </suggest>
    </wizards>
    </config>
    </TCEforms>
    </settings.searchPid>
    </el>
    </ROOT>
    </booklist>
    <bookdetail>
    <ROOT>
    <TCEforms>
    <sheetTitle>Additional configuration</sheetTitle>
    <displayCond><![CDATA[FIELD:sDEF.switchableControllerActions:=:Book->show]]></displayCond>
    </TCEforms>
    <type>array</type>
    <el>
    <settings.listPid>
    <TCEforms>
    <label>Detail page</label>
    <config>
    <type>group</type>
    <internal_type>db</internal_type>
    <allowed>pages</allowed>
    <size>1</size>
    <maxitems>1</maxitems>
    <minitems>0</minitems>
    <show_thumbs>1</show_thumbs>
    <wizards>
    <suggest>
    <type>suggest</type>
    </suggest>
    </wizards>
    </config>
    </TCEforms>
    </settings.listPid>
    </el>
    </ROOT>
    </bookdetail>

    </sheets>
    </T3DataStructure>
    [/code]

    ext_tables.php

    [code]<?php
    if (!defined('TYPO3_MODE')) {
    die('Access denied.');
    }

    \TYPO3\CMS\Extbase\Utility\ExtensionUtility::registerPlugin(
    'MyVendor.' . $_EXTKEY,
    'Book',
    'Book'
    );

    $pluginSignature = str_replace('_','',$_EXTKEY) . '_books';
    $GLOBALS['TCA']['tt_content']['types']['list']['subtypes_addlist'][$pluginSignature] = 'pi_flexform';
    \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addPiFlexFormValue($pluginSignature, 'FILE:EXT:' . $_EXTKEY . '/Configuration/FlexForms/flexform_books.xml');

    \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addStaticFile($_EXTKEY, 'Configuration/TypoScript', 'Books');

    \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addLLrefForTCAdescr('tx_books_domain_model_book', 'EXT:book/Resources/Private/Language/locallang_csh_tx_book_domain_model_book.xlf');
    \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::allowTableOnStandardPages('tx_books_domain_model_book');
    [/code]

    ext_localconf.php

    [code]<?php
    if (!defined('TYPO3_MODE')) {
    die('Access denied.');
    }

    \TYPO3\CMS\Extbase\Utility\ExtensionUtility::configurePlugin(
    'MyVendor.' . $_EXTKEY,
    'Book',
    array(
    'Book' => 'list, search',
    ),
    // non-cacheable actions
    array(
    'Book' => 'list, search',
    )
    );
    [/code]

    Für Lösungsvorschläge bin ich sehr dankbar, da stundenlanges Ausprobieren sonstiger Lösungen von Leuten, die auf die gleiche Fehlermeldung gestoßen sind, leider kein Lösung bei mir brachten.


  • 1
  • Teisinger Teisinger
    Jedi-Meister
    0 x
    441 Beiträge
    29 Hilfreiche Beiträge
    11. 06. 2018, 21:49

    zum einen glaube ich solltest du bei non-cacheable actions die list löschen, die darf ja ruhig gecached werden oder nicht? :)

    Zum anderen, Flexforms sind sehr sehr ekelhaft mit cache... also mal wirklich alles löschen ausm typo3temp verzeichnis...

    Und rufst du denn in deinem Suchformluar auch die action search auf?

    https://github.com/groundstack-org

  • 1