[development] JavaScript translation and themeing
Konstantin Käfer
kkaefer at gmail.com
Fri Jun 8 18:37:26 UTC 2007
Hi all.
Today, a patch went in that brings translation of JavaScript files
and theming to Drupal. There are new JavaScript functions called
Drupal.t(), Drupal.formatPlural() and Drupal.theme(). The usage of
these functions is pretty much like their server side equivalent.
Thus, you are now required to wrap your strings in JavaScript files
in Drupal.t() calls, just like you wrap t() around them in PHP code.
Drupal.theme() is a client-side themeing function for JavaScript. It
is pretty simple (just several bytes), yet rather powerful. If you
have to add HTML code to the page using JavaScript, you should create
a theme function in the Drupal.theme.prototype namespace. Themes can
override these default theme functions by adding a function to the
Drupal.theme namespace. These theme functions can for example be
placed in the script.js file in the modules root directory. This file
is now automatically added to the page (if present), just like
style.css.
JavaScript theme functions can return about anything, a plain HTML
string, an array of jQuery objects, a regular expression etc. It is
advised to return an object (= array with indexes) of jQuery objects,
so that the actual module code can easily determine which objects to
modify.
Thanks to Gábor who continuosly reviewed this patch and brought it to
a rtbc state.
Konstantin Käfer – http://kkaefer.com/
More information about the development
mailing list