Jeremy tu as eu le temps de regarder ou pas du tout ?

Cyril FLIELLER



2011/6/2 goofy <goofy.m...@gmail.com>

> Moi je fait ca si ca peut aider :
>
> class BaseForm extends sfFormSymfony
> {
>
>  /**
>  * Executes HandleError action and format to JSON
>  *
>  */
>
>  public function getJsonError()
>  {
>    if($this->hasGlobalErrors())
>    {
>      $output['global_errors'] = $this->renderGlobalErrors();
>    }
>    elseif($this->hasErrors())
>    {
>
>      foreach($this->getErrorSchema()->getErrors() as $name => $error)
>      {
>        if($error instanceof sfValidatorErrorSchema)
>        {
>          foreach($error->getErrors() as $subname => $suberror)
>          {
>            $tmp_arr[ $this->getName() . '[' . $name . ']' . '[' .
> $subname . ']'] = $suberror->getMessage();
>          }
>        }
>        else
>        {
>          $tmp_arr[$this->getName() . '[' . $name . ']'] = $error-
> >getMessage();
>        }
>      }
>
>      $output['errors'] = $tmp_arr;
>    }
>
>    return $output;
>  }
> }
>
>
> /**
>  * Executes Submit Form action
>  *
>  * @param sfRequest $request A request object
>  */
>
>  public function executeSubmitform(sfRequest $request)
>  {
>    $this->forward404Unless($request->isMethod('post'));
>    $this->getResponse()->setContentType('application/json;
> charset=utf-8');
>    $output['success'] = false;
>
>    $seo_website_post = $request->getParameter('seo_website');
>
>    if($seo_website_post['id'])
>    {
>      $seo_website = Doctrine::getTable('SeoWebsite')-
> >find($seo_website_post['id']);
>      $this->form = new SeoWebsiteForm($seo_website);
>    }
>    else
>    {
>      $this->form = new SeoWebsiteForm();
>    }
>
>    $this->form->bind($seo_website_post);
>
>    if ($this->form->isValid())
>    {
>      $seo_website = $this->form->save();
>      $output['success'] = true;
>    }
>    else
>    {
>      $output = array_merge($output, $this->form->getJsonError());
>    }
>
>    $this->renderText(json_encode($output));
>    return sfView::NONE;
>  }
>
> --
> Vous recevez ce message, car vous êtes abonné au groupe Google
> Groupes Symfony-fr.
> Pour envoyer un message à ce groupe, adressez un e-mail à
> symfony-fr@googlegroups.com.
> Pour vous désabonner de ce groupe, envoyez un e-mail à l'adresse
> symfony-fr+unsubscr...@googlegroups.com.
> Pour plus d'options, consultez la page de ce groupe :
> http://groups.google.com/group/symfony-fr?hl=fr
>
>

-- 
Vous recevez ce message, car vous êtes abonné au groupe Google 
Groupes Symfony-fr.
Pour envoyer un message à ce groupe, adressez un e-mail 
à symfony-fr@googlegroups.com.
Pour vous désabonner de ce groupe, envoyez un e-mail à l'adresse 
symfony-fr+unsubscr...@googlegroups.com.
Pour plus d'options, consultez la page de ce groupe : 
http://groups.google.com/group/symfony-fr?hl=fr

Répondre à