本文整理汇总了PHP中FluidTYPO3\Flux\Core::getRegisteredFlexFormProviders方法的典型用法代码示例。如果您正苦于以下问题:PHP Core::getRegisteredFlexFormProviders方法的具体用法?PHP Core::getRegisteredFlexFormProviders怎么用?PHP Core::getRegisteredFlexFormProviders使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类FluidTYPO3\Flux\Core
的用法示例。
在下文中一共展示了Core::getRegisteredFlexFormProviders方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: setup
/**
* Teardown
*/
public function setup()
{
$providers = Core::getRegisteredFlexFormProviders();
if (TRUE === in_array('FluidTYPO3\\Flux\\Service\\FluxService', $providers)) {
Core::unregisterConfigurationProvider('FluidTYPO3\\Flux\\Service\\FluxService');
}
}
示例2: canUnregisterNotCurrentlyRegisteredProviders
/**
* @test
*/
public function canUnregisterNotCurrentlyRegisteredProviders()
{
$fakeClass = 'MyFakeClass';
Core::unregisterConfigurationProvider($fakeClass);
core::registerConfigurationProvider($fakeClass);
$this->assertNotContains($fakeClass, Core::getRegisteredFlexFormProviders());
}
示例3: resolveConfigurationProviders
/**
* Resolves a ConfigurationProvider which can provide a working FlexForm
* configuration based on the given parameters.
*
* @param string $table
* @param string $fieldName
* @param array $row
* @param string $extensionKey
* @throws \RuntimeException
* @return ProviderInterface[]
*/
public function resolveConfigurationProviders($table, $fieldName, array $row = NULL, $extensionKey = NULL)
{
$row = FALSE === is_array($row) ? array() : $row;
$providers = Core::getRegisteredFlexFormProviders();
$typoScriptConfigurationProviders = $this->loadTypoScriptConfigurationProviderInstances();
$providers = array_merge($providers, $typoScriptConfigurationProviders);
$prioritizedProviders = array();
foreach ($providers as $providerClassNameOrInstance) {
if (TRUE === is_object($providerClassNameOrInstance)) {
$provider =& $providerClassNameOrInstance;
} else {
$provider = $this->objectManager->get($providerClassNameOrInstance);
}
if (FALSE === in_array('FluidTYPO3\\Flux\\Provider\\ProviderInterface', class_implements($providerClassNameOrInstance))) {
throw new \RuntimeException(is_object($providerClassNameOrInstance) ? get_class($providerClassNameOrInstance) : $providerClassNameOrInstance . ' must implement ProviderInterfaces from Flux/Provider', 1327173536);
}
if (TRUE === $provider->trigger($row, $table, $fieldName, $extensionKey)) {
$priority = $provider->getPriority($row);
if (FALSE === is_array($prioritizedProviders[$priority])) {
$prioritizedProviders[$priority] = array();
}
$prioritizedProviders[$priority][] = $provider;
}
}
ksort($prioritizedProviders);
$providersToReturn = array();
foreach ($prioritizedProviders as $providerSet) {
foreach ($providerSet as $provider) {
array_push($providersToReturn, $provider);
}
}
return $providersToReturn;
}
示例4: loadCoreRegisteredProviders
/**
* @return array
*/
protected function loadCoreRegisteredProviders()
{
return Core::getRegisteredFlexFormProviders();
}