Sorted-Controller-Helper: Spaltentitle nicht direkt in make_sorted() übersetzen
authorMoritz Bunkus <m.bunkus@linet-services.de>
Wed, 5 Sep 2012 07:18:45 +0000 (09:18 +0200)
committerMoritz Bunkus <m.bunkus@linet-services.de>
Wed, 5 Sep 2012 07:18:45 +0000 (09:18 +0200)
commit1260ff14707708ae886d5054d74e6eeff484b5d3
tree8a480c498759958b59c3b5b1eb44e62c9f1e1d3e
parent4bcb450849ddc6e67f7c7181b20c5912b604cdd1
Sorted-Controller-Helper: Spaltentitle nicht direkt in make_sorted() übersetzen

Hintergrund ist der, dass ansonsten die Übersetzung nur einmal
passiert, nämlich dann, wenn das Modul compiliert wird. Für normales
CGI funktioniert das:

- Zuerst wird der Dispatcher geladen und ausgeführt. Der analysiert
  zur Laufzeit die GET-/POST-Parameter und lädt erst dann den
  erforderlichen Controller mittels "require".
- Sprich Dispatcher hat schon das für den Benutzer notwendige
  $::locale-Objekt angelegt, und die Compilezeit des Controller-Moduls
  liegt danach.

Für FastCGI würde das kaputt gehen:

- Zuerst wird der Dispatcher geladen und ausgeführt. Der analysiert
  zur Laufzeit die GET-/POST-Parameter und lädt erst dann den
  erforderlichen Controller mittels "require".
- Nach Beenden des Requests bleibt das Modul aber im Speicher.
- Beim nächsten Request auf denselben Controller wurde dieser bereits
  compiliert, und die Titel wären bereits übersetzt -- in der Sprache
  des Benutzers, der den Controller seit Start des FastCGI-Prozesses
  das erste Mal aufgerufen hat.
SL/Controller/BackgroundJob.pm
SL/Controller/BackgroundJobHistory.pm
SL/Controller/Helper/Sorted.pm
SL/Template/Plugin/L.pm