public function index() { $codUsuario = $this->getUsuario()->getCodUsu(); $duracao = (int) $this->getParametro('duracao', 0); $data = $this->getParametro('data'); $ordenar = $this->getParametro('ordenar', 'PonTar'); $ordenacoesPossiveis = ['DatIniTar', 'TepTar', 'PonTar', 'NomTar']; if (!in_array($ordenar, $ordenacoesPossiveis)) { die('Falha de segurança! SQL Injection!'); } $params = [':CodUsu_Tar' => $codUsuario]; $where = ''; if (!empty($duracao)) { $where .= "AND HOUR(TepTar) + 1 >= :Duracao "; $params[':Duracao'] = $duracao; } if (!empty($data)) { $where .= "AND DATE(DatIniTar) = :Data "; $params[':Data'] = $data; } $sql = "SELECT\n CodTar,\n NomTar,\n DesTar,\n DATE_FORMAT(DatIniTar, '%Y-%m-%dT%H:%i') as DatIniTar,\n DatTerTar,\n TepTar,\n PonTar\n FROM tarefa\n WHERE CodUsu_Tar = :CodUsu_Tar\n AND ConTar = 'N'\n {$where}\n ORDER BY {$ordenar} ASC"; $conn = Conexao::getInstancia()->getConexao(); $result = $conn->recuperarTudo($sql, $params); return ['duracao' => $duracao, 'data' => $data, 'ordenar' => $ordenar, 'result' => $result]; }
public function index() { $this->setTela('Minha Pontuação'); $codUsu = $this->getUsuario()->getCodUsu(); $sql = "SELECT\n SUM(Totpts) AS pontos\n FROM pontuacao_usuario p\n INNER JOIN tarefa t on t.CodTar = p.CodTarPon\n WHERE\n t.ConTar = 'S'\n AND t.CodUsu_Tar = :CodUsu;"; $result = Conexao::getInstancia()->getConexao()->recuperarTudo($sql, [':CodUsu' => $codUsu]); $pontos = empty($result) ? 0 : (int) $result[0]['pontos']; return ['pontos' => $pontos]; }
public function index() { $this->setTela('Relatório'); $groupBy = $this->getParametro('group', 'ano'); $codUsuario = $this->getUsuario()->getCodUsu(); $tarefa = new Tarefa(); $tarefa->setConexao(Conexao::getInstancia()->getConexao()); $report = $tarefa->getRelatorioPeloUsuario($codUsuario, $groupBy); return ['group' => $groupBy, 'relatorio' => $report]; }
public function index() { $this->setTela('Login'); try { if ($this->isPost()) { //consulta $usuario = new Usuario(); $usuario->setConexao(Conexao::getInstancia()->getConexao()); $usuario->getPeloEmailESenha($this->getParametro('email'), $this->getParametro('senha')); // Define o usuário da sessão $_SESSION['usuario'] = ['codigo' => $usuario->getCodUsu(), 'nome' => $usuario->getNomUsu(), 'email' => $usuario->getEmaUsu()]; //encaminha para a página inicial. $this->setMensagemSucesso('Bem vindo ao sistema, ' . $usuario->getNomUsu()); $this->redirecionar('/'); } } catch (\PDOException $ex) { $this->setMensagemErro("Erro ao logar: " . $ex->getMessage()); } catch (\Exception $ex) { $this->setMensagemErro($ex->getMessage()); } }
public function concluir() { if ($this->isPost()) { try { // Recupera a tarefa $tarefa = new Tarefa(); $tarefa->setConexao(Conexao::getInstancia()->getConexao()); $tarefa->getTarefa($this->getParametro('CodTar')); switch ($this->getParametro('acao')) { case 'salvar': case 'finalizar': $this->salvar($tarefa); break; case 'excluir': $this->excluir($tarefa); break; } } catch (\Exception $e) { $this->setMensagemErro('Erro ao alterar a tarefa: ' . $e->getMessage()); } } $this->redirecionar('/'); }
public function novaSenha() { $this->setTela('Recuperar senha'); $hash = $_GET['h']; $usuario = new Usuario(); $usuario->setConexao(Conexao::getInstancia()->getConexao()); try { $usuario->getPeloEmailHash($hash); } catch (\Exception $e) { $this->setMensagemErro($e->getMessage()); $this->redirecionar('/login.php'); } if ($this->isPost()) { $senha = $this->getParametro('senha'); $confSenha = $this->getParametro('conf_senha'); if ($senha !== $confSenha) { $this->setMensagemErro('As senhas devem ser idênticas!'); } else { $usuario->setSenUsu(md5($senha))->salvar(); $this->setMensagemSucesso('Senha alterada com sucesso!'); $this->redirecionar('/login.php'); } } }