Ir para o conteúdo

 Voltar a SGA LIVRE De...
Tela cheia

Bug: utilização do sistema com PostgreSQL em porta distinta da 5432.

17 de Novembro de 2009, 7:17 , por Desconhecido - | Ninguém seguindo este artigo por enquanto.
Visualizado 86 vezes

Prezados, 

há um bug no sistema que, embora não seja crítico, o impede de ser instalado e utilizado com o PostgreSQL rodando em porta distinta da padrão (5432).

O problema: a porta é mantida como parâmetro no sistema, mas não chega a ser usada na montagem da string de DSN da conexão.

Solução:

1. Alterar as linhas de montagem da string de DSN, incluindo o valor parametrizado da porta.

2. Alterar a assinatura do método connect(...) da classe DB e de sua subclasse PgSQLDB, bem como sua chamada, incluindo um parâmetro para passar o valor da porta.

Fiz estas alterações no código e testei; o problema foi corrigido. Abaixo, coloco a saída do comando diff entre a versão oficial do código (sgalivre-web) e minha versão alterada (modificado), submetendo-a à análise de vocês.

diff -r sgalivre-web/install/test_db.php modificado/install/test_db.php
50c50
<         $dbh = new PDO($db['db_type'].':host='.$db['db_host'].';port='.$db['db_port'].';dbname=postgres', $db['db_user'], $db['db_pass']);
---
>         $dbh = new PDO($db['db_type'].':host='.$db['db_host'].';dbname=postgres', $db['db_user'], $db['db_pass']);
diff -r sgalivre-web/lib/php/core/db/DB.php modificado/lib/php/core/db/DB.php
55c55
<     public abstract function connect($host, $port, $usuario, $senha, $banco);
---
>     public abstract function connect($host, $usuario, $senha, $banco);
diff -r sgalivre-web/lib/php/core/db/PgSQLDB.php modificado/lib/php/core/db/PgSQLDB.php
42c42
<         $this->connect(Config::DB_HOST, Config::DB_PORT, Config::DB_USER, Config::DB_PASS, Config::DB_NAME);
---
>         $this->connect(Config::DB_HOST, Config::DB_USER, Config::DB_PASS, Config::DB_NAME);
51c51
<     public function connect($host, $port, $usuario, $senha, $banco) {
---
>     public function connect($host, $usuario, $senha, $banco) {
53c53
<             $pdo = new PDO('pgsql:host='.$host.';port='.$port.';dbname='.$banco, $usuario, $senha);
---
>             $pdo = new PDO('pgsql:host='.$host.';dbname='.$banco, $usuario, $senha);
diff -r sgalivre-web/lib/php/template/Template.php modificado/lib/php/template/Template.php
301c301
<                         <form method="post" action="?set_uni" >
---
>                         <form method="POST" action="?set_uni" >

Notem: a última mudança, na verdade, não tem relação com o problema citado. A fiz apenas por que minha IDE reclamava do valor em caixa alta da propriedade method da tag form. [:)]

Abraço.

Autor: Jonas de Araújo Luz Jr.


Encontro da comunidade SGA Livre no FISL11

13 de Julho de 2010, 15:41, por Desconhecido

Prezados,



Em uma semana, SGA Livre ultrapassa mil usuários

10 de Novembro de 2009, 19:19, por Desconhecido

Em apenas uma semana de funcionamento, a comunidade do Sistema de Gerenciamento do Atendimento (SGA Livre) do Portal Software Público atingiu a marca de mil usuários. O lançamento e a disponibilização do software livre foi feito no último dia 22, durante a 6ª Conferência Latino-Americana de Software Livre (Latinoware 2009), que ocorreu em Foz do Iguaçu (PR).



Nova versão da aplicação Web 1.0.2

4 de Novembro de 2009, 17:05, por Desconhecido

Disponível nova versão da aplicação web (1.0.2). Corrige uma falha na impressão da senha, no módulo de Triagem.



Nova versão da aplicação Web 1.0.1

29 de Outubro de 2009, 12:56, por Desconhecido

Disponível nova versão da aplicação Web do SGA LIVRE, que corrige: