[TYPO3-german] Flexform Select itemsProcFunc mit Extbase inkl. ConfigurationManager, Repository

David Gurk dgurk at medienwerft.de
Fri Oct 19 16:26:18 CEST 2012


Was genau dieser Code bringen soll, ist mir nicht ganz klar. Ändern tut sich so auf jeden Fall nichts.

Ich habe mittlerweile die Klasse in /Classes/Controller/AddItemsToFlexformController.php verschoben und in "Tx_Example_Controller_AddItemsToFlexformController" umbenannt.
In der ext_localconf.php dann folgendes angepasst:
<code>
Tx_Extbase_Utility_Extension::configurePlugin(
	$_EXTKEY,
	'Listteaser',
	array(
		'Teaser' => 'list',
		'AddItemsToFlexform' => 'main',
	),
	// non-cacheable actions
	array(
		'Teaser' => '',
		'AddItemsToFlexform' => 'main',
	)
);
</code>

Danach bleibt die StoragePid leider weiterhin leer.

Des Weiteren habe ich noch folgendes versucht:
<code>
$frameworkConfiguration = $this->configurationManager->getConfiguration(Tx_Extbase_Configuration_ConfigurationManagerInterface::CONFIGURATION_TYPE_FULL_TYPOSCRIPT, 'example', 'Listteaser');
</code>

Auch hier blieb die StoragePid leider leer.

Noch ein Versuch:
<code>
$frameworkConfiguration = $this->configurationManager->getConfiguration(Tx_Extbase_Configuration_ConfigurationManagerInterface::CONFIGURATION_TYPE_FULL_TYPOSCRIPT);
$storagePid = $frameworkConfiguration['plugin.']['tx_extample.']['persistence.']['storagePid'];
</code>

Nun bekomme ich eine StoragePid, ALLERDINGS immer nur die Pid vom ersten Bereich. Und das obwohl laut TSObjectBrowser auf dieser Seite die richtige StoragePid (vom zweiten Bereich) definiert ist. Ich kann mir das nicht wirklich erklären...

-----Ursprüngliche Nachricht-----
Von: typo3-german-bounces at lists.typo3.org [mailto:typo3-german-bounces at lists.typo3.org] Im Auftrag von conPassione gmbh
Gesendet: Freitag, 19. Oktober 2012 16:01
An: typo3-german at lists.typo3.org
Betreff: Re: [TYPO3-german] Flexform Select itemsProcFunc mit Extbase inkl. ConfigurationManager, Repository

Ich verwende diesen Code:

================================
$configuration =
$this->configurationManager->getConfiguration(Tx_Extbase_Configuration_ConfigurationManagerInterface::CONFIGURATION_TYPE_FRAMEWORK);
        $changed = false;
        if (empty($configuration['persistence']['storagePid'])){
            $configuration['persistence']['storagePid'] = $GLOBALS['TSFE']->id;  
            $changed = true;
        }
        if ($changed) {

$this->configurationManager->setConfiguration($configuration);
        }
================================

dann kann ich über $configuration auf alle Settings zugreifen, insbesondere auch auf die storagePid.

Gruss Renzo
--
_____________________________
Renzo Bauen
+41 79 330 10 11
conPassione gmbh 


Am Freitag, den 19.10.2012, 12:48 +0000 schrieb David Gurk: 

> Also ich bin nun etwas weitergekommen:
> 
> <code>
> 
> class Tx_Example_Helper_AddItemsToFlexform extends 
> Tx_Extbase_MVC_Controller_ActionController {
> 
> 
> 
>     /**
> 
>      * @var Tx_Extbase_Configuration_ConfigurationManagerInterface
> 
>      */
> 
>     protected $configurationManager;
> 
> 
> 
>     function mainAction($params, $conf) {
> 
>         $objectManager = 
> t3lib_div::makeInstance('Tx_Extbase_Object_ObjectManager');
> 
>         $this->configurationManager = 
> $objectManager->get('Tx_Extbase_Configuration_ConfigurationManagerInte
> rface');
> 
> 
> 
>         $frameworkConfiguration = 
> $this->configurationManager->getConfiguration(Tx_Extbase_Configuration
> _ConfigurationManagerInterface::CONFIGURATION_TYPE_FRAMEWORK);
> 
>         t3lib_div::debug($frameworkConfiguration);
> 
> 
> 
>         $storagePid = 
> $frameworkConfiguration['persistence']['storagePid'];
> 
> //        t3lib_div::debug($storagePid);
> 
> //        $this->addAllTeaser($params, $conf, $storagePid);
> 
>     }
> 
> 
> 
> }
> 
> </code>
> 
> 
> 
> So bekomme ich keine Fehlermeldung mehr und sogar eine Rückgabe der "Framework Configuration". Allerdings ist dann "$frameworkConfiguration['persistence']['storagePid']" gleich 0. Also das ist definitiv nicht der Wert von "plugin.tx_example.persistence.storagePid". Da wird anscheinend was anderes erwartet. Nur was?
> 
> 
> 
> -----Ursprüngliche Nachricht-----
> Von: typo3-german-bounces at lists.typo3.org 
> [mailto:typo3-german-bounces at lists.typo3.org] Im Auftrag von David 
> Gurk
> Gesendet: Mittwoch, 17. Oktober 2012 09:26
> An: German TYPO3 Userlist
> Betreff: Re: [TYPO3-german] Flexform Select itemsProcFunc mit Extbase 
> inkl. ConfigurationManager, Repository
> 
> 
> 
> Hi Björn,
> 
> 
> 
> das Problem hierbei ist aber doch, das ich auch weiterhin nicht auf die Konstante " plugin.tx_example.persistence.storagePid" zugreifen kann, oder? Zudem hatte ich mich entschieden die Extension mit Extbase umzusetzen und wollte es dort eigentlich auch bei Extbase belassen.
> 
> 
> _______________________________________________
> TYPO3-german mailing list
> TYPO3-german at lists.typo3.org
> http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german
_______________________________________________
TYPO3-german mailing list
TYPO3-german at lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german


More information about the TYPO3-german mailing list