= Ciclo 2.4 = [[PageOutline(1-4, Conteúdo)]] == Destaques == Para visualizar todas as correções e melhorias deste ciclo, veja o roadmap: [milestone:"Expresso 2.4.0" 2.4.0]. Estas são as versões mais recentes desta árvore de código: [wiki:versoes/241 2.4.1] e [wiki:versoes/242 2.4.2]. ==== !ExpressoCalendar ==== * Novo módulo de agenda Expresso Calendar (Eventos), totalmente compatível com as RFCs de agendamento 2445 e 2446, com uma interface inédita, apresentando mais usabilidade ao usuário e a inclusão de novas funcionalidades, como: Integração com !DaviCal, ACLs (permissões) de eventos, suporte a anexos, entre outros. ==== !ExpressoMail ==== * Múltiplas assinaturas de e-mail. * Novo parser de e-mail (processamento e visualização de mensagens recebidas), mais compatível com mensagens geradas em ferramentas de e-mail proprietárias. * Novo editor de e-mails, agregando mais facilidades de edição de texto para o usuário e a preocupação com o máximo de interoperabilidade da formatação do conteúdo vindo de outras aplicações. * Nova tela de pesquisa de destinatários durante a criação de e-mails, exibindo mais informações (Ldap e/ou Banco de dados) sobre os destinatários pesquisados. * Possibilidade de anexar mensagens da pasta Imap em uma nova mensagem, via interface específica. Também, está incluído a visualização (de forma prática) de mensagens recebidas que contenham mensagens em anexo. * Nova árvore de pastas Imap do usuário, com recurso de ''drag-and-drop'' de pastas, entre outros. * Sinalizador de acompanhamento de mensagens do usuário, permitindo a sinalização e acompanhamento posterior de mensagens de interesse do usuário. * Nova interface de criação e gerenciamento de filtros de mensagens do usuário, incluindo a adição de novas regras de filtragem. * Melhorias nos Contatos Dinâmicos: Agora é possível ao usuário remover os contatos recentes na qual trocou e-mails. Os mesmos contatos recentes agora são ranqueados, ordenados pela quantidade de e-mails trocados com aquele contato recente. Agora existe uma distinção clara entre contatos recentes e contatos pessoais, separados por ícones e estilizados. * Expansão do aviso de férias (filtro fora de escritório) - A busca por contatos na criação de mensagens (tecla F9) também informará ao usuário quais dos contatos pesquisados estão em férias, baseado no filtro fora de escritório. Na tela com os resultados, os contatos com filtro fora de escritório são identificados com um ícone específico. A mensagem na qual o contato fora de escritório definiu também é exibida na tela com os resultados da pesquisa. * Imagens anexas em mensagens via área de transferência - Assumindo que exista imagens na área de transferência, o usuário pode inserir essas imagens no corpo do e-mail através do teclado (CTRL+V) na tela de compor a mensagem. As imagens inseridas via CTRL+V são apresentadas como anexo da mensagem, funcionando da mesma forma que a opção 'inserir imagem' (ícone imagem) no editor do e-mail, na tela de compor a mensagem. * Melhoria na inserção de destinatários nas mensagens - Agora cada destinatário inserido pelo usuário é inserido de maneira diferente. Cada destinatário é transformado em uma "caixa" estilizada, facilitando a distinção e manipulação dos destinatários, seja inseridos via contatos dinâmicos, manualmente ou via pesquisa. Destinatários considerados inválidos são identificados com caixas vermelhas, e destinatários válidos são identificados em azul. Adicionalmente, contatos do Ldap adicionados nos campos de destinatários, apresentam um identificador que apresenta mais detalhes do destinatário, caso o usuário deseje. * Modificação do seletor de remetente (campo "De"), para contas compartilhadas - Quando um usuário possui acesso a contas compartilhadas, caso este esteja visualizando a Caixa Postal de uma conta compartilhada específica, no momento da criação de uma nova mensagem, o campo "De" para seleção da conta do expresso virá selecionado automaticamente de acordo com a respectiva conta compartilhada. * Alerta de regra atendida nos filtros de mensagens - No filtro de mensagens do Expresso, caso o usuário deseje ser alertado de uma regra para remetente específica, o mesmo poderá ser alertado quando uma nova mensagem for atendida nesta regra. ==== Calendar ==== * Módulo Calendar (versão 2.0) compatibilizado parcialmente com as RFCs 2445 e 2446. (deve ir para o diretório contrib). = Pré-requisitos do ambiente = Distribuições homologadas: * Centos 6 * Debian Squeeze * Ubuntu 11.10 '''Requisitos mínimos''' para qualquer ambiente: * PHP > 5.3.3 * Cyrus > 2.4.0 * Postgres > 9.0 '''Ambiente recomendado''': * PHP 5.3.13 * Postgres 9.1 * Cyrus 2.4.13 = Procedimentos para atualização = Segue abaixo os procedimentos que devem ser realizados em um ambiente já existente. Em instalações novas, não é preciso fazer nada, caso utilize o [wiki:documentacao/instalarExpresso próprio instalador do Expresso]. === A partir da versão 2.2.x === ==== Novos pacotes ==== Primeiramente, revise a instalação dos pacotes necessários ao correto funcionamento do Expresso Livre: * Para !Debian/Ubuntu: * HTTP: apache2-mpm-prefork libapache2-mod-php5 apache2-utils * PHP: php5 php5-common php5-dev php5-gd php5-imap php5-ldap php5-pgsql php5-cgi php5-cli php5-curl php5-xmlrpc php5-memcache libgv-php5 php5-pspell * Complementares: zip unzip memcached libmemcached * Para !RedHat/CentOS: * HTTP: httpd mod_ssl * PHP: php php-cli php-ldap php-pgsql php-imap php-mbstring php-gd php-xml php-pecl-memcache graphviz-php php5-pspell * Complementares: zip unzip memcached libmemcached '''Atente para as versões mínimas exigidas para esta nova versão do Expresso Livre.''' ==== Usando ''.htaccess'' ==== A partir da versão 2.4.0 do Expresso Livre, as configurações relativas ao PHP necessárias para que o Expresso funcione foram concentradas no arquivo '''.htaccess'''. Então, é muito importante permitir que o Apache use tais configurações. Logo, para ter certeza que o Apache irá utilizar as configurações deste arquivo é necessário permitir seu acesso na configuração do virtual-host do Apache: * Para !Debian/Ubuntu, edite o arquivo: ''/etc/apache2/sites-available/expresso'' * Para !RedHat/Centos, edite o arquivo: ''/etc/httpd/conf.d/expresso.conf'' {{{ # Para o .htaccess funcionar AllowOverride All Order allow,deny allow from all }}} ==== Novas configurações ==== Na raiz do diretório principal do seu Expresso há um novo diretório, chamado '''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ções 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 }}} ==== Módulo REST API ==== 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%)]] ==== 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%)]] = Novas funcionalidades = Abaixo será descrito como utilizar as novas funcionalidades do Expresso. == Nova agenda: !ExpressoCalendar == A nova agenda, chamada de !ExpressoCalendar é um novo módulo, desenvolvido do ''zero'' pela Prognus em parceria com a CAIXA. O objetivo desta nova agenda é disponibilizar funcionalidades de agendamento conforme os padrões utilizados no mercado, como iCalendar, não suportados na agenda atual (!Calendar). === Instalação === O processo de instalação do !ExpressoCalendar é simples. Seu código já está contido no pacote do Expresso Livre, a partir da versão [wiki:versoes/24 2.4.0], portanto só resta ativá-la, seguindo estes passos: 1. Acesse o setup do Expresso e instale o novo módulo, como [wiki:attachment/wiki/documentacao/instalarExpresso/SetupAplicaçõesInstalandomoduloREST.png neste exemplo]; 2. É obrigatório configurar os arquivos "PostgreSQL.srv", "OpenLDAP.srv", "SMTP.srv", ..., demonstrados anteriormente; 3. Permita que o usuário ''expresso-admin'' possam utilizar o novo módulo, por meio da configuração no módulo Admin; 4. Ativar o módulo para os usuários ou para um grupo de usuários pelo módulo !ExpressoAdmin; 5. Não esqueça de configurar o '''cron''' conforme demonstrado [wiki:documentacao/atualizarExpresso#Ajustandoosnovosrequisitosdanovaversão anteriormente]. A partir deste ponto, a nova agenda estará disponível para uso no seu Expresso Livre! Faça bom uso! === Migrando os dados da agenda === Caso não possa, ou não queira, perder o histórico da sua atual agenda (Calendar) do Expresso Livre, você pode fazer a migração dos dados. 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'. == Integração com DAViCal == Esta nova versão do Expresso Livre trás o suporte ao DAViCal, onde as informações de agendamentos contidas na nova agenda (!ExpressoCalendar) podem ser sincronizadas com este novo serviço, e vice-versa. O suporte ao DAViCal foi desenvolvido pela [http://www.prognus.com.br Prognus] com apoio da [http://www.caixa.gov.br CAIXA]. === Instalação e configuração === Para realizar a instalação e configuração deste novo serviço, [wiki:documentacao/instalarExpresso/davical veja esta página]. == Novo auto-completar para destinatários de mensagem == No módulo Expresso Mail, para que a nova funcionalidade de auto-completar para destinatários de uma mensagem seja funcional, será preciso seguir os passos abaixo: 1. Limpar os todos os dados de cookie e cache de seu navegador. Para que a interface de remoção destes dados seja exibida em seu navegador, utilize o atalho Ctrl+Shift+del ou procure pela funcionalidade no menu de seu navegador, a imagem abaixo utiliza como exemplo a remoção de dados para o navegador firefox. [[BR]] [[Image(limpar_cache_firefox.jpg,center,50%)]] 2. Selecione um identificador único que o usuário contenha em seu LDAP. Para isto acesse o módulo "Administrador" e acesse o link "Configuração do servidor" do módulo !ExpressoMail. Ao final da página que será aberta, em "Identificador do destinatário de uma mensagem" escolha o atributo LDAP disponível no campo de seleção exibido. Para finalizar esta modificação clique sobre o botão "Salvar". A imagem abaixo utiliza como exemplo o atributo "uid". [[BR]] [[Image(alterar_atributo_ldap.jpg,center,50%)]]