Colodus : Différence entre versions
(→Utilisation de bookmarklets pour les données d'exemplaire) |
(→Utilisation de bookmarklets pour les données d'exemplaire) |
||
Ligne 63 : | Ligne 63 : | ||
Pour cela, le plus simple est d'utiliser du '''JQuery''', sur le modèle suivant. | Pour cela, le plus simple est d'utiliser du '''JQuery''', sur le modèle suivant. | ||
− | Si on crée une bookmarklet avec le code ci-dessous, quand on clique dessus le code va | + | Si on crée une bookmarklet avec le code ci-dessous, quand on clique dessus le code va |
− | # la zone 930$c | + | # créer la zone 930$c et lui attribuer la valeur SL |
− | # la zone 930$ | + | # chercher la zone 930$a (déjà existante) et lui attribuer le code 001.133 |
<syntaxhighlight lang="javascript" enclose="div"> | <syntaxhighlight lang="javascript" enclose="div"> | ||
Ligne 75 : | Ligne 75 : | ||
s.src="http://code.jquery.com/jquery-1.10.2.js"; | s.src="http://code.jquery.com/jquery-1.10.2.js"; | ||
document.body.appendChild(s); | document.body.appendChild(s); | ||
+ | ajt('record0','E930_c',null,'E930-3',null,null,null,null,null); | ||
$( "input[id*='E930_c']" ).val( "SL" ); | $( "input[id*='E930_c']" ).val( "SL" ); | ||
$( "input[id*='E930_a']" ).val( "001.133" ); | $( "input[id*='E930_a']" ).val( "001.133" ); | ||
Ligne 82 : | Ligne 83 : | ||
) | ) | ||
</syntaxhighlight> | </syntaxhighlight> | ||
+ | |||
+ | La fonction ajt() est dans le code de Colodus. | ||
Remarque : ce sera plus propre si vous mettez du code sans les saut de lignes et les espaces, mais ça marche aussi | Remarque : ce sera plus propre si vous mettez du code sans les saut de lignes et les espaces, mais ça marche aussi |
Version du 16 avril 2014 à 14:09
Colodus est une application Web de l'ABES destinée à la gestion d'exemplaires dans le Sudoc et conçue initialement pour répondre aux besoins des bibliothèques du réseau Sudoc-PS.
Sommaire
Informations techniques
Blog technique de l'ABES Punktokomo
Tutoriels et supports de formation
- Plateforme de l'ABES
- Cujas, juillet 2013
- CR PACA-Nice, 18/09/2013
- CR Nord Pas-de-Calais, 06/01/2014
Personnalisation de l'interface
Il est possible de personnaliser un formulaire pour quatre types de documents.
Autre possibilité, pour les données locales : Colodus : bookmarlet de facilitation (zones bibliographiques locales)
Le tableau ci-dessous n'est pas bon - à adapter pour les données d'exemplaire : d'après @Lully1804, il y a plusieurs champs <input> sur la page Colodus, il faut les distinguer en utilisant par exemple l'attribut id de ces balises. Pb : l'id change à chaque affichage. Donc il faut récupérer le début de l'attribut id seulement (exemple : balise <input id="991_2819272">)
Champs | Sous-champs 1 | Texte | Sous-champs 2 | Texte | Bookmarklet (ajout manuel d'un favori dans le navigateur : zone URL) | Bookmarklet (proposer sur une page web un bouton à glisser comme favori) |
---|---|---|---|---|---|---|
991 | $a | RETRO-2014-LOC | $b | Rétro2014 861942102 | javascript:void((function(){document.getElementsByTagName('textarea')[0].value='L991 ##$aRETRO-2014-LOC$$bRétro2014 861942102'})()) | <a href="javascript:void((function(){document.getElementsByTagName('textarea')[0].value='L991 ##$aRETRO-2014-LOC$$bRétro2014 861942102'})())">991 RETRO-2014-LOC</a> |
991 | $a | RETRO-2014-CRE DER | $b | Rétro2014 861942102 | ||
991 | $a | RETRO-2014-CRE SAI | $b | Rétro2014 861942102 |
Utilisation de bookmarklets pour les données d'exemplaire
Les données d'exemplaires sont affichées dans des champs <input>, identifiable par leur attribut ID
Par exemple, quand on choisit d'ajouter un champ "Localisation de niveau 2 : Localisation complémentaire (c)", ça correspond à un 930$c : Du coup la balise de saisie sera <input id="E930_c-19"></input>
Problème : le "19" change d'une fois sur l'autre.
Il faut donc que la bookmarklet arrive à identifier les <input> à renseigner en utilisant que le début de l'id.
Pour cela, le plus simple est d'utiliser du JQuery, sur le modèle suivant.
Si on crée une bookmarklet avec le code ci-dessous, quand on clique dessus le code va
- créer la zone 930$c et lui attribuer la valeur SL
- chercher la zone 930$a (déjà existante) et lui attribuer le code 001.133
javascript:void(
(
function(){
s=document.createElement("script");
s.type="text/javascript";
s.src="http://code.jquery.com/jquery-1.10.2.js";
document.body.appendChild(s);
ajt('record0','E930_c',null,'E930-3',null,null,null,null,null);
$( "input[id*='E930_c']" ).val( "SL" );
$( "input[id*='E930_a']" ).val( "001.133" );
}
)
()
)
La fonction ajt() est dans le code de Colodus.
Remarque : ce sera plus propre si vous mettez du code sans les saut de lignes et les espaces, mais ça marche aussi
Mise en place et utilisation courante
- Se créer un répertoire dans ses favoris, pour y gérer ses bookmarklets Colodus
- Pour chaque fonds alimenté, créer une bookmarklet contenant les valeurs par défaut, en lui donnant le nom du fonds concerné
- Lors de la création d'un nouvel exemplaire, créer tous les champs vides qui vont être alimentés par la bookmarklet. Puis cliquer dessus