summaryrefslogtreecommitdiffstats
path: root/digest.php
diff options
context:
space:
mode:
authorArun Persaud <arun@nubati.net>2012-05-08 21:25:49 -0700
committerArun Persaud <arun@nubati.net>2012-05-08 21:31:26 -0700
commit1e258af4136567ab30ce9b54aee751077f80590e (patch)
treed29a58e77e1ccef6527c32f83f52461569f03103 /digest.php
parentd760c835fcf5444dd1a0b2997e6eb5744e0be952 (diff)
downloade-DoKo-1e258af4136567ab30ce9b54aee751077f80590e.tar.gz
e-DoKo-1e258af4136567ab30ce9b54aee751077f80590e.tar.bz2
e-DoKo-1e258af4136567ab30ce9b54aee751077f80590e.zip
BUGFIX: removed side effect from getting the user's preferences: the language used could be overwritten by another user's choise
the DB_get_Prefs($myid) functions used to set the _SESSION variable for the language, but was also called with ids that belonged to other players overwriting the language settings with that from another user
Diffstat (limited to 'digest.php')
-rw-r--r--digest.php22
1 files changed, 20 insertions, 2 deletions
diff --git a/digest.php b/digest.php
index 4426bc2..0762519 100644
--- a/digest.php
+++ b/digest.php
@@ -45,13 +45,31 @@ global $defaulttimezone;
foreach($users as $uid)
{
// get local time
-
$zone = DB_get_user_timezone($uid);
date_default_timezone_set($zone);
$time = (int)(date("H"));
- // calculate mod by digest-time
+ // load users preferences
$PREF = DB_get_PREF($uid);
+
+ // set users language preference
+ $language = $PREF['language'];
+
+ switch($language)
+ {
+ case 'de':
+ putenv("LC_ALL=de_DE");
+ setlocale(LC_ALL, "de_DE");
+ // Specify location of translation tables
+ bindtextdomain("edoko", "./locale");
+ // Choose domain
+ textdomain("edoko");
+ break;
+ default:
+ /* do nothing */
+ }
+
+ // calculate mod by digest-time
switch($PREF['digest'])
{
case 'digest-off':