Question : Comment utiliser appelant.js pour ouvrir le dialogue de recherche d’un élement de la fichothèque ?

Analyse de l’utilisation de js/bdf/appelant.js

Niveau : Programmation (noyau et extensions)

Réponse :

Principe

Le principe de cette bibliothèque est de lier à un champ de saisie l’appel à la fenêtre de recherche correspondante. Pour cela, le champ de saisie doit posséder les attributs suivants (tous ne sont pas obligatoires) :

  • id : le champ de saisie doit avoir obligatoirement un identifiant

  • data-appelant-role : obligatoire et avec la valeur input

  • data-appelant-type : obligatoire avec une des trois valeurs suivantes :

    • redacteur (appel d’une recherche sur les rédacteurs)

    • motcle (appel d’une recherche sur les mots-clés)

    • field (appel d’une recherche sur les champs des corpus)

  • data-appelant-limit : facultatif, indique le nombre maximum d’éléments qui peut être envoyé par la fenêtre de recherche ; si la limite est 1, la valeur de la fenêtre de recherche remplacera la valeur en cours du champ de saisie, sinon les valeurs sont agrégées à la suite

  • data-appelant-subsets : facultatif, il s’agit des noms des collections sur lesquelles se feront la recherche, il peut en y avoir plusieurs séparées par une virgule ; seul le nom doit être indiqué (sans le préfixe corpus_, thesaurus_) ; en effet le type de collection attendu est déduit de la valeur de data-appelant-type

  • data-appelant-sphere : facultatif et utile uniquement pour les recherches sur les rédacteurs, indique le nom de la sphère par défaut

  • data-appelant-wanted : facultatif et utile uniquement pour les recherches sur les mots-clés, la valeur Id indique la fenêtre de recherche renvoie l’identifiant du mot-clé et non son intitulé

  • data-appelant-wanted : facultatif et utile uniquement pour les recherches sur les champs, peut prendre les deux valeurs suivantes :

    • all : tous les champs

    • datation : uniquement les champs de date

  • data-appelant-anchor : facultatif, indique l’identifiant de l’élément qui va contenir le bouton d’appel à la fenêtre de recherche ; en l’absence de cet attribut, le bouton d’appel est placé juste après le champ de saisie

Modification de la collection via une liste

L’exemple de la commande Fusion avec un autre mot-clé montre l’utilisation d’une liste déroulante (ici sur les thésaurus) qui modifie la collection sur laquelle doit se faire la recherche. Pour que cela fonctionne, la liste déroulante doit posséder les deux attributs suivants (tous deux obligatoires) :

  • data-appelant-role : avec la valeur subset-select

  • data-appelant-target : un sélecteur CSS indiquant les champs de saisie impactés par le changement de la valeur sélectionnée (#mergemotcle dans l’exemple de la fusion de mot-clé)

Initialisation des appelants

BDF.Appelant.init($conteneur));