Seit ein paar Wochen zeigte unsere Online-Bibliothek Umlaute inkorrekt an, und bei einer Suche nach einem String, der Umlaute enthielt, wurde sogar ein Fehler geworfen.
Die Analyse zeigte, dass unsere Bibliothekssoftware (Open Biblio) mangels Unterstützung durch ihre Entwickler nicht „nur“ mit modernen Versionen der Skriptsprache PHP Probleme hat, sondern jetzt auch noch mit modernen Browsern. Ein ähnliches Problem, wie es auch unsere Webseiten-Software Tiki Wiki hatte (inzwischen behoben!), siehe Admin-Blog.
Open Biblio hat nämlich gegenüber den Browsern nicht sauber deklariert, in welchem Zeichensatz die Bibliotheks-Webseite denn funktioniert. Und Firefox hat den „Fallback“, also den Zeichensatz, der verwendet wird, wenn die Deklaration nicht sauber ist, verändert und arbeitet seit einiger Zeit mit dem ISO-Zeichensatz, der alle Sprachen unseres Planeten unterstützt. Die Rede ist von Unicode.
Während unsere Datenerfassung für die Bibliothek schon seit langem in Unicode läuft, deklarierte Open Biblio für die Browser jedoch fälschlicherweise die ältere ISO-Norm 8859-1. Das war früher auch das Fallback, jetzt ist es 8-Bit-Unicode, kurz: UTF-8.
Am Wochenende habe ich in die Programmierung von Open Biblio eingegriffen und eine saubere Zeichensatzdeklaration programmiert, die den Browsern jetzt sagt, was an Daten aus der Datenbank kommt: UTF-8.
Leider war das Open-Biblio-Programm selbst in ISO 8859-1 programmiert, so dass das gesamte GUI transkodiert werden musste. Da dessen Übersetzung eh viele Schwächen aufwies und nicht der neuen Rechtschreibung entsprach, habe ich das GUI komplett neu übersetzt. Dies ist seit gestern Abend abgeschlossen.
Was jetzt noch ansteht, ist eine Umdeklaration der Datenbankinhalte, die zum Format der darin abgelegten Daten passt, also UTF-8. Nur damit kann sicher verhindert werden, dass eine Suche nach Suchbegriffen mit Umlauten einen Fehler wirft. Und nur so ist sichergestellt, dass auch die Umlaute korrekt sortiert werden. Dazu wird heute Montag, 13.6.2022, das Einspeichern neuer Daten vorübergehend ausgesetzt (“Freeze”).
Mittelfristig schauen wir uns nach einer neuen Bibliothekssoftware um, die aktiv weiterentwickelt wird. Ein möglicher Kandidat ist Koha aus Neuseeland. Link auf die Homepage von Koha.