bonjour,

j'ai un formulaire ''nouveau membres'' qui a un champs code client.

si l'utilisateur n'a pas de code client il coche le checkbox et remplie les autre champs et valide les formulaire.

Donc je dois annuel le required du validateur ou détruire la variable.

voici le fichier lib/form User.php

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
 
 
 
  public function configure()
  {
$this->widgetSchema['reponses'] = new sfWidgetFormChoice(array(
        'multiple' => true,
      	'expanded' => true,
        'choices' => array('1' => 'Vous n\'avez pas de code client')
      ));
 
 
  }
le ficher action:

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
 public function executeFormWidget(dmWebRequest $request)
  {
    $form = new DmUserForm();
 
    if ($request->isMethod('post') && $request->hasParameter($form->getName()))
    {
 
      $data = $request->getParameter($form->getName());
 
      if($form->isCaptchaEnabled())
      {
        $data = array_merge($data, array('captcha' => array(
          'recaptcha_challenge_field' => $request->getParameter('recaptcha_challenge_field'),
          'recaptcha_response_field'  => $request->getParameter('recaptcha_response_field'),
        )));
      }
   if ($form->getValue('reponce') == 1 ) {
            unset ($this['code_client']);
 
        }
      $form->bind($data, $request->getFiles($form->getName()));
 
      if ($form->isValid())
      {
        $user = $form->save();
 
        $this->getUser()->signin($user);
 
        $this->redirectRegisteredUser($request);
      }
    }
 
    $this->forms['DmUser'] = $form;
  }
et sa marche pas