Versionen von Entwickler.HowToL10NJS

Unwichtige Korrekturen ausblenden - Änderungen im Wiki Quelltext

 
 
01.04.2011 23:16 Uhr von tthelen -
Zeilen 1-2 hinzugefügt:

(:redirect 'http://docs.studip.de/develop/Entwickler/HowToL10NJS':)

 
 
17.06.2010 15:06 Uhr von mlunzena -
Zeilen 54-59 hinzugefügt:

Es werden lediglich die Strings übersetzt, die in der Liste des Web-Services enthalten sind. Nicht enthaltene bleiben, wie sie sind.

Neue Strings aufnehmen

Der Web-Service liefert nur eine kleine Menge an relevanten Strings. Sollen weitere ausgeliefert werden, müssen Sie die Datei app/views/localizations/show.php anpassen. Fügen Sie dem Array einfach ihren String an.

 
 
17.06.2010 14:17 Uhr von mlunzena -
Zeilen 9-10 bearbeitet:

Der Web-Service findet sich in jeder Stud.IP-Installation ab Version 2.0 unter der URL: dispatch.php/localizations/{locale}

geändert in:

Der Web-Service findet sich in jeder Stud.IP-Installation ab Version 2.0 unter der URL: dispatch.php/localizations/{locale}

Zeilen 13-14 bearbeitet:

http://develop.studip.de/studip/dispatch.php/localizations/de_DE

geändert in:

http://develop.studip.de/studip/dispatch.php/localizations/de_DE

Zeilen 17-18 bearbeitet:

http://develop.studip.de/studip/dispatch.php/localizations/en_GB

geändert in:

http://develop.studip.de/studip/dispatch.php/localizations/en_GB

Zeilen 25-28 bearbeitet:
  • lib/include/html_head.inc.php
  • templates/layouts/base.php
  • templates/layouts/base_without_infobox.php
geändert in:
  • lib/include/html_head.inc.php
  • templates/layouts/base.php
  • templates/layouts/base_without_infobox.php
Zeilen 30-54 hinzugefügt:

JavaScript-API

Die offizielle JavaScript-Client-API enthält die Methode Object#toLocaleString, die wie folgt definiert ist:

Returns a string representing the object. This method is meant to be overriden by derived objects for locale-specific purposes.

Für Strings ruft diese Methode String#toString auf. An dieser Stelle setzt die Bibliothek an und definiert die vorhandene Methode um.

Wenn man jetzt also einen String in JavaScript übersetzen möchte, ruft man lediglich toLocaleString auf.

Beispiel:

var aString = "suchen".toLocaleString();

// ergibt bei aktiviertem locale de_DE: 
// aString === "suchen"

// ist hingegen en_GB aktiv:
// aString === "search"
 
 
17.06.2010 14:05 Uhr von mlunzena -
Zeilen 5-29 bearbeitet:

lorem

geändert in:

Um in den Genuss der vorhandenen Gettext-Übersetzungen auch in JavaScript-Code zu kommen, verwenden wir in Stud.IP einen speziellen Web-Service, der ausgesuchte Übersetzungen in JavaScript-Code umwandelt und diese für die von Eli Grey geschriebene l10n.js-Bibliothek verfügbar macht.

Web-Service

Der Web-Service findet sich in jeder Stud.IP-Installation ab Version 2.0 unter der URL: dispatch.php/localizations/{locale}

Auf dem offiziellen Entwicklungsserver der Stud.IP Core Group können daher die deutschen Übersetzungen unter:

http://develop.studip.de/studip/dispatch.php/localizations/de_DE

und die englischen unter:

http://develop.studip.de/studip/dispatch.php/localizations/en_GB

erreicht werden.

Sollte man ein nicht verfügbares Länderkürzel angeben, liefert der Web-Service den Status-Code 406 (Not acceptable) und eine JSON-Liste mit den tatsächlich verfügbaren locales.

Dieser Web-Service wird von den folgenden Dateien (und damit auf nahezu jeder Seite) automatisch eingebunden, wobei das jeweils aktivierte locale verwendet wird:

  • lib/include/html_head.inc.php
  • templates/layouts/base.php
  • templates/layouts/base_without_infobox.php

Diese Seiten binden auch automatisch die oben erwähnte JavaScript-Bibliothek l10n.js ein.

 
 
17.06.2010 13:53 Uhr von mlunzena -
Zeilen 1-5 hinzugefügt:

 

 

Quelle: Basis-Wiki-Hilfe | Letzte Änderung: 01.04.2011 23:16 Uhr, tthelen | Local view: Basis-Hilfe