Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on Jul 29th, 2012  |  syntax: None  |  size: 2.94 KB  |  hits: 13  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. class articleActions extends autoArticleActions
  2. {
  3.        
  4.         /* protected function processForm(sfWebRequest $request, sfForm $form)
  5.         {
  6.        $form->bind($request->getParameter($form->getName()), $request->getFiles($form->getName()));
  7.            $form->save();
  8.         } */
  9.         protected function processForm(sfWebRequest $request, sfForm $form)
  10.   {
  11.     $form->bind($request->getParameter($form->getName()), $request->getFiles($form->getName()));
  12.     //echo $request->getPostParameter('article_admin_form[type]');
  13.    
  14.     if ($form->isValid())
  15.     {
  16.        
  17.     if($request->getPostParameter('article_admin_form[type]') == 1 )
  18.     {
  19.       $var = ($request->getPostParameter('article_admin_form[url]'));
  20.       $var ='';
  21.       $var2 = ($request->getPostParameter('article_admin_form[mp3]'));
  22.       $var2 ='';
  23.     }
  24.       $notice = $form->getObject()->isNew() ? 'The item was created successfully.' : 'The item was updated successfully.';
  25.       try {
  26.         //die();
  27.         $article = $form->save();
  28.        
  29.         if($request->getPostParameter('article_admin_form[visible_top10]') == 'on')
  30.             {
  31.                         $top10 = new Top10();
  32.                         $top10->setArticle($this->form->getObject()->id);
  33.                         $top10->setNom($request->getPostParameter('article_admin_form[title]'));
  34.                         $top10->save();
  35.             }
  36.            
  37.       } catch (Doctrine_Validator_Exception $e) {
  38.  
  39.         $errorStack = $form->getObject()->getErrorStack();
  40.  
  41.         $message = get_class($form->getObject()) . ' has ' . count($errorStack) . " field" . (count($errorStack) > 1 ?  's' : null) . " with validation errors: ";
  42.         foreach ($errorStack as $field => $errors) {
  43.             $message .= "$field (" . implode(", ", $errors) . "), ";
  44.         }
  45.         $message = trim($message, ', ');
  46.  
  47.         $this->getUser()->setFlash('error', $message);
  48.         return sfView::SUCCESS;
  49.       }
  50.  
  51.       $this->dispatcher->notify(new sfEvent($this, 'admin.save_object', array('object' => $article)));
  52.  
  53.       if ($request->hasParameter('_save_and_add'))
  54.       {
  55.         $this->getUser()->setFlash('notice', $notice.' You can add another one below.');
  56.  
  57.         $redirection = $this->getRouteArrayForAction('new');
  58.       }
  59.       elseif ($request->hasParameter('_save_and_list'))
  60.       {
  61.         $this->getUser()->setFlash('notice', $notice);
  62.  
  63.         $redirection = $this->getRouteArrayForAction('index');
  64.       }
  65.       elseif ($request->hasParameter('_save_and_next'))
  66.       {
  67.         $this->getUser()->setFlash('notice', $notice);
  68.         $redirection = $this->getRouteArrayForAction('edit', dmArray::get($article->getPrevNextRecords($this->buildQuery()), 'next', $this->form->getObject()));
  69.       }
  70.       else
  71.       {
  72.         $this->getUser()->setFlash('notice', $notice);
  73.  
  74.         $redirection = $this->getRouteArrayForAction('edit', $article);
  75.       }
  76.  
  77.       $this->redirect($redirection);
  78.     }
  79.     else
  80.     {
  81.       $this->getUser()->setFlash('error', 'The item has not been saved due to some errors.', false);
  82.     }
  83.   }