Accueil > Logiciel Libre > Purification d’Omeka

Purification d’Omeka

dimanche 24 février 2019, par Axelos

Vous voulez mettre à disposition sur le web de la culture numérisé (livres, audio, photos, documentations…), et pour cela vous vous tournez logiquement vers des solutions sous licence libre, parce que vous considérez comme important l’usage d’outils dont vous avez le contrôle total et qui assure que vos visiteurs viennent bien consulter VOTRE service web.

Logo d’Omeka
Copyright Omeka

Pour cela je me suis tourné vers Omeka, un choix aidé du fait que j’ai suivis une petite formation sur l’outil en amont. Je me suis rapidement rendu compte que malheureusement le diable est dans les détails !

Pour comprendre, supposons que vous êtes dans la racine du dossier Omeka et que vous effectuez une recherche avec le mot clé googleapis pour constater qu’Omeka est vérolé jusqu’à la moelle (explication pour les Nuls : les fichiers suivants d’un serveur Omeka chargent des données depuis Google.

grep -lR "googleapis" *
admin/themes/default/upgrade/index.php
admin/themes/default/upgrade/migrate.php
admin/themes/default/common/header.php
admin/themes/default/common/login-header.php
application/views/scripts/functions.php
application/views/scripts/error/index.php
application/libraries/Zend/Mobile/Push/Gcm.php
application/libraries/Zend/Gdata/Analytics/AccountQuery.php
application/libraries/Zend/Gdata/Analytics/DataQuery.php
application/libraries/Zend/Gdata/Analytics.php
application/libraries/Zend/Dojo.php
application/libraries/globals.php
install/index.html
install/views/scripts/layout.phtml
themes/seasons/common/header.php
themes/default/common/header.php

Que dire ? C’est pas très sympa pour les visiteurs de donner à Google la possibilité de les pister.

Je vous propose quelques petites modifications à effectuer si vous rencontrez le même souci, en supposant que :
Vous et toutes autres personnes administrant le service savez déjà vous protéger de ces scripts (uMatrix ?), pour ne pas avoir à toucher la partie non publique du logiciel, et que les thèmes basiques proposés par défaut vous suffise, sinon c’est à insérer dans le cahier des charges de l’éventuel prestataire.
Peu de modification car en cas de mise à jour d’Omeka et/ou de thème, ces manipulations seront probablement à refaire …
Il n’y a finalement que deux de ces fichiers à modifier.

Fonts

Des règles css chargent des polices sur les serveurs de Google. Il est possible d’importer en local ces polices, toutefois cela demande plusieurs manipulations rébarbatifs … et pas vraiment utile ; Si la police n’est pas chargée, alors le navigateur la remplace par une autre et limite donc l’impacte à un détail graphique superficiel. C’est sur le thème qu’il faut faire la modification.
J’utilise le thème seasons, mais si vous utilisez le thème par défaut, il faudra modifier le fichier correspondant.

themes/seasons/common/header.php

Remplacez la ligne
queue_css_url('//fonts.googleapis.com/css?family=Ubuntu:300,400,500,700,300italic,400italic,500italic,700italic');
Par
queue_css_url('');

APIs

Sont aussi exploités des APIs, chargés cette fois directement depuis le cœur d’Omeka… Il est préférable de les conserver car risquerait de désactiver quelques fonctionnalités.

Créez un répertoire apis dans le dossier omeka du serveur web.
Y copier les deux fichiers chargés sur le serveur googleapis depuis ce fichier application/libraries/globals.php (vois ci-dessous)
Ensuite modifiez ce même fichier pour prendre en charge vos imports.

application/libraries/globals.php

Remplacez la ligne
->prependFile('//ajax.googleapis.com/ajax/libs/jqueryui/1.11.2/jquery-ui.min.js')
Par
->prependFile('/omeka/apis/jquery-ui.min.js')

Et la ligne
->prependFile('//ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js');
Par
->prependFile('/omeka/apis/jquery.min.js');

Notez que l’article concerne la version 2.6.1, il peut y avoir des différences sur les autres versions.

Un message, un commentaire ?

modération a priori

Ce forum est modéré a priori : votre contribution n’apparaîtra qu’après avoir été validée par un administrateur du site.

Qui êtes-vous ?
Votre message

Pour créer des paragraphes, laissez simplement des lignes vides.