Pour la partie CSS, voici comment je m'en sort avec les langues :
.lang-fr #header-top, .lang-fr-informal #header-top {background:url(bg_citizen_fr.gif) left -3px no-repeat; margin:0 auto; text-align:right;}
.lang-nl #header-top, .lang-nl-informal #header-top {background:url(bg_citizen_nl.gif)
En effet, si tu regardes dans le code source de la page généré, on peut voir qu'il y a des classes qui correspondent à la langue choisie.
Et sinon, je pense que le trigger dasn MySQL reste plus simple que la solution JS. En effet, tu vas devoir jongler avec plusieurs variables, un peu de JS et un peu de CSS, tout ça dans des fichiers différents, tandis que le Trigger SQL ça n'est qu'une requête à taper.
Voici un peu d'info en français sur l'implémentation des triggers :
dev.mysql.com/doc/refman/5.0/fr/using-triggers.html
Il suffit de connaitre la bonne table d'invitation, ensuite le nom des champs est assez explicite de mémoire.
Les tables de token ont des noms du type : lime_tokens_369498 ou lime_ est le préfixe que tu as choisis à l'installation (par défaut "lime_") et le chiffre à la fin, le numéro de ton sondage.
Ensuite, à l'intérieur de cette table, il y a une "colonne" usesleft qui correspond au nombre de jetons restants.
Si je me prête à l'exercice ça doit donner un truc du genre :
CREATE TRIGGER ins_sum AFTER INSERT ON lime_tokens_369498
FOR EACH ROW UPDATE lime_tokens_369498 SET usesleft = 9999 WHERE tid = NEW.tid ;