aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/Wallabag/CoreBundle/Filter/EntryFilterType.php
diff options
context:
space:
mode:
Diffstat (limited to 'src/Wallabag/CoreBundle/Filter/EntryFilterType.php')
-rw-r--r--src/Wallabag/CoreBundle/Filter/EntryFilterType.php23
1 files changed, 22 insertions, 1 deletions
diff --git a/src/Wallabag/CoreBundle/Filter/EntryFilterType.php b/src/Wallabag/CoreBundle/Filter/EntryFilterType.php
index 024486e6..f40c1c2d 100644
--- a/src/Wallabag/CoreBundle/Filter/EntryFilterType.php
+++ b/src/Wallabag/CoreBundle/Filter/EntryFilterType.php
@@ -6,9 +6,26 @@ use Symfony\Component\Form\AbstractType;
6use Symfony\Component\Form\FormBuilderInterface; 6use Symfony\Component\Form\FormBuilderInterface;
7use Symfony\Component\OptionsResolver\OptionsResolver; 7use Symfony\Component\OptionsResolver\OptionsResolver;
8use Lexik\Bundle\FormFilterBundle\Filter\Query\QueryInterface; 8use Lexik\Bundle\FormFilterBundle\Filter\Query\QueryInterface;
9use Doctrine\ORM\EntityRepository;
10use Wallabag\CoreBundle\Entity\User;
9 11
10class EntryFilterType extends AbstractType 12class EntryFilterType extends AbstractType
11{ 13{
14 private $user;
15 private $repository;
16
17 /**
18 * Repository & user are used to get a list of language entries for this user
19 *
20 * @param EntityRepository $entryRepository
21 * @param User $user
22 */
23 public function __construct(EntityRepository $entryRepository, User $user)
24 {
25 $this->repository = $entryRepository;
26 $this->user = $user;
27 }
28
12 public function buildForm(FormBuilderInterface $builder, array $options) 29 public function buildForm(FormBuilderInterface $builder, array $options)
13 { 30 {
14 $builder 31 $builder
@@ -53,7 +70,11 @@ class EntryFilterType extends AbstractType
53 70
54 return $filterQuery->createCondition($expression); 71 return $filterQuery->createCondition($expression);
55 }, 72 },
56 )); 73 ))
74 ->add('language', 'filter_choice', array(
75 'choices' => $this->repository->findDistinctLanguageByUser($this->user->getId()),
76 ))
77 ;
57 } 78 }
58 79
59 public function getName() 80 public function getName()