aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/Wallabag/CoreBundle/Form/Type/ConfigType.php
diff options
context:
space:
mode:
authorJeremy <jeremy.benoist@gmail.com>2015-02-23 22:55:06 +0100
committerJeremy <jeremy.benoist@gmail.com>2015-03-01 10:49:16 +0100
commit32da2a70ef278bd42f66eb82c3fbf1905a417b87 (patch)
tree587ef3bae1f4881047eb1ceb0c005e7a8287bb71 /src/Wallabag/CoreBundle/Form/Type/ConfigType.php
parentfca3c757233940cbe4c431e3e05fe74893225fe0 (diff)
downloadwallabag-32da2a70ef278bd42f66eb82c3fbf1905a417b87.tar.gz
wallabag-32da2a70ef278bd42f66eb82c3fbf1905a417b87.tar.zst
wallabag-32da2a70ef278bd42f66eb82c3fbf1905a417b87.zip
Add LiipThemeBundle
Re-defined the config / user relation to be OneToOne bidirectionnal. ConfigType is now a service so I can inject the list of available themes that are also used by LiipThemeBundle Force sqlite for test In case of people use a different driver in parameter.yml (yes I do :))
Diffstat (limited to 'src/Wallabag/CoreBundle/Form/Type/ConfigType.php')
-rw-r--r--src/Wallabag/CoreBundle/Form/Type/ConfigType.php25
1 files changed, 14 insertions, 11 deletions
diff --git a/src/Wallabag/CoreBundle/Form/Type/ConfigType.php b/src/Wallabag/CoreBundle/Form/Type/ConfigType.php
index a1e0ce47..0c8706e2 100644
--- a/src/Wallabag/CoreBundle/Form/Type/ConfigType.php
+++ b/src/Wallabag/CoreBundle/Form/Type/ConfigType.php
@@ -7,20 +7,23 @@ use Symfony\Component\OptionsResolver\OptionsResolverInterface;
7 7
8class ConfigType extends AbstractType 8class ConfigType extends AbstractType
9{ 9{
10 private $themes = array();
11
12 /**
13 * @param array $themes Themes come from the LiipThemeBundle (liip_theme.themes)
14 */
15 public function __construct($themes)
16 {
17 $this->themes = array_combine(
18 $themes,
19 array_map(function ($s) { return ucwords(strtolower(str_replace('-', ' ', $s))); }, $themes)
20 );
21 }
22
10 public function buildForm(FormBuilderInterface $builder, array $options) 23 public function buildForm(FormBuilderInterface $builder, array $options)
11 { 24 {
12 $builder 25 $builder
13 ->add('theme', 'choice', array( 26 ->add('theme', 'choice', array('choices' => $this->themes))
14 'choices' => array(
15 'baggy' => 'Baggy',
16 'courgette' => 'Courgette',
17 'dark' => 'Dark',
18 'default' => 'Default',
19 'dmagenta' => 'Dmagenta',
20 'solarized' => 'Solarized',
21 'solarized_dark' => 'Solarized Dark',
22 ),
23 ))
24 ->add('items_per_page', 'text') 27 ->add('items_per_page', 'text')
25 ->add('language') 28 ->add('language')
26 ->add('save', 'submit') 29 ->add('save', 'submit')