Créer des blocs dans les onglets Type de document, Collection et Localisation de la page Recherche avancée

Créer des blocs dans les onglets Type de document, Collection et Localisation de la page Recherche avancée

Voici la version corrigée pour 21.05 des codes Javascript et CSS pour regrouper par blocs les critères de recherche dans les onglets de la recherche avancée de l'OPAC, comme dans la capture d'écran ci-dessous.


Types de document, collections et localisations

Afin de simplifier la lecture de cet article, le code en exemple sera celui pour les localisationsLe code pour regrouper les localisations, les types de document ou les collections est conçu de la même manière, mais il est important d'identifier les éléments correctement. Voici comment adapter le code en fonction de l'onglet dans lequel vous travaillez : 

Pour les localisations, l'élément en début de chaque ligne est #advsearch-loc et la valeur est mc-loc : CODE_LOCALISATION (CODE_LOCALISATION correspond au code de la valeur autorisée de vos localisations sous Administration > Valeurs autorisées > LOC)

Pour les types de document, l'élément en début de chaque ligne est #advsearch-itemtypes et la valeur est mc-itype : CODE_TYPE_DOCUMENT (CODE_TYPE_DOCUMENT correspond au code des types de document sous Administration > Types de document)

Pour les collections, l'élément en début de chaque ligne est #advsearch-ccode et la valeur est mc-ccode : CODE_COLLECTION (CODE_COLLECTION correspond au code de la valeur autorisée de vos colletions sous Administration > Valeurs autorisées > CCODE)


Créer le code

Il faut d'abord définir combien de blocs vous voulez créer et donner un titre à chaque bloc. Vous pouvez les identifier comme suit : 
//Bloc 1
$("#advsearch-loc div.row:nth-of-type(1)").prepend("<h2>VOTRE TITRE</h2>");

//Bloc 2
$("#advsearch-loc div.row:nth-of-type(2)").prepend("<h2>VOTRE TITRE</h2>"); 


Vous répétez ce processus pour tous les blocs que vous voulez créer afin de leur donner un titre.

Ensuite, vous devez décider quelles localisations iront dans chaque bloc. Une fois ce choix fait, pour ajouter les localisations désirées dans chaque bloc, on ajoute autant de lignes que de localisations sous chaque titre, en changeant le code de localisation à chaque ligne. Le chiffre à la fin de chaque ligne correspond au numéro de bloc. Donc toutes les lignes du bloc 1 auront 1 inscrit à la fin, 2 pour le bloc 2, etc.

Chaque ligne aura alors ce code :
$("#advsearch-loc input[value='mc-loc:CODE_LOCALISATION']").parent().detach().appendTo($("#advsearch-loc div.row:nth-of-type(NUMÉRO DE BLOC)")); 

Par exemple, si dans mon bloc 1 je veux les localisations COLL et BIB et dans le bloc 2 les localisations DEP et RES, mon code ressemblera à ceci : 

//Bloc 1
$("#advsearch-loc div.row:nth-of-type(1)").prepend("<h2>Bibliothèque</h2>");
$("#advsearch-loc input[value='mc-loc:COLL']").parent().detach().appendTo($("#advsearch-loc div.row:nth-of-type(1)"));
$("#advsearch-loc input[value='mc-loc:BIB']").parent().detach().appendTo($("#advsearch-loc div.row:nth-of-type(1)"));

//Bloc 2
$("#advsearch-loc div.row:nth-of-type(2)").prepend("<h2>Réserve</h2>"); 
$("#advsearch-loc input[value='mc-loc:DEP']").parent().detach().appendTo($("#advsearch-loc div.row:nth-of-type(2)"));
$("#advsearch-loc input[value='mc-loc:RES']").parent().detach().appendTo($("#advsearch-loc div.row:nth-of-type(2)"));


Vous pouvez alors mettre autant de blocs que vous le désirez avec les titres appropriés et vous mettez autant de lignes que de localisations dans chaque bloc.


Code pour les cadrages

Pour mettre en forme l'apparence des blocs, le code suivant doit être ajouté dans la préférence système OPACUserCSS :
/*localisation en bloc*/
#advsearch-loc fieldset h2{
   font-size: 1em;
   margin-top: 20px;
margin-right: 1024px;
   border-bottom: 1px solid #e5e5e5;
}
Si vous voyez du décalage comme dans la capture d'écran ci-dessous, il faut ajuster la valeur de margin-right. C'est un peu de l'essai et erreur, car selon le nombre de rangées et la longueur des noms de vos localisations, il se peut que vous ayez à augmenter la valeur de margin-right ou à la réduire. Par exemple, à Chicoutimi, cette valeur indique 1000px alors qu'à Vieux Montréal c'est 1300px. 
 



    • Related Articles

    • Recherche par localisation

      La recherche par localisation peut se faire en sélectionnant un bâtiment (s’il y a lieu, en fonction du code d’accès de l’utilisateur) un local, une division (étagère, cabinet métallique, etc.), une sous-division (tablette, tiroir, etc.) ou un ...
    • Personnaliser son tableau de bord

      Disposition du tableau de bord Le tableau de bord par défaut est composé de trois blocs : Vue d'ensemble des cours, Chronologie et Calendrier Interchanger la position des blocs Activer le mode édition Utiliser la croix en haut à droite du bloc pour ...
    • Tableau de bord et Mes cours - comment paramétrer ces deux pages dans Moodle

      Avant d'en faire un article officiel, je lance ici ce que j'ai compris du bidule grâce entre autres à Olivier Valentin (https://moodle.org/mod/forum/discuss.php?d=454251). Considérer ce texte comme un work in progress livré sans garantie. À partir de ...
    • Cacher ou grouper des types de document en recherche avancée (OPAC)

      1. Cacher des types de document Vous pouvez cacher des types de documents en recherche avancée à l’OPAC sans passer par du code javascript. Dans la configuration des types de documents (Administration > Type de document), une option doit être choisie ...
    • Recherche avancée à l’OPAC

      1. Fonctionnalité abandonnée Une fonctionnalité mise en place par la communauté Koha-CCSR pour la recherche avancée a été abandonnée pour la version 3.18.4 car cela peut être géré individuellement sur chaque instance. La fonctionnalité dont je vous ...