vendor/symfony-cmf/core-bundle/src/DependencyInjection/Configuration.php line 24

Open in your IDE?
  1. <?php
  2. /*
  3.  * This file is part of the Symfony CMF package.
  4.  *
  5.  * (c) 2011-2017 Symfony CMF
  6.  *
  7.  * For the full copyright and license information, please view the LICENSE
  8.  * file that was distributed with this source code.
  9.  */
  10. namespace Symfony\Cmf\Bundle\CoreBundle\DependencyInjection;
  11. use Symfony\Component\Config\Definition\Builder\TreeBuilder;
  12. use Symfony\Component\Config\Definition\ConfigurationInterface;
  13. class Configuration implements ConfigurationInterface
  14. {
  15.     /**
  16.      * {@inheritdoc}
  17.      */
  18.     public function getConfigTreeBuilder()
  19.     {
  20.         $treeBuilder = new TreeBuilder();
  21.         $rootNode $treeBuilder->root('cmf_core');
  22.         $rootNode
  23.             ->children()
  24.                 ->arrayNode('persistence')
  25.                     ->addDefaultsIfNotSet()
  26.                     ->children()
  27.                         ->arrayNode('phpcr')
  28.                             ->addDefaultsIfNotSet()
  29.                             ->canBeEnabled()
  30.                             ->children()
  31.                                 ->scalarNode('basepath')->defaultValue('/cms')->end()
  32.                                 ->scalarNode('manager_registry')->defaultValue('doctrine_phpcr')->end()
  33.                                 ->scalarNode('manager_name')->defaultNull()->end()
  34.                                 ->scalarNode('translation_strategy')->defaultNull()->end()
  35.                             ->end()
  36.                         ->end() // phpcr
  37.                         ->arrayNode('orm')
  38.                             ->addDefaultsIfNotSet()
  39.                             ->canBeEnabled()
  40.                             ->children()
  41.                                 ->scalarNode('manager_name')->defaultNull()->end()
  42.                             ->end()
  43.                         ->end() // orm
  44.                     ->end()
  45.                 ->end()
  46.                 ->arrayNode('multilang')
  47.                     ->fixXmlConfig('locale')
  48.                     ->children()
  49.                         ->arrayNode('locales')
  50.                             ->isRequired()
  51.                             ->requiresAtLeastOneElement()
  52.                             ->prototype('scalar')->end()
  53.                         ->end()
  54.                     ->end()
  55.                 ->end()
  56.                 ->arrayNode('publish_workflow')
  57.                     ->addDefaultsIfNotSet()
  58.                     ->treatFalseLike(['enabled' => false])
  59.                     ->treatTrueLike(['enabled' => true])
  60.                     ->treatNullLike(['enabled' => 'auto'])
  61.                     ->beforeNormalization()
  62.                         ->ifArray()
  63.                         ->then(function ($v) {
  64.                             $v['enabled'] = isset($v['enabled']) ? $v['enabled'] : true;
  65.                             return $v;
  66.                         })
  67.                     ->end()
  68.                     ->children()
  69.                         ->enumNode('enabled')
  70.                             ->values([truefalse'auto'])
  71.                             ->defaultValue('auto')
  72.                         ->end()
  73.                         ->scalarNode('checker_service')->defaultValue('cmf_core.publish_workflow.checker.default')->end()
  74.                         ->scalarNode('view_non_published_role')->defaultValue('ROLE_CAN_VIEW_NON_PUBLISHED')->end()
  75.                         ->enumNode('request_listener')
  76.                              ->values([truefalse'auto'])
  77.                             ->defaultValue('auto')
  78.                         ->end()
  79.                     ->end()
  80.                 ->end()
  81.             ->end()
  82.         ;
  83.         return $treeBuilder;
  84.     }
  85. }