示例#1
0
 public function performaddAction()
 {
     $typeSelected = $this->params()->fromPost('TIPO');
     $request = $this->getRequest();
     $form = new UserForm();
     if ($request->isPost()) {
         $user = new GUser();
         $subUser = UserFactory::getUser($typeSelected);
         //$form->setInputFilter($user->getInputFilter());
         //$form->setInputFilter($subUser->getInputFilter());
         $form->setInputFilter($user->getInputFilter());
         $form->setData($request->getPost());
         if ($form->isValid()) {
             $user->exchangeArray($form->getData());
             $subUser->exchangeArray($request->getPost('subForm'));
             // Hash password
             $this->hashUserPassword($user);
             // inserto usuario en BD
             $this->startTransactionAddUser($user, $subUser, true);
             // Redirect to list of users
             $this->addInfoMessage(GeneralMessages::USER_ADD_OK);
             return $this->redirect()->toRoute('myaccount');
         } else {
             $this->addErrorMessage(GeneralMessages::FORM_ERROR);
             return $this->redirect()->toRoute('user', array('action' => 'add'));
         }
     }
 }