コード例 #1
0
 public function signUpAction()
 {
     $form = new Form_Usuario();
     $form->removeElement('saldo');
     $form->removeElement('energia');
     $this->view->form = $form;
     if ($this->getRequest()->isPost()) {
         $formData = $this->getRequest()->getPost();
         if ($form->isValid($formData)) {
             $nome = $form->getValue('nome');
             $email = $form->getValue('email');
             $senha = $form->getValue('senha');
             $usuario = new Entity\Usuario();
             $usuario->setNome($nome);
             $usuario->setEnergia(100);
             $usuario->setEnergiaMaxima(100);
             $usuario->setEmail($email);
             $usuario->setSenha($senha);
             $this->_em->persist($usuario);
             $this->_em->flush();
             $this->_helper->FlashMessenger(array('success' => 'Usuário salvo com sucesso.'));
             $this->loginCheck($email, $senha);
             return $this->_helper->redirector('index', 'index', 'default');
         } else {
             $form->populate($formData);
             return $this->forward('index');
         }
     }
 }
コード例 #2
0
 public function editAction()
 {
     $form = new Form_Usuario();
     $form->getElement('senha')->removeValidator('NotEmpty');
     $form->submit->setLabel('Edit');
     $this->view->form = $form;
     if ($this->getRequest()->isPost()) {
         $formData = $this->getRequest()->getPost();
         if ($form->isValid($formData)) {
             $id = (int) $form->getValue('id');
             $usuario = $this->_em->find('Application\\Entity\\Usuario', $id);
             $usuario->setNome($form->getValue('nome'));
             $usuario->setEnergia($form->getValue('energia'));
             $usuario->setEnergiaMaxima($form->getValue('energia'));
             $usuario->setSaldo($form->getValue('saldo'));
             $usuario->setEmail($form->getValue('email'));
             $senha = $form->getValue('senha');
             if (!empty($senha)) {
                 $usuario->setSenha($senha);
             }
             $this->_em->persist($usuario);
             $this->_em->flush();
             $this->_helper->FlashMessenger->addMessage(array('success' => 'Usuario editado com sucesso.'));
             return $this->_helper->redirector('show', 'usuarios', 'admin', array('id' => $usuario->getId()));
         } else {
             $this->_helper->FlashMessenger->addMessage(array('error' => 'Ocorreu um erro na edição do usuario.'));
             $form->populate($formData);
         }
     } else {
         $id = $this->_getParam('id', 0);
         $usuario = $this->_em->find("Application\\Entity\\Usuario", $id);
         if (!is_null($usuario)) {
             $form->populate(array('id' => $id, 'nome' => $usuario->getNome(), 'energia' => $usuario->getEnergia(), 'email' => $usuario->getEmail(), 'saldo' => $usuario->getSaldo()));
             $this->view->usuario = $usuario;
         } else {
             $this->_helper->FlashMessenger->addMessage(array('error' => 'Usuario não encontrado.'));
             return $this->_helper->redirector('index');
         }
     }
 }