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'); } } }
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'); } } }