Code javascript pour l’opac

Code javascript pour l’opac

Alert
Article en restructuration, il est possible que la mise en page ne soit pas optimale.

0. Configuration

0.1 Préférence OPACUserJS

La préférence système opacuserjs peut être utilisée pour activer du code java à l’OPAC.

Les codes qui sont listés ci-dessous doivent être inscrits entre ces deux balises en rouge.

Quote
$(document).ready(function(){
CODE
});  


0.2 JS pour l'OPAC spécifique dans les paramètres des bibliothèques - Nouveauté 24.05

Une nouveauté de la version 24.05 permet d'injecter du code Javascript et CSS pour chaque bibliothèque spécifique. Ce code est injecté à partir des paramètres de la bibliothèque dans Administration > Bibliothèques.

Lorsque du code Javascript est injecté dans ce paramètre, la modification effectuée par le code est visible UNIQUEMENT lorsqu'on est connecté à un compte rattaché à la bibliothèque en question. Si, par exemple, on injecte du code dans la bibliothèque Collecto qui permet de cacher l'onglet MARC de la vue détaillée d'une notice, l'onglet sera visible pour toutes les personnes qui accèdent à l'OPAC sans se connecter. L'onglet ne sera pas visible pour un usager qui se connecte et dont le compte est rattaché à la bibliothèque Collecto.

Comme pour la préférence système OPACUserJS, il faut insérer le code suivant avant d'inscrire du code Javascript dans les paramètres des bibliothèques.

Quote
$(document).ready(function(){
CODE
});  


1. Recherche

1.1 Recherche simple

1.1.1 Bloquer le bouton de la recherche simple (le bouton ne peut plus être cliqué pendant que la recherche est en chargement)

Info
Fonctionne avec la version 24.05
Quote
//bloquer bouton recherche simple $('#searchform').submit(function() { $('#searchsubmit').prop('disabled',true).text('Recherche...'); });

1.1.2 Positionner par défaut l’index de la recherche simple sur Titre

Info
Fonctionne avec la version 24.05
Quote
//positionner index titre recherche simple $("select#masthead_search[name='idx']").val("ti").attr("selected","selected");
    

1.1.3 Positionner par défaut l'index en recherche simple sur une bibliothèque ou un groupe de bibliothèque

Info
Fonctionne avec la version 24.05

Pour une bibliothèque individuelle :
Quote
Pour une bibliothèque unique : 
//positionner sur une de bibliothèque par défaut
$("select#select_library[name='limit']").val("branch:CODE_BIBLIOTHEQUE").attr("selected","selected");

Le code de la bibliothèque se trouve dans le tableau des bibliothèques, sous Administration > Bibliothèques. 


Pour un groupe de bibliothèques :

Quote
//positionner sur Groupe de bibliothèque par défaut
$("select#select_library[name='limit']").val("multibranchlimit:X").attr("selected","selected");

Le X doit être remplacé par le numéro de groupe. Malheureusement, ce numéro n'apparait pas dans l'interface de Koha. Pour le trouver, il faut fouiller dans le code source de la page à l'OPAC.

Voici comment procéder :
Info
Les captures d'écran de la procédure suivante ont été prises dans Chrome, mais les étapes restent les mêmes dans Firefox ou encore Microsoft Edge.

1. Placez votre curseur sur l'index bibliothèques de la barre de recherche simple et faites un clic droit 
2. Sélectionnez dans le menu l'option Inspecter :


3. Des lignes de codes seront surlignées. Cliquez sur la flèche à gauche pour dérouler le code.


4. Vous verrez deux autres sections de code, soit Bibliothèques et Groupes.


5. Cliquez sur la flèche à gauche, vis-à-vis la ligne Groupes. Vous verrez le ou les groupes paramétrés dans votre site. Vous aurez alors le numéro du groupe à mettre dans le code Javascript. Dans le cas ci-dessous, il faudrait remplacer le X dans le code par 10.



1.3.3 Curseur se positionne directement dans la barre de recherche simple


Info
Fonctionne avec la version 24.05

Sans ce code, vous devez cliquez dans la boite de recherche simple pour pouvoir écrire votre recherche. Ce code permet d’écrire votre recherche sans devoir cliquer dans la boite.

Quote
$("#translControl1").focus();


Cacher un site dans le menu déroulant de la recherche simple et de la recherche avancée

Info
Fonctionne avec la version 24.05
Quote
//cacher site menu déroulant recherche simple
$("#select_library option[value='branch:CODE_SITE']").remove();


1.2 Recherche avancée

1.2.1 Positionner les index en recherche avancée

Info
Fonctionne avec la version 24.05
               $("select[name='idx']:eq(0)").val("su,wrdl").attr("selected","selected");
               $("select[name='idx']:eq(1)").val("au,wrdl").attr("selected","selected");
               $("select[name='idx']:eq(2)").val("ti").attr("selected","selected");

Avec ce code, les trois menus déroulants de la recherche avancée vont se positionner sur sujet, auteur et titre. 



1.2.2 Cacher des types de documents en recherche avancée

Info
Fonctionne avec la version 24.05
Quote
  $("input[value='mc-itype,phr:CODE_TYPE_DOC']").parent().hide();


1.2.3 Cacher des localisations en recherche avancée

Info
Fonctionne avec la version 24.05
Quote
$("input[value='mc-loc:CODE_LOCALISATION']").parent().hide();


1.2.5 Modifier l'index Langue en recherche avancée

InfoFonctionne avec la version 24.05
Quote
//Supprimer langues 008 du menu $("select#language-limit option[value='ln,rtrn:eng']").hide(); $("select#language-limit option[value='ln,rtrn:fre']").hide(); $("select#language-limit option[value='ln,rtrn:ger']").hide(); $("select#language-limit option[value='ln,rtrn:ita']").hide(); $("select#language-limit option[value='ln,rtrn:spa']").hide(); //Changer zone 008 pour zone 041 pour la recherche de langue $("select#language-limit[name='limit']").append("<option value='ln-audio:eng'>English (Anglais)</option>"); $("select#language-limit[name='limit']").append("<option value='ln-audio:fre'>Français (Français)</option>"); $("select#language-limit[name='limit']").append("<option value='ln-audio:ger'>Deutsch (Allemand)</option>"); $("select#language-limit[name='limit']").append("<option value='ln-audio:ita'>Italiano (Italien)</option>"); $("select#language-limit[name='limit']").append("<option value='ln-audio:ita'>Español (Espagnol)</option>");


1.3.4 Cacher l’index Éditeur par défaut et ajouter un index Provider pour les zones 260 et 264

Info
Fonctionne avec la version 24.05
Quote
//pour cacher index éditeur $("#booleansearch option[value='pb,wrdl']").hide(); //pour ajouter index provider 260 et 264 $("#search-field_0 option[value='au,phr']").after("<option value='pv,wrdl'>Éditeur</option>"); $("#search-field_1 option[value='au,phr']").after("<option value='pv,wrdl'>Éditeur</option>"); $("#search-field_2 option[value='au,phr']").after("<option value='pv,wrdl'>Éditeur</option>");


1.3.2 Cacher un site dans le menu déroulant de la recherche simple et de la recherche avancée

Info
Fonctionne avec la version 24.05
Quote
//cacher site menu déroulant recherche avancée
$("#branchloop option[value='branch:CODE_SITE']").remove();


1.3.1 Ajouter un index Titre de revues

Voir l'article explicatif pour insérer ce code sur votre instance : Ajouter un index titre de revues


2. Page de résultats de recherche

2.1 Cacher l’option « Limiter aux exemplaires présentement disponibles »

Info
Fonctionne avec la version 24.05
Quote
$("#availability_facet").remove();


2.2 Remplacer le texte « Retour à la recherche précédente » pour « Modifier la recherche ».

Info
Fonctionne avec la version 24.05
Quote
$("a:contains('Retourner à la dernière recherche avancée')").text("Modifier la recherche");


2.3 Cacher des sections dans la colonne des facettes en liste de résultat

Info
Fonctionne avec la version 24.05
Quote
//Cacher les facettes de localisations
$("li#location_id").hide();

//Cacher les facettes de lieux
$("li#su-geo_id").hide();

//Cacher les facettes de collections
$("li#title-series_id").hide();

//Cacher les facettes de bibliothèque temporaire/actuelle
$("li#holdingbranch_id").hide();

//Cacher les facettes de bibliothèque propriétaire
$("li#homebranch_id").hide();

2.8 Cacher cote des documents non disponibles

Info
Fonctionne avec la version 24.05
Quote
//cacher cote $("span.unavailable span.LabelCallNumber").hide();


3. Position de blocs de personnalisations HTML

3.1 Mettre le contenu du bloc OPACResultsSidebar au-dessus des facettes

Info
Fonctionne avec la version 24.05
Quote
$("#search-facets").prepend($("#opacresultssidebar"));

3.2 Déplacer les onglets du compte de l’usager au-dessus du bloc OPACNav

Info
Fonctionne avec la version 24.05
Quote
$("#OpacNav").prepend($("#usermenu"));
Avant
Après



3.3 Mettre le carrousel et les blocs OPACMainUserBlock au-dessus des nouvelles

Info
Fonctionne avec la version 24.05
Quote
$( ".newscontainer" ).insertAfter( $( "#inlibro-carrousel" ) );
$( "#rssnews-container" ).insertAfter( $( ".newscontainer" ) );
$( "#news-branch-select" ).insertBefore( $( ".newscontainer" ) );


4. Vue détaillée d'une notice

4.1 Notice

4.1.1 Cacher l’onglet vue marc d’une notice à l’opac

Info
Fonctionne avec la version 24.05
Quote
$("#MARCview").parent().hide();


4.1.3 Cacher l’onglet vue ISBD d’une notice à l’opac

Info
Fonctionne avec la version 24.05
Quote
$("#ISBDview").parent().hide();


4.1.5 Cacher « Sauvegarder la notice » dans une notice en vue détaillée

Pour cacher le menu Sauvegarder la notice, il suffit de décocher toutes les options de la préférence système OpacExportOptions

4.1.6 Cacher la zone 245$c de la vue normale d’une notice

Info
Fonctionne avec la version 24.05
Quote
$("span.title_resp_stmt").hide();
  

4.1.7 Cacher la zone 490 dans la vue normale d’une notice avec l’utilisation de la feuille de style Collecto

Info
Fonctionne avec la version 24.05
Quote
//cacher 490 notice opac $("div.record span.results_summary.490").remove();

4.1.8 Déplacer les ISBN en dessous des autres informations bibliographiques

Info
Fonctionne avec la version 24.05
Quote
//deplacer isbn en bas notice $('#bibliodescriptions').prepend($('span.results_summary.publisher:contains(ISBN)'));


4.1.9 Changer le texte du bouton Réserver en gardant l'icône de signet dans une notice en vue détaillée

Quote
//Modifier le texte Réserver
$("#action a:contains(' Réserver')").text(" VOTRE TEXTE ").prepend('<i class="fa fa-fw fa-bookmark" aria-hidden="true"></i>');


4.1.10 Cacher la source des imagettes dans la vue détaillée

//cacher image provenant de l'imagette
$("div.hint:contains('Image')").hide(); 


4.1.11 Modifier le texte Accès en ligne des liens 856

Fonctionne avec la version 21.05

Quote
$("a:contains('Accès en ligne')").text("ACCÈS EN LIGNE").css({"color": "red"});


4.2 Exemplaires

4.2.1 Modifier le texte « Nous n’avons aucun exemplaire physique de ce document » dans la notice en vue détaillée quand il n’y a pas d’exemplaires

Fonctionne avec la version 21.05
  
Quote
$("#noitems:contains('Aucun exemplaire')").text("VOTRE TEXTE");

4.2.2 Changer le texte de l'entête de la colonne Statut


$("th#item_status").text("VOTRE_TEXTE");

4.2.3 Changer le texte de l'entête de la colonne Bibliothèque de rattachement

            
               

$("th#item_home_location").text("Localisation");

4.2.4 Changer le texte Numéro de copie dans l’en-tête du tableau des exemplaires

            
               

//changer le texte Numéro de copie $("th#item_copy").text("Exemplaire n°");

4.2.5 Couleur différente pour le statut inscrit dans la colonne Statut en vue détaillée de la notice

            
               

//couleur differente pour statut not for loan $("span.item-status.notforloan:contains('Consultation sur place')").css({"color": "green"});

4.2.6 Changer le texte Parcourir l’étagère par un autre texte comme Voir des exemplaires similaires

Si la préférence système  OPACShelfBrowser   est activée, le texte  Parcourir l’étagère  apparaît dans le tableau des exemplaires à l’OPAC.

Pour changer ce texte par autre chose, vous pouvez utiliser le code suivant dans la préférence système  opacuserjs

      
         

$("a:contains('Parcourir l'étagère')").text("Voir des exemplaires similaires");

Voici le résultat:




5. Affichage global de l'OPAC

5.1 Cacher le lien Accueil sur la page d’accueil de l’OPAC

Info
Fonctionne avec la version 24.05
Quote
$("#opac-main div.main #breadcrumbs").hide();


5.2 Cacher Limites secondaires en recherche avancée

Quote
$("#subtypes").hide();


5.3 Changer le texte Se connecter


$("#auth legend:contains('Se connecter :')").text(" VOTRE_TEXTE "); $("#members a:contains('Se connecter')").text(" VOTRE_TEXTE "); $("#loginModal h3:contains('Se connecter')").text(" VOTRE_TEXTE "); $("#opac-auth h3:contains('Se connecter')").text(" VOTRE_TEXTE ");

5.4 Message avant connexion


 


Ce qui est écrit en rouge dans le texte peut être modifié
  1. //message avant connexion
  2. if ($("div#login").length) {
  3.      $("#login").prepend("<p style=\"text-align:justify;font-size: 20px ;background: red ;color: white ;padding:4px;\"> Merci de vous connecter à votre compte afin de bénéficier de toutes les fonctionnalités offertes </p>");
  4.   }
  5. if ($("#advsearch a.loginModal-trigger").length) {
  6.      $("div.span10").append("<p style=\"text-align:justify;font-size: 20px ;background: red ;color: white ;padding:4px;width:20%;float:right;clear:both;\"> Merci de vous connecter à votre compte afin de bénéficier de toutes les fonctionnalités offertes </p>");
  7.   }

5.5 Cacher le lien Bibliothèques

Quote

//Cacher lien bibliothèque 

$("a#library_page").parent("li").remove();



6. Listes

6.1 Cacher le bouton Listes et déplacer le lien dans les liens rapides

Quote
$("#moresearches a:contains('Réserve de cours')").after("<a href='URL de vos listes'>Listes</a></li>"); $('#listsmenu').hide();

6.2 Ajouter du texte dans l'onglet Listes publiques




Le texte peut être modifié entre les balises  <p> et </p>
  1. //rajouter du code dans les listes
  2. $("div#publicshelves").prepend("<p>Merci de bien vouloir :</br><li> éviter les listes de moins de 3 titres ;</li><li> supprimer vos listes désuètes ;</li><li> choisir un titre significatif </li><li> nous contacter si vous souhaitez en savoir plus sur les LISTES (privées et publiques) ou les PANIERS ;</li></p>")
      

7. Recherche d'autorités

7.1 Enlever des index de recherche dans le module recherche d’autorités

Voici le code pour enlever l’index Subdivisions chronologiques.



         

$("#authtypecode option[value=' CHRON_TERM ']").remove();

Pour les autres champs, il faut modifier ce qui est en rouge

CORPO_NAME pour Collectivité auteur

MEETI_NAME pour Congrès

GENRE/FORM pour Genres et formes

PERSO_NAME pour Personne physique

GEOGR_NAME pour Subdivisions géographiques

TOPIC_TERM pour Sujet

UNIF_TITLE pour Titre uniforme


8. Dossier de l'usager

8.1 Cacher l’onglet Mes notifications dans le compte de l’usager

            
               

$("ul.menu-collapse li:contains('Mes notifications')").hide();

9. Suggestions d'achat

9.1 Rajouter du texte dans la page de suggestion d’achat



Quote
$("#usersuggestions p:contains('LE_DEBUT_DU_TEXTE_A_REMPLACER')").html("<p>VOTRE_TEXTE_DE_REMPLACEMENT</p>");

    • Related Articles

    • Code CSS pour l’opac

      Le code CSS permet de modifier l’apparence des textes et des alertes dans Koha. Vous pouvez insérer ces différents codes dans la préférence système OpacUserCSS. 1. Enlever le souligné des liens à l’opac dans la colonne de gauche (OpacNav) #opacnav a, ...
    • Code javascript pour l’intranet

      0. Configuration La préférence système intranetuserjs peut être utilisé pour activer du code java à l’intranet. Les codes qui sont listés ci-dessous doivent être inscrit entre ces deux balises en rouge (les balises ne doivent apparaître qu’une fois ...
    • Ajouter un index Titre de revue

      Cet ajout permet de rechercher rapidement un Titre de revue en cherchant dans l'index Titre et en ajoutant un filtre sur le ou les types de documents correspondant à vos revues. Le code fonctionnel avec ElasticSearch est beaucoup plus complexe que ce ...
    • Code CSS pour l’intranet

      Le code CSS permet de modifier l’apparence des textes et des alertes dans Koha. Vous pouvez insérer ces différents codes dans la préférence système IntranetUserCSS. 1. Modifier l’apparence des messages sur la page d’accueil de l’intranet ...
    • Version mobile de l’OPAC

      La version mobile de l’opac telle que vous la connaissez depuis 2012 a été abandonnée dans la version 3.18.4 pour utiliser la version mobile du nouveau thème de l’opac Bootstrap. Ce qui change c’est qu’il n’y a plus de préférences systèmes pour gérer ...