protected function processForm(sfWebRequest $request, CompanyForm $form) { $form->bind($request->getParameter($form->getName())); if ($form->isValid()) { try { $isNew = $form->isNew(); $company = $form->save(); } catch (Doctrine_Validator_Exception $e) { $this->getUser()->setFlash('error', $e->getMessage()); return sfView::SUCCESS; } $this->getUser()->setFlash('success', $isNew ? 'The item has been created successfully' : 'The item has been updated successfully', true); if ($request->hasParameter('save_and_add')) { $this->redirect('@company_new'); } else { $this->redirect(array('sf_route' => 'company_edit', 'sf_subject' => $company)); } } else { $this->getUser()->setFlash('error', 'Please check the values entered in the form', false); } }