= Como atualizar seu Expresso para a versão 2.4 = [[PageOutline]] Ao baixar o pacote da nova versão do Expresso, sua atualização é semelhante às outras atualizações (veja [wiki:atualizarExpresso esta página]). '''Atenção:''' * Antes de qualquer coisa, faça backup dos seus dados, principalmente do banco de dados; * Procure simular essa atualização em um ambiente de homologação; * Este procedimento irá interromper o serviço temporariamente; * Proceda em horários sem utilização; = Procedimentos após atualização = Após a atualização de seu Expresso, são necessárias algumas configurações adicionais de novas funcionalidades disponíveis nesta versão. == Diretório "prototype" == Abaixo do diretório principal de seu Expresso existe o diretório "/prototype". Esta pasta compreende um conjunto de novas funcionalidades inseridas no Expresso, desenvolvidas sob uma nova Api proposta abrangendo desde o novo módulo !ExpressoCalendar até componentes/funcionalidades de módulos já existentes como o !ExpressoMail. == Arquivos de configuração Gerais == Os arquivos de configuração da pasta prototype encontram-se no diretório "/config", formando o caminho "prototype/config". Neste diretório, inicialmente é necessário configurar os seguintes arquivos: * PostgreSQL.srv {{{ path = "services/PostgreSQL.php" class = "PostgreSQL" [config] ; Conexao via socket unix host = /tmp ; Conexão via TCP/IP ;host = 127.0.0.1 port = 5432 dbname = expresso user = postgres ; Caso o usuario tenha senha... ;password= }}} -- Neste arquivo deve ser configurado o "host", "port"(porta de conexão com o PostgreSQL), "dbname", "user" e caso seja necessário uma senha para conexão a mesma deve ser dado no campo "password"; * Sieve.srv {{{ path = "services/Sieve.php" class = "Sieve" [config] host = 127.0.0.1 port = 2000 loginType = null auth = true debug = false euser = '' useTLS = false options = null }}} -- Neste arquivo deve ser configurado o "host"(onde está o serviço sieve - Ip da máquina), "port"(Porta do serviço Sieve), "loginType", "auth", "debug", "euser", "userTLS", "options"; * OpenLDAP.srv {{{ path = "services/OpenLDAP.php" class = "OpenLDAP" [config] idAtribute = "uidNumber" host = 127.0.0.1 context = "dc=LDAP_DC" ; Caso o LDAP requisite autenticao, configure os parametros a seguir ;user = ;password = }}} -- Neste arquivo deve ser configurado o "idAtribute" (nome do campo do LDap que representa o Id unico do usuário), "host"(onde está o serviço OpenLDAP) e "context"; * Imap.srv {{{ path = services/ImapServiceAdapter.php class = ImapServiceAdapter }}} == Instalação básica da Agenda (expressoCalendar) == 1 - Instalar módulo a partir do setup do Expresso, conforme o padrão de todos os módulos; 2 - Configurar obrigatóriamente os arquivos "PostgreSQL.srv", "OpenLDAP.srv" e "SMTP.srv", localizados em "/prototype/config/" na Árvore de diretórios a partir da raíz; 3 - Ativar o módulo para os gerentes pelo módulo Admin; 4 - Ativar o módulo para os usuários ou para um grupo de usuários pelo módulo !ExpressoAdmin; 5 - Configurar o cron do servidor para executar perioricamente o arquivo de alarmes do Expresso, permitindo o envio de notificações de alarmes dos eventos (via e-mail): * Executar o comando "crontab -u apache -e" para centos ou "crontab -u www-data -e" para debian/ubuntu; * Copiar e colar esta linha na linha de comando "*/5 * * * * php -q /CAMINHO ABSOLUTO DO EXPRESSO/prototype/modules/calendar/alarms.php". == Suporte a !DaviCal == 1 - Instalação do Servidor !DaviCal: * Seguir o tutorial oficial, disponibilizado em: http://www.davical.org/installation.php * Outras informações também podem ser encontradas em: http://wiki.davical.org/ http://wiki.davical.org/w/Configuration/LDAP * Observação: O davical DEVE ser instalado na mesma máquina do Expresso Livre, mas a base de dados pode estar em outro servidor (já que o davical necessita que a base de dados esteja em UTF-8). No desenvolvimento da versão 2.4 nos baseamos na versão '''1.0.2''' do Davical 2 - Aplicar os três patches em anexo nesta página Wiki nos arquivos do servidor !DaviCal: * caldav-DELETE.php.diff * caldav-MOVE.php.diff * caldav-PUT-vcalendar.php.diff Para aplicar os patches, copie os arquivos acima, acesse o diretório do código do !DaviCal (geralmente em /usr/share/davical/inc), cole os arquivos neste diretório e utilize os comandos: * patch -p0 < caldav-DELETE.php.diff * patch -p0 < caldav-MOVE.php.diff * patch -p0 < caldav-PUT-vcalendar.php.diff 3 - Após aplicados os patches, acessar cada um dos arquivos: * caldav-DELETE.php * caldav-MOVE.php * caldav-PUT-vcalendar.php e especificar o caminho da sua instalação Expresso em cada um deles, definido na variável: $expresso = 'PATH_DO_SEU_EXPRESSO'; 4 - Para configurar a agenda como um cliente !DaviCal * Configurar a url utilizada para acessar o servidor !DaviCal no arquivo localizado em "/prototype/config/CalDAV.srv" * Ativar o suporte ao caldav, definindo para "true" o parâmetro "useCaldav" no arquivo localizado em "/prototype/config/expressoCalendar.ini" 5 - Exemplo de Configuração para acesso a agenda através do Mozilla Thunderbird ''' !!!! Rolava de colocar um Exemplo aqui !!!!!!''' 6 - Para acessar uma Agenda Compartilhada via Davical '''!!!! Rolava de colocar um Exemplo aqui !!!!!!''' == Configuração do Cron == 1 - Para a configuração do Cron, deve-se colocar o script localizado em (expresso/INSTALL/arquivos/expresso-cron) no diretório "/etc/cron.d", o mesmo deve ser alterado conforme o sistema operacional utilizado. 2 - Se a instalação for feita via Script, este arquivo será configurado e colocado automaticamente. 3 - Se for feita apenas uma atualização, deverá ser configurado manualmente. == Migração da Agenda (expressoCalendar) == 1 - Entrar no módulo Administrador; 2 - Em "expressoCalendar" clicar em "!ExpressoCalendar migração*" (Imagem 1); [[Image(img1.jpg,center,45%)]] 3 - Clicar no botão "Salvar" uma vez (Imagem 2). O sistema ira migrar e voltar ao home do módulo Administrador; [[Image(img2.jpg,center,35%)]] Obs.: A migração ainda não suporta Repetições e nem Alarmes, portanto não serão migrados junto com os eventos!ainda estão em 'TODO'. == Instalação do módulo REST API e atualização do módulo Expresso Mail == 1 - A partir da interface de instalação de módulos do expresso (expresso/setup) na tela de visualização de módulos instalados/desinstalados/desatualizados, Será necessário procurar pelo módulo com o título "REST API", marcá-lo para instalação e clicar sobre o botão salvar. Veja maiores detalhes na imagem abaixo. 2 - Após a instalação do módulo "REST API", procurar pelo módulo com o título "Expresso Mail", marcá-lo para atualização e clicar sobre o botão salvar. Veja maiores detalhes na imagem abaixo. A ordem de instalação destes módulos deve ser seguida desta maneira, instalando primeiro o "REST API", pois "Expresso Mail" precisará que ele já esteja instalado para que a nova funcionalidade de contatos dinâmicos funcione corretamente. [[Image(setup.jpg,center,70%)]] == Alteração do limite de resultados de uma pesquisa no LDAP == Em diversos locais do expresso são realizadas buscas no LDAP. Nestes locais, ao escolher um setor ou pressionar "Enter" em um campo vazio, será retornado resultados limitados do LDAP. Isto ocorre por que este valor está fixo no código, porém é possivel alterá-lo. Para alterar a quantidade de resultados em uma pesquisa no LDAP é preciso editar o arquivo "prototype/services/OpenLDAP.php". Procure pela variável "var $limit = 10" presente na linha 9 deste arquivo. Ao alterar o valor desta variável, o limite máximo de resultados em uma busca no LDAP será alterada. Segue abaixo uma imagem para maiores detalhes de localização. [[Image(limit.jpg,center,22%)]]