Manuel utilisateur v1.0.0, v1.1.0, v1.2.0, v1.3.0

  1. Les populations
    1. Import et synchronisation des populations
    2. Recherche des contenus générés par une population
    3. Edition des contenus générés par une population
  2. Publication d'un annuaire
    1. Arborescence virtuelle d'une population
    2. Service de recherche sur une population
    3. Afficher la fiche d'un membre d'une population dans une page
  3. Recherches directes sur des annuaires LDAP externes
    1. Définition des connexions et recherche LDAP externes
    2. Service de recherche sur un annuaire externes

Les populations

Une population est un ensemble d'utilisateurs / membres issus d'une même source de données (LDAP, SQL, ...).

Les "populations" d'utilisateurs sont définies par l'intégrateur dans le fichier XML WEB-INF/param/user-populations.xml (cf. Plugin Annuaires - Manuel d'intégration v1.1.0)

Import et synchronisation des populations

L'ensemble des populations/annuaires sont synchronisés toutes les nuits à une heure configurable par l'administrateur dans les paramètres de configuration.

Pour chaque membre de la population (utilisateur d'un annuaire LDAP par exemple):
- un contenu Ametys, du type défini par la population, est créé si aucun contenu ne correspond à l'identifiant ou login
- si un contenu correspondant au login est trouvé dans Ametys, on synchronise les champs du contenu
- si un contenu créé par une précédente synchronisation, est lié à un login qui n'existe plus dans la source de donnée, il est supprimé si la population est définie comme "source de confiance". Sinon le contenu n'est pas modifié.

Pour chaque membre d'une population (identifiant unique), un contenu Ametys pour chaque langues supportées sera créé. Les langues supportées par l'application sont définies dans le fichier WEB-INF/param/languages.xml de l'application.

Le plugin ne fournit pas d'outil graphique pour la synchronisation des populations. Les éventuelles erreurs survenues lors d'une synchronisation seront tracées dans les journaux de l'application et un mail sera envoyé à l'administrateur.

Recherche des contenus générés par une population

Tous les contenus Ametys issus de la synchronisation d'une population sont "rechercheable" via l'outil "Annuaire".

Les critères de recherche de cet outil permettent de préciser la langue, la population ou encore le type de contenu recherché.

Les contenus ne sont pas spécifique à un site.

Edition des contenus générés par une population

Les champs d'un contenu qui sont synchronisés avec les données d'une source de données apparaissent sur 2 lignes dans l'éditeur en ligne :

  • la premier ligne correspond à la valeur "locale", saisie dans Ametys
  • la seconde ligne correspond à la valeur du champs dans la source de données externes (attribut LDAP). Cette ligne n'est pas éditable.

Le bouton à droite permet de choisir d'utiliser la valeur Ametys ou la valeur distante :

La valeur distante est utilisée
La valeur locale saisie dans Ametys est utilisée

Les champs non issus de la source de donnée externe ou non synchronisés, apparaissent sur une seule ligne.

Suivant la configuration de la population, il est possible que la valeur d'un champ soit extraite de la source de données externe mais non synchronisée. Dans ce cas, l'édition du champ est sur une seule ligne.
Il est possible de modifier la valeur du champ, mais cette valeur sera automatiquement écrasée lors d'une prochaine synchronisation. Si ce n'est pas souhaitable, ce champ doit être synchronisé dans la définition de la population (cf. Plugin Annuaires - Manuel d'intégration v1.1.0). 

Il est ainsi possible de modifier et compléter la fiche d'une personne issue d'un annuaire LDAP.

Pour pouvoir modifier un contenu issu de la synchronisation avec une population, vous devez :
- soit avoir le droit "Modifier une fiche" de la catégorie "Annuaire" sur le contexte des contenus
- soit avoir le droit "Modifier sa fiche personnelle" et être le propriétaire du contenu (le contenu est lié à votre identifiant de connexion)

Publication d'un annuaire

Arborescence virtuelle d'une population

Pour publier un annuaire sur votre site, il faut définir dans le plan du site la ou les pages qui porteront les fiches des membres des populations. Ces pages sont appelées "Racine de l'annuaire".

Pour définir une telle page, sélectionnez dans l'outil "Plan du site" la page, puis cliquez sur "Racine de l'annuaire" dans l'onglet Page.

Puis sélectionnez, la population d'utilisateurs qui sera portée par cette page :

La profondeur d'arborescence correspond au nombre de pages intermédiaires qui seront utilisées pour classer les membres de la population. Ces pages intermédiaires sont calculées sur les X premières lettres du champ permettant d'identifiant un membre (son login par exemple), X étant la profondeur choisie.
Ces pages ne sont pas destinées à être affichées sur le site, elles permettent de préserver les performances d'affichage, dans le cas d'un annuaire volumineux : plus l'annuaire comporte de membres, plus la profondeur doit être grande.

Par exemples, pour un annuaire de 100 à 200 membres une profondeur de 1 suffit, tandis que pour un annuaire de plus de 10 000 membres, une profondeur de 3 est conseillée.

Dans l'exemple ci-dessous, la page "Annuaire du personnel" est la racine de l'annuaire pour la population "Annuaire du personnel". L'ensemble de ses sous-pages est constitué des fiches du personnel, classés par ordre alphabétique sur les identifiants, sur 1 seul niveau (profondeur de 1).
On parle d'arborescence dite "virtuelle", car il ne s'agit pas ici de pages "physiques" mais de pages calculées automatiquement à partir des membres de la population.

Remarques
- Une seule page racine peut être définie pour une population donnée, pour un même site.

Service de recherche sur une population

Après avoir sélectionner une page racine pour votre annuaire (population), vous pouvez insérer le service "Recherche sur l'annuaire" pour permettre aux visiteurs d'effectuer une recherche sur l'annuaire.

Le service possède 5 paramètres:

NomDescriptionObligatoire
TitreTitre de l'annuaireNon
PopulationSélection de la population sur laquelle porte la rechercheOui
Résultats par pageNombre de résultats par pageOui
Identifiant du serviceIdentifiant servant à faire communiquer deux instances de ce service
(lorsque les critères et les résultats ne sont pas affichés sur la même page).
Non
AffichageChoix du rendu (dépend de la charte graphique).
Deux rendus sont proposés par défaut :
  • affichage des résultats les uns en dessous des autres
  • affichage des résultats dans un tableau
Oui

Les critères de recherche et les colonnes de résultats, dépendent de la population et sont définis par l'intégrateur lors de la définition des populations : cf. Plugin Annuaires - Manuel d'intégration v1.0.0

Chaque résultat est "cliquable" et renvoie vers la fiche complète de la personne.

Afficher la fiche d'un membre d'une population dans une page

Le service "Afficher une fiche personne" vous permet d'afficher la fiche d'une personne sur n'importe quelle page du site.

Le service possède 3 paramètres:

NomDescriptionObligatoire
Fiche personneRecherche et sélection du contenu "membre" à afficherOui
VueVue du contenuOui
AffichageRendu du serviceOui


Recherches directes sur des annuaires LDAP externes

Le plugin Annuaires permet également d'effectuer des recherches simples directement sur des annuaires LDAP externes: les résultats de recherche sont extraits du LDAP, sans auquel lien avec un contenu Ametys.

Pour cela, le service de recherche "Annuaire externes" se base sur les connexions et recherche LDAP définies dans l'outil Sources de données.

Définition des connexions et recherche LDAP externes

Les sources de données LDAP seront définies dans l'outil "Source de données".

Les critères de recherche et les colonnes résultats sont automatiquement extraits de la définition des requêtes.

Par exemple:

  • Les attributs sn[Nom de famille], givenName[Prénom], mail[Courriel], supannAffectation[Service] permettent de définir 4 colonnes de résultats dans l'ordre :
    • "Nom de famille" affiche la valeur de l'attribut LDAP "sn"
    • "Prénom" affiche la valeur de l'attribut "givenName"
    • "Courriel" affiche la valeur de l'attribut "mail"
    • "Service" affiche la valeur de l'attribut "supannAffectation"
  • La contrainte de recherche (sn=${nom[Nom]}*)(supannAffectation=${affectation[Affectation]}) donnera lieu aux critères de recherche suivants:
    • "Nom" pour rechercher sur l'attribut LDAP "sn"
    • "Affectation" pour recherche sur l'attribut LDAP "supannAffectation"

Service de recherche sur un annuaire externes

Pour permettent la recherche sur un annuaire externe, insérez le service "Annuaire externe".

Le service possède 3 paramètres;

NomDescriptionObligatoire
TitreTitre de l'annuaireNon
Source externeSélection de la source LDAP externe.
Seules les requêtes LDAP "multiple" peuvent être sélectionnées. 
Oui
Nombre de résultats par pageNombre de résultats par page. Oui
AffichageRendu du service.
Dépend de la charte graphique 
Oui