public function control_alterar_senha() { $user = $this->getUsuario(); if ($this->app->isPostRequest) { try { if (false == UserHelper::password_verify($_POST['senha'], $user->getSenha())) { $this->app->adicionarMensagemErro('A senha informada é inválida'); return $this->app->redirect('projetos/alterar-senha'); } if ($_POST['senha_nova'] != $_POST['senha_confirmacao']) { $this->app->adicionarMensagemErro('A senha e a confirmação da senha são diferentes'); return $this->app->redirect('projetos/alterar-senha'); } $user->setSenha($_POST['senha_nova']); $this->app->em->persist($user); $this->app->em->flush(); $this->app->adicionarMensagemSucesso('Sua senha foi atualizada com sucesso'); } catch (Exception $e) { $this->app->adicionarMensagemErro('Ocorreu um erro e sua senha não foi alterada'); } } return $this->app->renderizar('projetos/alterar-senha'); }