Multi ldap autocompletion Architecture/fr
Un article de Milimail.
Sommaire |
Documentation technique - Auto complétion des destinataires avec des annuaires multiples
Rappel des fonctionnalités
Cette extension permet, lors de la saisie d'un destinataire dans la fenêtre de composition, de vérifier que celui-ci existe en recherchant l'information dans tous les annuaires LDAP configurés et sélectionnés. En effet dans la version standard de Thunderbird, la recherche d'un destinataire est effectuée sur un seul annuaire LDAP.
La recherche peut se faire aussi dans les carnets d'adresses locaux si l'option est sélectionnée.
La vérification se fait par auto complétion de l'adresse du destinataire lors de la saisie.
Implémentation
Normes
Aucune norme ne s'applique à cette extension.
Architecture
Présentation synthétique de l'architecture de l'extension
Cette fonctionnalité est développée sous la forme d'une extension Thunderbird.
- Auto complétion des utilisateurs avec plusieurs serveurs LDAP
Cette fonctionnalité repose sur l'auto complétion standard de Thunderbird.
Elle surcharge les fonctions setupLdapAutocompleteSession(), AddDirectorySettingsObserver() et RemoveDirectorySettingsObserver() du fichier MsgComposeCommands.js.
Les fichiers d'IHM
Configuration globale
- Le fichier preferencesOverlay.xul surcharge preferences.xul. Il inclut le fichier composeLDAPOverlay.xul. Il utilise la librairie composeLDAPOverlay.js
- composeLDAPOverlay.js : récupère la liste des serveurs LDAP configurés. Il construit dynamiquement tout les items XML pour créer la liste des serveurs pour l'IHM. Cette liste est accessible dans les préférences globales, dans l’onglet composition.
- L'activation de l'auto complétion LDAP se fait en positionnant la propriété standard Thunderbird, de type booléen: ldap_2.autoComplete.useDirectory
- La propriété définissant la liste des serveurs LDAP, de type chaîne de caractères, à interroger est une propriété Thunderbird standard: ldap_2.autoComplete.ldapServers.
Préférences de compte
- L'architecture est la même que ci-dessus avec un niveau d'inclusion en moins (Pas de fichier preferencesOverlay.xul). Le fichier am-addressingOverlay.xul surcharge am-addressingOverlay.xul. Il utilise la librairie am-addressingOverlay.js
- La surcharge des préférences globale de l'auto complétion LDAP se fait en positionnant la propriété standard Thunderbird, de type booléen: ldap_2.identity.%IDENTITYKEY%.multi_ldap_use_custom_preferences
- La propriété définissant la liste des serveurs LDAP pour un utilisateur, de type chaîne de caractères, à interroger est une propriété Thunderbird standard: ldap_2.identity.%IDENTITYKEY%.autoComplete.ldapServers.
Les fichiers XPCOM
Cette extension ne contient pas de nouvel XPCOM. Elle s'appuie principalement sur des XPCOMs standards nsIAutoCompleteSession et nsILDAPAutoCompFormatter qui permettent de gérer l'auto complétion standard sur un serveur LDAP.






