Exemplo n.º 1
0
 public function cadastrarAction()
 {
     if (!$this->identity()) {
         $this->flashMessenger()->addErrorMessage('Não autenticado!');
         return $this->redirect()->toRoute('application', ['controller' => 'usuario']);
     }
     $form = new ProdutoForm($this->getServiceLocator()->get('Doctrine\\ORM\\EntityManager'));
     if ($this->request->isPost()) {
         $em = $this->getServiceLocator()->get('Doctrine\\ORM\\EntityManager');
         $produto = new Produto($this->request->getPost('nome'), $this->request->getPost('preco'), $this->request->getPost('descricao'));
         $repository = $em->getRepository('Estoque\\Entity\\Categoria');
         $categoria = $repository->find($this->request->getPost('categoria'));
         $produto->setCategoria($categoria);
         $form->setInputFilter($produto->getInputFilter());
         $form->setData($this->request->getPost());
         if ($form->isValid()) {
             $em->persist($produto);
             $em->flush();
             $this->flashMessenger()->addSuccessMessage('Criado!');
             return $this->redirect()->toRoute('application', ['action' => 'index']);
         } else {
             $this->flashMessenger()->addErrorMessage('Erro!');
         }
     }
     return new ViewModel(['form' => $form]);
 }
Exemplo n.º 2
0
 public function cadastrarAction()
 {
     if (!($user = $this->identity())) {
         return $this->redirect()->toUrl('/Usuario/index');
     }
     $entityManager = $this->getServiceLocator()->get('Doctrine\\ORM\\EntityManager');
     $categoriaRepository = $entityManager->getRepository('Estoque\\Entity\\Categoria');
     $form = new ProdutoForm($entityManager);
     if ($this->request->isPost()) {
         $nome = $this->request->getPost("nome");
         $preco = $this->request->getPost("preco");
         $descricao = $this->request->getPost("descricao");
         $categoria = $categoriaRepository->find($this->request->getPost('categoria'));
         $produto = new Produto($nome, $preco, $descricao);
         $produto->setCategoria($categoria);
         $form->setInputFilter($produto->getInputFilter());
         $form->setData($this->request->getPost());
         if ($form->isValid()) {
             $entityManager->persist($produto);
             $entityManager->flush();
             return $this->redirect()->toUrl("Index/Index");
         }
     }
     return new ViewModel(['form' => $form]);
 }