wiki:mail/Documentacao

Version 8 (modified by amuller, 15 years ago) (diff)

--

Como funciona o ExpressoMail

Código

O Expresso Mail é uma aplicação/módulo constituído de PHP (servidor) + Javascript (cliente).

Abas

O objetivo de abas no ExpressoMail é tornar a interface ágil e melhor utilização dos recursos. A figura abaixo descreve todos os tipos de abas do expressoMail:

Tipos de Abas

Figura 1

Da parte do Javascipt:

abas.js : É reponsável pelo manuseio das abas

Possui funções como apagar, alternar e criar aba. A figura a seguir ilustra o nome dos objetos com a respectiva demonstração visual: Figura 2

common_functions.js

Tem funções como:

  • adicionar caixa (input box) de arquivo anexo
  • remover caixa (input box) de arquivo anexo
  • função de lang
  • busca rápida
  • inclusão de texto de encaminhamento
  • e etc...

main.js : Possui funções de manipulação como:

  • criar nova mensagem (new_message)

É chamada em toda edição de email, tanto na criação de novos como encaminhamento, resposta e edição.

  • salvar mensagem (save_msg)

Devido a ausência de função imap implementada para editar um email, a função de salvar cria um novo email e apaga o antigo. Depois disso atualiza todas as figuras por links novos e atualiza a caixa (pasta) que está aberta no momento.

  • mover
  • deletar
  • salvar como (save_msg_as)

Pede ao usuário uma caixa a qual ele deseja salvar. Não apaga o email antigo.

  • etc...

rich_text_editor.js : Responsável pela parte de edição de emails.

draw_api.js : Possui funções de desenho do ExpressoMail como um todo

Dentro deste arquivo fica armazenado um estrutura global que contém informações sobre abas de todos os tipos que estão abertas.

var openTab = {
        'type' : [], // Tipo da aba de acordo com a figura 1
        'content_id' : [],
        'imapUid' : [], // UID do imap
        'countFile' : [0,0,0,0,0,0,0,0,0,0], // Num. de anexos
        'imapBox' : [], // Caixa do imap
        'toPreserve' : [] // Flag guarda se o email já foi salvo
};
var currentTab,numBox = 0; // Aba aberta e num. de abas abertas

Dentro dela fica armazenado todas as informações dos emails que estão abertos (novos ou edição). Informações como número no Imap, número de anexos e se ele deve ser apagado quando enviado. O índice do vetor é o número da aba.

search.js

Possui funções de busca.

Attachments