summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorArun Persaud <arun@nubati.net>2010-03-14 14:11:52 -0700
committerArun Persaud <arun@nubati.net>2010-03-14 14:33:31 -0700
commit83fc1a851c69e13808d14f2d5a284c3369409018 (patch)
tree67d2da7a1481269aa939b898f3fd1be4507cf869 /include
parentc05246b378470eab9c172d8d96328a821302a273 (diff)
downloade-DoKo-83fc1a851c69e13808d14f2d5a284c3369409018.tar.gz
e-DoKo-83fc1a851c69e13808d14f2d5a284c3369409018.tar.bz2
e-DoKo-83fc1a851c69e13808d14f2d5a284c3369409018.zip
NEW FEATURE: added localization support
using gettext to add support for localization
Diffstat (limited to 'include')
-rw-r--r--include/db.php7
-rw-r--r--include/output.php24
-rw-r--r--include/preferences.php24
3 files changed, 53 insertions, 2 deletions
diff --git a/include/db.php b/include/db.php
index 2a927f5..ad6c6f0 100644
--- a/include/db.php
+++ b/include/db.php
@@ -772,6 +772,7 @@ function DB_get_PREF($myid)
$PREF['vacation_start'] = NULL;
$PREF['vacation_stop'] = NULL;
$PREF['vacation_comment'] = '';
+ $PREF['language'] = 'en';
/* get all preferences */
$r = DB_query('SELECT pref_key, value FROM User_Prefs'.
@@ -825,8 +826,14 @@ function DB_get_PREF($myid)
if($pref[1])
$PREF['vacation_comment'] = $pref[1];
break;
+
+ case 'language':
+ if($pref[1])
+ $PREF['language'] = $pref[1];
+ break;
}
}
+ $_SESSION['language'] = $PREF['language'];
return $PREF;
}
diff --git a/include/output.php b/include/output.php
index 135fe13..79e42c2 100644
--- a/include/output.php
+++ b/include/output.php
@@ -394,7 +394,9 @@ function output_header()
</head>
<body onload="high_last();">
<div class="header">
-<h1> Welcome to E-Doko </h1>
+<?php
+ echo '<h1> '._('Welcome to E-Doko').' </h1>';
+?>
</div>
<?php
@@ -516,6 +518,26 @@ function output_select_timezone($name,$timezone="")
return;
}
+function output_select_language($name,$language="")
+{
+ $LOCALE = array ("English" => "en",
+ "Deutsch" => "de" );
+
+ echo " <select id=\"$name\" name=\"$name\" size=\"1\">\n";
+
+ foreach($LOCALE as $place=>$locale)
+ {
+ if($language==$locale)
+ echo " <option value=\"$locale\" selected=\"selected\">$place</option>\n";
+ else
+ echo " <option value=\"$locale\">$place</option>\n";
+ }
+ echo " </select>\n";
+
+ return;
+}
+
+
function output_password_recovery($email,$password)
{
?>
diff --git a/include/preferences.php b/include/preferences.php
index 6648b99..3904899 100644
--- a/include/preferences.php
+++ b/include/preferences.php
@@ -43,6 +43,7 @@ $changed_openforgames = 0;
$changed_vacation = 0;
$changed_openid = 0;
$changed_digest = 0;
+$changed_language = 0;
display_user_menu($myid);
@@ -297,6 +298,25 @@ if(myisset("openid_url") && $_REQUEST['openid_url']!='')
DB_AttachOpenID($openid_url, $myid);
}
+if(myisset("language"))
+ {
+ $language = $_REQUEST['language'];
+ if($language != $PREF['language'])
+ {
+ /* check if we already have an entry for the user, if so change it, if not create new one */
+ $result = DB_query("SELECT * from User_Prefs".
+ " WHERE user_id='$myid' AND pref_key='language'" );
+ if( DB_fetch_array($result))
+ $result = DB_query("UPDATE User_Prefs SET value=".DB_quote_smart($language).
+ " WHERE user_id='$myid' AND pref_key='language'" );
+ else
+ $result = DB_query("INSERT INTO User_Prefs VALUES(NULL,'$myid','language',".
+ DB_quote_smart($language).")");
+ $changed_language = 1;
+ }
+ }
+
+
/* get infos again in case they have changed */
$PREF = DB_get_PREF($myid);
$timezone = DB_get_user_timezone($myid);
@@ -461,7 +481,9 @@ echo " <tr><td>Timezone: </td><td>\n";
output_select_timezone("timezone",$timezone);
if($changed_timezone) echo "changed";
echo "</td></tr>\n";
-
+echo " <tr><td>Language: </td><td>\n";
+output_select_language("language",$PREF['language']);
+echo "</td></tr>\n";
echo " <tr><td>Password(old): </td><td>",
"<input type=\"password\" id=\"password0\" name=\"password0\" size=\"20\" maxlength=\"30\" />";
switch($changed_password)