3 namespace Rapsys\AirBundle\DependencyInjection
;
5 use Symfony\Component\Config\Definition\Builder\TreeBuilder
;
6 use Symfony\Component\Config\Definition\ConfigurationInterface
;
9 * This is the class that validates and merges configuration from your app/config files.
11 * To learn more see {@link http://symfony.com/doc/current/cookbook/bundles/configuration.html}
13 class Configuration
implements ConfigurationInterface
{
17 public function getConfigTreeBuilder() {
18 $treeBuilder = new TreeBuilder();
20 // Here you should define the parameters that are allowed to
21 // configure your bundle. See the documentation linked above for
22 // more information on that topic.
25 'logo' => 'bundles/rapsysair/png/logo.png',
26 'title' => 'Open Air',
27 'contact_name' => 'Raphaël Gertz',
28 'contact_mail' => 'airlibre@rapsys.eu',
31 //Here we define the parameters that are allowed to configure the bundle.
32 //TODO: see https://github.com/symfony/symfony/blob/master/src/Symfony/Bundle/FrameworkBundle/DependencyInjection/Configuration.php for default value and description
33 //TODO: see http://symfony.com/doc/current/components/config/definition.html
34 //XXX: use bin/console config:dump-reference to dump class infos
36 //Here we define the parameters that are allowed to configure the bundle.
40 ->addDefaultsIfNotSet()
42 ->arrayNode('rapsys_air')
43 ->addDefaultsIfNotSet()
45 ->scalarNode('logo')->defaultValue($defaults['logo'])->treatNullLike($defaults['logo'])->isRequired()->end()
46 ->scalarNode('title')->defaultValue($defaults['title'])->treatNullLike($defaults['title'])->isRequired()->end()
47 ->scalarNode('contact_name')->defaultValue($defaults['contact_name'])->treatNullLike($defaults['contact_name'])->isRequired()->end()
48 ->scalarNode('contact_mail')->defaultValue($defaults['contact_mail'])->treatNullLike($defaults['contact_mail'])->isRequired()->end()