5 * i18n language functions
16 * Sets i18n locale language
18 * sets the language for i18n php gettext module
19 * (gettext has to be enabled in the php.ini)
24 if (extension_loaded('gettext')) {
26 // try and find the default locale
27 $default_lang = preg_replace('/-/','_',$_SERVER['HTTP_ACCEPT_LANGUAGE']);
30 $locale_dir = "./locale";
31 $directories = getdirectories($locale_dir,"");
32 foreach($directories as $directory) {
33 $buf = substr($directory,strlen($locale_dir)+1,strlen($directory) - strlen($locale_dir));
34 if (preg_match("/" . $buf . "/i",$default_lang)) {
41 $language = isset($_COOKIE['ari_lang']) ? $_COOKIE['ari_lang'] : $locale;
42 putenv("LANG=$language");
43 putenv("LANGUAGE=$language");
44 setlocale(LC_MESSAGES,$language);
45 bindtextdomain('ari','./locale');
46 bind_textdomain_codeset('ari', 'UTF-8');
57 * Sets the i18n language in a cookie
60 * length of random number
62 function setCookie($lang_code) {
64 if (extension_loaded('gettext')) {
65 setcookie("ari_lang", $lang_code, time()+365*24*60*60);
70 * Sets the i18n language in a cookie
73 * length of random number
77 // lang setting options
78 if (extension_loaded('gettext')) {
82 function setCookie(name,value) {
85 e.setTime(t.getTime() + 365*24*60*60);
86 document.cookie = name+\"=\"+escape(value) + \";expires=\"+e.toGMTString();
89 <form class='lang' name='lang' action=" . $_SESSION['ARI_ROOT'] . " method='POST'>
90 <select class='lang_code' name='lang_code' onChange=\"setCookie('ari_lang',document.lang.lang_code.value); window.location.reload();\">
91 <option value='en_US' " . ($_COOKIE['ari_lang']=='en_US' ? 'selected' : '') . ">English</option>
92 <option value='es_ES' " . ($_COOKIE['ari_lang']=='es_ES' ? 'selected' : '') . ">Español</option>
93 <option value='fr_FR' " . ($_COOKIE['ari_lang']=='fr_FR' ? 'selected' : '') . ">French</option>
94 <option value='de_DE' " . ($_COOKIE['ari_lang']=='de_DE' ? 'selected' : '') . ">German</option>
95 <option value='el_GR' " . ($_COOKIE['ari_lang']=='el_GR' ? 'selected' : '') . ">Greek</option>
96 <option value='he_IL' " . ($_COOKIE['ari_lang']=='he_IL' ? 'selected' : '') . ">Hebrew</option>
97 <option value='hu_HU' " . ($_COOKIE['ari_lang']=='hu_HU' ? 'selected' : '') . ">Hungarian</option>
98 <option value='it_IT' " . ($_COOKIE['ari_lang']=='it_IT' ? 'selected' : '') . ">Italian</option>
99 <option value='pt_BR' " . ($_COOKIE['ari_lang']=='pt_BR' ? 'selected' : '') . ">Portuguese</option>
100 <option value='sv_SE' " . ($_COOKIE['ari_lang']=='sv_SE' ? 'selected' : '') . ">Swedish</option>