Permalink
Browse files

OOPS, forgot this file for the localization patch.

  • Loading branch information...
1 parent 7628257 commit d3fbe01a6b9d809b07dadc04f992d1432b595578 @jmcastagnetto jmcastagnetto committed May 24, 2005
Showing with 47 additions and 1 deletion.
  1. +2 −1 .htaccess
  2. +45 −0 messages.php
View
@@ -1,6 +1,7 @@
Options FollowSymLinks
<IfModule mod_rewrite.c>
RewriteEngine On
-RewriteBase /
+RewriteBase /pres2
RewriteRule ^([^\.\?/]+)$ /index.php/$1 [QSA]
</IfModule>
+php_flag register_globals on
View
@@ -0,0 +1,45 @@
+<?php
+
+// set locale and bindings if we are using gettext
+if (PRES2_USE_GETTEXT && extension_loaded('gettext')) {
+ define('PRES2_GETTEXT_INIT', _init_gettext());
+} else {
+ define('PRES2_GETTEXT_INIT', false);
+}
+
+// always include the messages file, it is our backup
+$lang_file = PRES2_LOCALEDIR.'/'.PRES2_LOCALE.'/LC_MESSAGES/pres2.php';
+include_once $lang_file;
+
+function _init_gettext() {
+ // locale setting can be a pain
+ // TODO need to see if there are missing locale aliases
+ $locales_array = array(
+ 'en' => array('en_US', 'en_GB', 'en_AU', 'en_CA', 'english', 'C'),
+ 'es' => array('es_ES', 'es_PE', 'es_MX', 'es_AR', 'spanish'),
+ );
+
+ $loc = setlocale(LC_MESSAGES, $locales_array[PRES2_LOCALE]);
+ if ($loc !== false) {
+ putenv('LC_MESSAGES='.$loc);
+ }
+ $tdom = textdomain('pres2');
+ $btex = bindtextdomain('pres2', PRES2_LOCALEDIR);
+ return ($loc !== false)
+ && ($btex == realpath(PRES2_LOCALEDIR))
+ && ($tdom == 'pres2');
+}
+
+function message($str) {
+ // try using gettext if initiliazed
+ if (PRES2_GETTEXT_INIT) {
+ $trans = gettext($str);
+ if ($trans != $str) { // only return something if gettext worked
+ return $trans;
+ }
+ }
+ // otherwise use the messages array
+ $trans = $GLOBALS['messages'][$str];
+ return ($trans == '' || is_null($trans)) ? $str : $trans;
+}
+?>

0 comments on commit d3fbe01

Please sign in to comment.