コード例 #1
0
 public function inserir($id_personagem, $nome)
 {
     $ouro = TERRENO_INICIAL * TERRENO_CUSTO;
     $regraPersonagem = new Personagem();
     $regraPersonagem->gastarOuro($id_personagem, $ouro);
     $query = "\n            INSERT INTO cidade (\n                id_personagem,\n                nome\n            ) VALUES (\n                '" . do_escape($id_personagem) . "',\n                '" . do_escape($nome) . "'\n            )\n        ";
     $id_cidade = do_insert($query);
     $this->adicionarTerreno($id_personagem, $id_cidade, TERRENO_INICIAL);
     return $id_cidade;
 }
コード例 #2
0
 private function removerMaterial($personagem, $materiais)
 {
     foreach ($materiais as $material => $quantidade) {
         for ($i = 0; $i < $quantidade; $i++) {
             $query = "\n                    UPDATE item SET\n                        quantidade = quantidade - " . do_escape($quantidade) . "\n                    WHERE id_personagem = '" . do_escape($personagem->id_personagem) . "'\n                    AND slug = '" . do_escape($material) . "'\n                ";
             do_update($query);
             $query = "\n                    DELETE FROM item\n                    WHERE id_personagem = '" . do_escape($personagem->id_personagem) . "'\n                    AND slug = '" . do_escape($material) . "'\n                    AND quantidade <= 0\n                ";
             do_delete($query);
             $query = "\n                    UPDATE item SET\n                        quantidade_venda = quantidade\n                    WHERE id_personagem = '" . do_escape($personagem->id_personagem) . "'\n                    AND slug = '" . do_escape($material) . "'\n                    AND quantidade >= quantidade_venda\n                ";
             do_update($query);
         }
     }
 }
コード例 #3
0
 public function marcar($id_livro, $id_capitulo, $num_versiculo, $tipo = 1)
 {
     $usuario = $this->pegarAtual();
     if (!is_null($usuario)) {
         $query = "\n                SELECT tipo\n                FROM usuario_versiculo\n                WHERE id_usuario = '" . do_escape($usuario->id_usuario) . "'\n                AND id_livro = '" . do_escape($id_livro) . "'\n                AND id_capitulo = '" . do_escape($id_capitulo) . "'\n                AND num_versiculo = '" . do_escape($num_versiculo) . "'\n                AND tipo = '" . do_escape($tipo) . "'\n            ";
         $tipoAtual = intval(get_value($query, 'tipo'));
         if ($tipoAtual > 0) {
             $query = "\n                    DELETE FROM usuario_versiculo\n                    WHERE id_usuario = '" . do_escape($usuario->id_usuario) . "'\n                    AND id_livro = '" . do_escape($id_livro) . "'\n                    AND id_capitulo = '" . do_escape($id_capitulo) . "'\n                    AND num_versiculo = '" . do_escape($num_versiculo) . "'\n                    AND tipo = '" . do_escape($tipo) . "'\n                ";
             do_delete($query);
             return false;
         } else {
             $query = "\n                    INSERT INTO usuario_versiculo (\n                        id_usuario,\n                        id_livro,\n                        id_capitulo,\n                        num_versiculo,\n                        tipo\n                    ) VALUES (\n                        '" . do_escape($usuario->id_usuario) . "',\n                        '" . do_escape($id_livro) . "',\n                        '" . do_escape($id_capitulo) . "',\n                        '" . do_escape($num_versiculo) . "',\n                        '" . do_escape($tipo) . "'\n                    )\n                ";
             do_insert($query);
             return true;
         }
     }
     return false;
 }
コード例 #4
0
 public static function buscar($palavra)
 {
     $palavras = explode(' ', strtolower($palavra));
     $palavraChave = '%';
     foreach ($palavras as $palavra) {
         $palavraChave .= do_escape(strtolower(trim($palavra))) . "%";
     }
     $query = static::query();
     $query .= " \n            WHERE LOWER(jogador.nome) LIKE '{$palavraChave}'\n            AND jogador.id_jogador <> '" . do_escape(static::idJogadorAtual()) . "'\n        ";
     $query .= " ORDER BY jogador.nome";
     $jogadores = array();
     foreach (get_result($query) as $dados) {
         $jogador = new Jogador();
         $jogador->carregarDB($dados);
         $jogadores[] = $jogador;
     }
     return $jogadores;
 }
コード例 #5
0
 public static function pegarItem($slug)
 {
     $query = static::query();
     $query .= " WHERE slug = '" . do_escape($slug) . "'";
     return static::carregarDB(get_first_result($query));
 }
コード例 #6
0
ファイル: Quest.inc.php プロジェクト: landim32/dungeon-blazer
 private function falha($quest, $grupo, &$mensagem)
 {
     $regraPersonagem = new Personagem();
     foreach ($grupo as $personagem) {
         $regraPersonagem->gastarTurno($personagem->id_personagem, $quest->turno);
     }
     $query = "\n            UPDATE quest SET\n                cod_situacao = '" . QUEST_FALHA . "'\n            WHERE id_quest = '" . do_escape($quest->id_quest) . "'\n        ";
     do_update($query);
 }
コード例 #7
0
 public static function botaoCurtirSessao($id_sessao)
 {
     $total = static::contarSessao($id_sessao, FEED_CURTIR);
     $query = "\n            SELECT\n                id_feed\n            FROM feed\n            WHERE id_sessao = '" . do_escape($id_sessao) . "'\n            AND id_jogador = '" . do_escape(ID_JOGADOR) . "'\n            AND cod_tipo = '" . FEED_CURTIR . "'\n        ";
     $id_feed = get_value($query, 'id_feed');
     return static::renderizarCurtir($id_feed, $total, 'data-sessao', $id_sessao);
 }
コード例 #8
0
 public function listarPorPericia($slug)
 {
     $query = "\n            SELECT\n                personagem.id_personagem\n            FROM personagem\n            INNER JOIN pericia ON pericia.id_personagem = personagem.id_personagem\n            WHERE pericia.slug = '" . do_escape($slug) . "'\n            AND personagem.turno > 30\n            AND pericia.bonus > 0\n        ";
     $personagens = array();
     foreach (get_result_as_string($query, 'id_personagem') as $id_personagem) {
         $personagem = $this->pegar($id_personagem);
         //var_dump($personagem->pericias[$slug]->nh);
         if ($personagem->pericias[$slug]->nh > 0) {
             $personagens[] = $personagem;
         }
     }
     return $personagens;
 }
コード例 #9
0
 public function autoCompletarVersiculo($id_versao, $palavraChave)
 {
     $query = "\n            SELECT\n                CONCAT(livros.liv_nome, ' ', versiculos.ver_capitulo, ':', versiculos.ver_versiculo) AS 'nome'\n            FROM versiculos\n            INNER JOIN versoes ON versoes.vrs_id = versiculos.ver_vrs_id\n            INNER JOIN livros ON livros.liv_id = versiculos.ver_liv_id\n            WHERE versiculos.ver_vrs_id = '" . do_escape($id_versao) . "'\n            AND CONCAT(livros.liv_nome, ' ', versiculos.ver_capitulo, ':', versiculos.ver_versiculo) LIKE '" . do_escape($palavraChave) . "%'\n            ORDER BY\n                livros.liv_nome, \n                versiculos.ver_capitulo, \n                versiculos.ver_versiculo\n            LIMIT 15\n        ";
     return get_result_as_string($query, 'nome');
 }
コード例 #10
0
 public function setSessao($id_sessao)
 {
     $query = "\n            UPDATE personagem SET\n                id_sessao = '" . do_escape($id_sessao) . "'\n            WHERE id_personagem = '" . do_escape($this->id_personagem) . "'\n        ";
     do_update($query);
 }
コード例 #11
0
 public function logar($email, $senha)
 {
     $query = $this->query() . "\n            WHERE usuario.email = '" . do_escape($email) . "'\n            AND usuario.senha = '" . do_escape($senha) . "'\n            AND usuario.cod_situacao = 1\n        ";
     $usuario = get_first_result($query);
     if (!is_null($usuario)) {
         $_SESSION['usuario_atual'] = $usuario;
         return true;
     } else {
         return false;
     }
 }
コード例 #12
0
 public static function escreverlog($texto, $id_personagem = null, $cod_tipo = LOG_NORMAL)
 {
     if (array_key_exists('s', $_GET)) {
         $id_sessao = Sessao::idSessao();
     }
     $query = "\n            INSERT INTO noticia (\n                id_campanha,\n                id_personagem,\n                cod_tipo,\n                id_sessao,\n                data_inclusao,\n                texto\n            ) VALUES (\n                " . do_full_escape(static::$id_campanha) . ",\n                " . do_full_escape($id_personagem) . ",\n                '" . do_escape($cod_tipo) . "',\n                '" . do_escape($id_sessao) . "',\n                NOW(),\n                '" . do_escape($texto) . "'\n            )\n        ";
     do_insert($query);
 }
コード例 #13
0
 public function excluir($id_pessoa)
 {
     $query = "\n            UPDATE pessoa SET\n                cod_situacao = '" . PESSOA_INATIVO . "'\n            WHERE id_pessoa = '" . do_escape($id_pessoa) . "'\n        ";
     do_update($query);
 }
コード例 #14
0
 public static function excluir($id_arte)
 {
     $query = "\n            DELETE FROM arte\n            WHERE id_arte = '" . do_escape($id_arte) . "'\n        ";
     do_delete($query);
 }
コード例 #15
0
 private function verificar($id_construcao)
 {
     $construcao = $this->pegar($id_construcao);
     $concluido = true;
     foreach ($construcao->teste as $pericia) {
         if (!($pericia->progresso >= 100)) {
             $concluido = false;
             break;
         }
     }
     if ($concluido === true) {
         foreach ($construcao->material as $material) {
             if (!($pericia->progresso > 100)) {
                 $concluido = false;
                 break;
             }
         }
     }
     if ($concluido === true) {
         $query = "\n                UPDATE construcao SET\n                    cod_situacao = '" . do_escape(CONSTRUCAO_ATIVA) . "'\n                WHERE id_construcao = '" . do_escape($id_construcao) . "'\n            ";
         do_update($query);
         $query = "\n                DELETE FROM construcao_material\n                WHERE id_construcao = '" . do_escape($id_construcao) . "'\n            ";
         do_delete($query);
         $query = "\n                DELETE FROM construcao_pericia\n                WHERE id_construcao = '" . do_escape($id_construcao) . "'\n            ";
         do_delete($query);
     }
 }
コード例 #16
0
 public function listarPorUsuario($id_usuario)
 {
     $query = "\n            SELECT\n                comentario.id_comentario,\n                comentario.id_pai,\n                comentario.id_usuario,\n                usuario.nome,\n                usuario.email,\n                comentario.data_inclusao,\n                comentario.texto,\n                comentario.cod_situacao\n            FROM comentario\n            INNER JOIN usuario ON usuario.id_usuario = comentario.id_usuario\n            WHERE usuario.id_usuario = '" . do_escape($id_usuario) . "'\n            AND comentario.cod_situacao = 1\n            ORDER BY comentario.data_inclusao DESC\n        ";
     $comentarios = array();
     foreach (get_result($query) as $comentario) {
         $comentario->comentarios = $this->listarResposta($comentario->id_comentario);
         $comentario->versiculos = $this->listarVersiculo($comentario->id_comentario);
         $comentario->data = strftime("%b %d, %Y %Hh%M", strtotime($comentario->data_inclusao));
         $comentarios[] = $comentario;
     }
     return $comentarios;
 }
コード例 #17
0
 public static function listarLog()
 {
     $query = "\n            SELECT \n                noticia.id_personagem,\n                noticia.cod_tipo,\n                noticia.data_inclusao,\n                noticia.texto,\n                personagem.nome\n            FROM noticia\n            LEFT JOIN personagem ON personagem.id_personagem = noticia.id_personagem\n            WHERE noticia.id_sessao = '" . do_escape(Sessao::idSessao()) . "'\n            ORDER BY noticia.id_noticia DESC\n            LIMIT 30\n        ";
     return get_result($query);
 }
コード例 #18
0
 public function excluir($id_curso)
 {
     $query = "\n            DELETE FROM curso\n            WHERE id_curso = '" . do_escape($id_curso) . "'\n        ";
     do_delete($query);
 }
コード例 #19
0
 public function extrato($cod_situacao = null, $cod_tipo = null, $dataIni = null, $dataFim = null)
 {
     $query = "\n            SELECT \n                movimento.id_movimento,\n                movimento.data_vencimento AS 'data_movimento',\n                responsavel.nome AS 'responsavel',\n                aluno.nome AS 'aluno',\n                movimento.observacao,\n                movimento.credito,\n                movimento.debito,\n                movimento.cod_tipo,\n                movimento.cod_situacao\n            FROM movimento\n            LEFT JOIN pessoa AS responsavel ON responsavel.id_pessoa = movimento.id_pessoa\n            LEFT JOIN pessoa AS aluno ON aluno.id_pessoa = movimento.id_aluno\n            WHERE movimento.id_escola = '" . do_escape(ID_ESCOLA) . "'\n        ";
     if ($cod_situacao == MOVIMENTO_EM_ABERTO) {
         $query .= " AND movimento.cod_situacao = " . MOVIMENTO_EM_ABERTO;
     } elseif ($cod_situacao == MOVIMENTO_QUITADO) {
         $query .= " AND movimento.cod_situacao = " . MOVIMENTO_QUITADO;
     } elseif ($cod_situacao == MOVIMENTO_CANCELADO) {
         $query .= " AND movimento.cod_situacao = " . MOVIMENTO_CANCELADO;
     }
     if ($cod_tipo > 0) {
         $query .= " AND movimento.cod_tipo = " . $cod_tipo;
     }
     if ($dataIni > 0 && $dataFim > 0) {
         $query .= " AND movimento.data_vencimento BETWEEN '" . date('Y-m-d', $dataIni) . " 00:00:00' AND '" . date('Y-m-d', $dataFim) . " 23:59:59'";
     }
     $query .= " ORDER BY movimento.data_vencimento ";
     //echo $query;
     $retorno = array();
     $movimentos = get_result($query);
     if (count($movimentos) > 0) {
         reset($movimentos);
         list($key, $movimento) = each($movimentos);
         reset($movimentos);
         $dataAtual = date('Y-m-d', strtotime($movimento->data_movimento));
         $retorno = array();
         $dataSaldo = strtotime($movimento->data_movimento) - 24 * 60 * 60;
         $dataSaldo = strtotime(date('Y-m-d', $dataSaldo) . ' 23:59:59');
         //var_dump($movimento, $dataSaldo);
         $saldo = $this->saldoAnterior($cod_situacao, $cod_tipo, $dataSaldo);
         $movimento = new stdClass();
         $movimento->id_movimento = 0;
         $movimento->data_movimento = date('Y-m-d', $dataSaldo);
         $movimento->data_str = date('d/m/Y', strtotime($movimento->data_movimento));
         $movimento->cod_situacao = 0;
         $movimento->texto = "Saldo Anterior";
         $movimento->saldo = $saldo;
         $movimento->saldo_str = number_format($movimento->saldo, 2, ',', '.');
         $retorno[] = $movimento;
         foreach ($movimentos as $movimento) {
             //$movimento->data_str = date('d/m/Y', strtotime($movimento->data_movimento));
             if ($movimento->cod_situacao != MOVIMENTO_EXTORNADO) {
                 $saldo += $movimento->credito;
                 $saldo -= $movimento->debito;
             }
             $texto = array($movimento->tipo);
             if (!isNullOrEmpty($movimento->descricao)) {
                 $texto[] = $movimento->descricao;
             }
             if (!isNullOrEmpty($movimento->nome)) {
                 $texto[] = $movimento->nome;
             }
             $movimento->texto = implode(', ', $texto);
             if ($movimento->credito > 0) {
                 $movimento->credito_str = number_format($movimento->credito, 2, ',', '.');
             } else {
                 $movimento->credito_str = '';
             }
             if ($movimento->debito > 0) {
                 $movimento->debito_str = '-' . number_format($movimento->debito, 2, ',', '.');
             } else {
                 $movimento->debito_str = '';
             }
             $movimento->saldo = $saldo;
             $movimento->saldo_str = number_format($movimento->saldo, 2, ',', '.');
             $dataMovimento = date('Y-m-d', strtotime($movimento->data_movimento));
             if ($dataMovimento != $dataAtual) {
                 $saldoParcial = new stdClass();
                 $saldoParcial->id_movimento = 0;
                 $saldoParcial->data_movimento = $dataAtual;
                 $saldoParcial->data_str = date('d/m/Y', strtotime($saldoParcial->data_movimento));
                 $saldoParcial->cod_situacao = 0;
                 $saldoParcial->texto = "Saldo Parcial";
                 $saldoParcial->saldo = $saldo;
                 $saldoParcial->saldo_str = number_format($saldoParcial->saldo, 2, ',', '.');
                 $dataAtual = $dataMovimento;
                 $retorno[] = $saldoParcial;
             }
             $retorno[] = $movimento;
         }
         $movimento = new stdClass();
         $movimento->id_movimento = 0;
         $movimento->data_movimento = date('Y-m-d', time());
         $movimento->data_str = date('d/m/Y', strtotime($movimento->data_movimento));
         $movimento->cod_situacao = 0;
         $movimento->texto = "Saldo Atual";
         $movimento->saldo = $saldo;
         $movimento->saldo_str = number_format($movimento->saldo, 2, ',', '.');
         $retorno[] = $movimento;
     }
     return $retorno;
 }
コード例 #20
0
 public static function listar($id_jogador = null)
 {
     $retorno = array();
     $query = static::query();
     //$query .= "WHERE id_jogador = '".  do_escape($id_jogador)."'";
     $query .= " WHERE (1=1)";
     if (!is_null($id_jogador)) {
         $query .= " AND id_jogador = '" . do_escape($id_jogador) . "'";
     }
     $query .= " ORDER BY data_inclusao DESC";
     $campanhas = get_result($query);
     foreach ($campanhas as $dados) {
         $campanha = new Campanha();
         $campanha->carregarDB($dados);
         $retorno[] = $campanha;
     }
     return $retorno;
 }
コード例 #21
0
 public function pegar($id_escola)
 {
     $query = $this->query() . "\n            WHERE id_escola = '" . do_escape(ID_ESCOLA) . "'\n        ";
     return get_first_result($query);
 }