Example #1
0
 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];
 }
Example #2
0
 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];
 }
Example #3
0
 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];
 }
Example #4
0
 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());
     }
 }
Example #5
0
 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('/');
 }
Example #6
0
 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');
         }
     }
 }