Bonjour,

Je suis face à un problème complètement stupide mais sur lequel je sèche complètement. Lors de l'exécution du script suivant, Symfony m'indique le message suivant : "Parse error: syntax error, unexpected '}' in C:\wamp\www\Symfony\src\Hotels\GestionAnnoncesBundle\Form\ProvinceType.php on line 54". Or, j'ai beau chercher et rererechercher, je ne trouve pas du tout de parenthèse fermante manquante.

Voici mon script :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
<?php   
 
namespace Hotels\GestionAnnoncesBundle\Form;
 
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilder;
 
class ProvinceType extends AbstractType
{
    public function buildForm(FormBuilder $builder, array $options)
    {
        /*$builder
            ->add('nom')
            ->add('departement')
            ->add('pays')
        ;*/
 
        $builder
            ->add('nom')
            ->add('departement');
 
        $factory = $builder->getFormFactory();
 
        $refreshPays = function($form, $departement) use ($factory)
        {
          $form->add($factory->createNamed('entity','pays',null, array(
              'class' => 'Entity:Pays',
              'property' => 'name',
              'label' => 'Pays',
              'query_builder' => function (EntityRepository $repository) use ($pays) 
                                 {
                                      $qb = $repository->createQueryBuilder('departement')
                                                       ->innerJoin('departement.pays', 'pays');
 
                                      if($pays instanceof Pays) 
                                      {                                            
                                          $qb = $qb->where('departement.pays = :pays')
                                                   ->setParameter('pays', $pays); 
                                      }
                                      elseif(is_numeric($province))
                                      {                                            
                                          $qb = $qb->where('departement.pays = :pays_id')
                                                   ->setParameter('pays_id', $pays);
                                      }
                                      else
                                      {
                                          $qb = $qb->where('pays.id = 1');
                                      }
 
                                      return $qb;
                                  }
            )));
         }                      
    }
 
    public function getName()
    {
        return 'hotels_gestionannoncesbundle_provincetype';
    }
}
Quelqu'un aurait une idée car moi, apparemment, je ne dois pas avoir les yeux en face des trous!

Merci d'avance pour toute aide salvatrice!