public function agregarusuarioAction() { $auth = new \Zend\Authentication\AuthenticationService(); if (!$auth->hasIdentity()) { return $this->redirect()->toUrl($this->getRequest()->getBaseUrl() . '/usuario/index/login'); } $form = new UsuarioForm(); $comidas = $this->roles()->toArray(); $com = array(); foreach ($comidas as $y) { $com[$y['in_id']] = $y['va_nombre_rol']; } $form->get('Ta_rol_in_id')->setValueOptions($com); $form->get('submit')->setValue('INSERTAR'); $request = $this->getRequest(); if ($request->isPost()) { $var = $this->getRequest()->getPost()->toArray(); $datos = $this->request->getPost(); $pass1 = $datos['va_contrasenia']; $pass2 = $datos['va_contrasenia2']; $usuario = new Usuario(); $form->setInputFilter($usuario->getInputFilter()); $form->setData($request->getPost()); if ($form->isValid()) { $usuario->exchangeArray($form->getData()); if ($pass1 == $pass2) { $this->getUsuarioTable()->guardarUsuario($usuario); return $this->redirect()->toUrl($this->getRequest()->getBaseUrl() . '/usuario'); } } } return array('form' => $form); }
public function atualizarAction() { // obtém a requisição $request = $this->getRequest(); // verifica se a requisição é do tipo post if ($request->isPost()) { // instancia formulário $form = new UsuarioForm(); // instancia model usuario com regras de filtros e validações $modelUsuario = new Usuario(); // passa para o objeto formulário as regras de viltros e validações // contidas na entity usuario $form->setInputFilter($modelUsuario->getInputFilter()); // passa para o objeto formulário os usuario vindos da submissão $form->setData($request->getPost()); // verifica se o formulário segue a validação proposta if ($form->isValid()) { // aqui vai a lógica para atualizar os usuarios à tabela no banco // 1 - popular model com valores do formulário $modelUsuario->exchangeArray($form->getData()); // 2 - atualizar usuarios do model para banco de usuarios $this->getUsuarioTable()->update($modelUsuario); // adicionar mensagem de sucesso $this->flashMessenger()->addSuccessMessage("Usuario editado com sucesso"); $nome_cache_usuario_id = "nome_cache_usuario_{$modelUsuario->id_usuario}"; if ($this->cache()->hasItem($nome_cache_usuario_id)) { $this->cache()->removeItem($nome_cache_usuario_id); } // redirecionar para action detalhes return $this->redirect()->toRoute('usuarios', ["action" => "main", "id" => $modelUsuario->id_usuario]); } else { // em caso da validação não seguir o que foi definido // renderiza para action editar com o objeto form populado, // com isso os erros serão tratados pelo helpers view return (new ViewModel())->setVariable('formUsuarios', $form)->setTemplate('usuario/usuarios/editar'); } } }