]> git.immae.eu Git - github/wallabag/wallabag.git/blob - src/Wallabag/CoreBundle/DependencyInjection/Configuration.php
7ae73371c246a69e227e7e26e067f63ca9be83d2
[github/wallabag/wallabag.git] / src / Wallabag / CoreBundle / DependencyInjection / Configuration.php
1 <?php
2
3 namespace Wallabag\CoreBundle\DependencyInjection;
4
5 use Symfony\Component\Config\Definition\Builder\TreeBuilder;
6 use Symfony\Component\Config\Definition\ConfigurationInterface;
7
8 class Configuration implements ConfigurationInterface
9 {
10 public function getConfigTreeBuilder()
11 {
12 $treeBuilder = new TreeBuilder();
13 $rootNode = $treeBuilder->root('wallabag_core');
14
15 $rootNode
16 ->children()
17 ->arrayNode('languages')
18 ->prototype('scalar')->end()
19 ->end()
20 ->integerNode('items_on_page')
21 ->defaultValue(12)
22 ->end()
23 ->scalarNode('theme')
24 ->defaultValue('material')
25 ->end()
26 ->scalarNode('language')
27 ->defaultValue('en')
28 ->end()
29 ->integerNode('rss_limit')
30 ->defaultValue(50)
31 ->end()
32 ->integerNode('reading_speed')
33 ->defaultValue(200)
34 ->end()
35 ->scalarNode('version')
36 ->end()
37 ->scalarNode('paypal_url')
38 ->end()
39 ->integerNode('cache_lifetime')
40 ->defaultValue(10)
41 ->end()
42 ->scalarNode('fetching_error_message')
43 ->end()
44 ->scalarNode('fetching_error_message_title')
45 ->end()
46 ->scalarNode('action_mark_as_read')
47 ->defaultValue(1)
48 ->end()
49 ->scalarNode('list_mode')
50 ->defaultValue(1)
51 ->end()
52 ->scalarNode('api_limit_mass_actions')
53 ->defaultValue(10)
54 ->end()
55 ->arrayNode('default_internal_settings')
56 ->prototype('array')
57 ->children()
58 ->scalarNode('name')->end()
59 ->scalarNode('value')->end()
60 ->enumNode('section')
61 ->values(['entry', 'misc', 'api', 'analytics', 'export', 'import'])
62 ->end()
63 ->end()
64 ->end()
65 ->end()
66 ->scalarNode('encryption_key_path')
67 ->end()
68 ->end()
69 ;
70
71 return $treeBuilder;
72 }
73 }