Limesurvey Logo Ich schätze das offene Umfragetool LimeSurvey ja wirklich sehr. Es ist sehr flexibel, intuitiv zu bedienen, hat eine Wagenladung an Features mit an Bord und wird – nicht zuletzt durch die Teilnahme am Google Summer of Code – ziemlich zügig weiterentwickelt, was neue Features und schnell behobene Bugs verspricht.

Mit dem Tool lassen sich u.a. auch sehr einfach mehrsprachige Umfragen realisieren. Das erspart zwar nicht die Übersetzung einzelner Fragen, aber der Standardbausteine – wie Vor-/zurück-Buttons, Hinweise zum Ausfüllen etc. Klickt man eine weitere Sprache hinzu, sind alle Standardbausteine direkt übersetzt. Das ist solange alles nützlich und richtig, wie die ursprüngliche Umfrage und alle weiteren Sprachversionen identisch sind. Gibt es Abweichungen (andere Fragekonstellation, neue Struktur, unterschiedlicher Fragetyp in anderer Sprache) oder will man eine alte Umfrage in weiteren Sprachen neu starten hilft meist nur noch eine neue Umfrage.

Gerade wenn die wesentliche Struktur einer Umfrage schon vorliegt und nur für eine neue, anderssprachige Umfrage angepasst werden soll, ist es ärgerlich die Basissprache nicht ändern zu können. Man möchte schließlich nicht das Rad neu erfinden und die komplette Umfrage neu abtippen/eingeben. Zwar hat man die Möglichkeit ganze Umfragen zu exportieren/importieren oder auch zu kopieren – dabei bleibt allerdings die Basissprache immer gleich. D.h. habe ich eine deutsche Umfrage angelegt, kopiere ich diese und lege dadurch eine neue Umfrage an, kann ich die deutsche Sprachversion nicht löschen – da sie die Basissprache ist. In vielen Umfrage-Templates gibt es auch einen Language-Switcher, der alle verfügbaren Sprachen anzeigt. Im vorliegenden Fall wäre auch Deutsch immer in der Auswahl mit dabei – was nicht gewünscht ist.

Zwei Wege zur neuen Basissprache

Ich habe bislang zwei Wege gefunden um die Basissprache einer Umfrage in LimeSurvey Version 1.91+ zu ändern:

  1. Überschreiben der Sprachdatei
  2. Manuelle Änderung im Code der ursprünglichen Umfrage

zu 1: Im offiziellen LimeSurvey-Forum wird vorgeschlagen, die Sprachversion der Umfrage einfach zu überschreiben. Das funktioniert allerdings nur, wenn man nur einen Fragebogen hat, und setzt zudem Zugriff auf die Webserver-Strukturen (FTP-Zugang etc) voraus. Davon kann man als Anwender allerdings nicht unbedingt ausgehen.

zu 2: Als Anwender hat man jedoch in der Regel die Möglichkeit Umfragen zu exportieren und – das ist wichtig – bestehende Strukturen auch wieder zu importieren (Ggf sind hier Anpassungen der Schreibrechte durch den Administrator notwendig). Die einzelnen Schritte zum Ändern der Basissprache sind dann folgende:

  1. exportieren der bestehenden Umfrage, bspw Basissprache deutsch. Als Dateiformat sollte die .lss Struktur gewählt werden, nicht XML
  2. öffnen der exportierten Umfrage mit einem Editor
  3. Der Blick in die Struktur sieht dann in etwa so aus:
  4. code .lss

    Blick in die Struktur einer exportierten LimeSurvey-Umfrage

  5. Jetzt geht es eigentlich nur noch darum den richtigen Eintrag zu finden. Der ist im Allgemeinen durch Attribute gekennzeichnet, genauer im Eintrag [CDATA[de]] codiert. Im vorliegenden Fall ist „de“ das Sprachkürzel für deutsch.
  6. Eine einfache Suchen&Ersetzen Operation ändert den Sprachcode für die gesamte Umfrage. Aus „de“ wird bspw. „en“ für eine englische Sprachversion. Um Fehler zu vermeiden (bspw Fließtext-Ersetzungen) kann man den kompletten String [CDATA[de]] durch [CDATA[en]] überschreiben
  7. Die neue Umfragestruktur speichern
  8. Die neue Umfragestruktur in LimeSurvey importieren: Im Backend -> neue Umfrage -> Importieren. Dabei hat man die Möglichkeit die üblichen Daten (Titel, etc) zu ändern, die Basissprache entspricht den Vorgaben, d.h. der selbstgewählten neuen Basissprache
  9. Testen! Testen! Testen! Erst dann freischalten!

Hinweis: Die geschilderten Schritte ändern nur die Standard-Textblöcke (Buttons, etc), allerdings nicht die Email-Templates, die für Systemmails genutzt werden. Diese sind nur in den Sprach-Dateien hinterlegt. Sollen Emailtexte mit der geschilderten Methode geändert werden, müssten diese ebenfalls manuell angepasst/übersetzt werden.

Hast du einen Fehler gefunden oder weißt eine einfachere/schnellere/andere Lösung für das Problem? Dann freue ich mich über einen Kommentar!