http://qs321.pair.com?node_id=466456


in reply to Template::Toolkit, look-and-feel and internationalization

In our app we take the language preferences of a user from his settings, cookie or guess it based on his browser headings or failing all, guess his language by his IP. In the head of .tt's we PROCESS the proper language template which holds the translations by key:

The template inclusion is done via a:
[%- PROCESS "locale/${user.lang}/lang.tt"; %]

The language files look like:
[% lang.label.status = "Status"; .... lang.phrase.sure = "Are you sure"; %]

and a tag is simply called using:
[% lang.label.status %]

This method also allows you to send the collection of language templates to a translator without you having to import anything to a database or whatnot.

Regarding custom skins, have a looksee at Plesk and see how much they do with stylesheets. It's very nifty.

Hth,
Deliria.