XSMTP Technical Documentation/fr

De Trustedbird Client Wiki
English | Français

> Documentation > Module : XSMTP > Documentation technique


Implémentation

Normes

La norme de référence pour l'implémentation de cette fonctionnalité est la RFC 2822

Architecture

Présentation synthétique de l'architecture de l'extension

Cette fonctionnalité est développée sous la forme d'une extension Thunderbird.

  • Ajout des entêtes lors de la composition d'un message

Architecture

  • Affichage des entêtes dans la fenêtre qui liste les messages

Architecture

Le fonctionnement de cette extension repose sur :

  • L'ajout d'un observateur à la fenêtre de rédaction d'un message afin de gérer l'insertion des entêtes XSMTP lors des évènements d'envoi ou d'enregistrement d'un message.
  • L'ajout d'un listener sur la fenêtre listant les messages afin de pouvoir faire afficher et trier les entêtes XSMTP

Les fichiers d'IHM

  • Le fichier messengercomposeXSMTPOverlay.xul surcharge messengercompose.xul. Il affiche le bouton XSMTP permettant l'ouverture de la boite de dialogue d'entrée des entêtes et utilise les librairies javascripts suivantes:
  1. messengercomposeXSMTPOverlay.js : controle l'enregistrement et le rajout des entêtes XSMTP au corps du message envoyé ou enregistré. Il contient l'observateur de l'action d'envoi ou d'enregistrement.
  2. daterfc.js : completant la librairie précédente, il gére l'insertion des champs de dates au format RFC.
  3. xsmtpHeaders.js : charge les entêtes XSMTP lors de l'ouverture de messages enregistrés. Ceci au cas où aucune modification n'est faite sur ceux-ci.

Exemple de contrôle du remplissage des champs

  • Le fichier messengercomposeXSMTP.xul permet l'enregistrement des entêtes et utilise les librairies javascripts:
  1. messengercomposeXSMTP.js : controle le format d'entrée des entêtes.
  2. xsmtpHeaders.js : permet le chargement des entêtes XSMTP lors de l'ouverture de messages enregistrés. Ceci afin de modifier ou de rajouter les entêtes voulus.
  • Le fichier messengerXSMTPOverlay.xul surcharge messenger.xul. Il affiche la valeur des entêtes XSMTP dans les colonnes correspondant et permet leurs tris. Il utilise les librairies javascripts suivantes:
  1. messengerXSMTPOverlay.js : recupére les valeurs de chaque entête, et les rajoutes à la colonne correspondante pour le message concerné. Il contient le listener exécutant le trie des colonnes.

Affichage des colonnes XSMTP

Les fichiers XPCOM

Cette extension nécessite la modification du fichier mozilla/mailnews/base/src/nsMsgDBView.cpp.
(ce fichier permet le trie des colonnes XSMTP dans la fenêtre de principal de thunderbird)